shareinstall之IOS集成-創(chuàng)新互聯(lián)

提示:以下代碼(配置)由shareinstall根據(jù)當(dāng)前應(yīng)用動(dòng)態(tài)生成,開(kāi)發(fā)者可直接使用;按照以下步驟指引,10分鐘即可完成IOS SDK集成。
一、產(chǎn)品原理
精確的App安裝來(lái)源與攜帶參數(shù)安裝 :shareInstall的核心價(jià)值在于,幫助Android/iOS開(kāi)發(fā)者通過(guò)shareInstall提供的sdk,精確的獲取app每一次安裝的分享(或推廣)來(lái)源。原理如下:開(kāi)發(fā)者在分享的h6頁(yè)面上集成 shareInstall web sdk,發(fā)布分享鏈接時(shí)在url上動(dòng)態(tài)的拼接任意的自定義參數(shù)(如推廣渠道號(hào),邀請(qǐng)碼等等);當(dāng)某一終端訪(fǎng)問(wèn)該h6頁(yè)面時(shí),shareinstall web sdk將同時(shí)確定該設(shè)備的個(gè)性化信息和采集自定義參數(shù),上傳至shareInstall服務(wù)器, 待用戶(hù)通過(guò)該h6頁(yè)面安裝app后首次打開(kāi)時(shí)(如當(dāng)前設(shè)備已安裝該app,將直接拉起該app并傳遞參數(shù)),使用shareInstall Android/iOS sdk從shareInstall服務(wù)器再取回暫存的自定義參數(shù)。
一鍵拉起功能:shareInstall通過(guò)標(biāo)準(zhǔn)的scheme、universal link 等技術(shù),在app已安裝的情況下,從各種瀏覽器(包括微信、QQ、新浪微博、釘釘?shù)戎髁魃缃卉浖膬?nèi)置瀏覽器)拉起app并傳遞自定義參數(shù),避免重復(fù)安裝,如沒(méi)安裝則調(diào)至appStore或應(yīng)用寶下載app,下載完畢喚起app的相應(yīng)頁(yè)面。
二、iOS SDK集成
1、導(dǎo)入SDK

站在用戶(hù)的角度思考問(wèn)題,與客戶(hù)深入溝通,找到道里網(wǎng)站設(shè)計(jì)與道里網(wǎng)站推廣的解決方案,憑借多年的經(jīng)驗(yàn),讓設(shè)計(jì)與互聯(lián)網(wǎng)技術(shù)結(jié)合,創(chuàng)造個(gè)性化、用戶(hù)體驗(yàn)好的作品,建站類(lèi)型包括:成都做網(wǎng)站、成都網(wǎng)站建設(shè)、成都外貿(mào)網(wǎng)站建設(shè)、企業(yè)官網(wǎng)、英文網(wǎng)站、手機(jī)端網(wǎng)站、網(wǎng)站推廣、空間域名、虛擬空間、企業(yè)郵箱。業(yè)務(wù)覆蓋道里地區(qū)。

iOS SDK 下載 v1.0.6 http://api.shareinstall.com/download/1.0.6/ios

iOS DEMO 下載 v1.0.6 http://api.shareinstall.com/download/1.0.6/iosdemo

下載并解壓最新版SDK壓縮包,將libShareInstall.a和ShareInstallSDK.h導(dǎo)入工程中。
2、初始化SDK
在AppDelegate中,增加頭文件的引用:

#import “ShareInstallSDK.h”

在-(BOOL)application:(UIApplication)application didFinishLaunchingWithOptions:(NSDictionary)launchOptions
方法中調(diào)用setAppKey方法來(lái)初始化SDK,如下代碼所示:

  • (BOOL)application:(UIApplication )application didFinishLaunchingWithOptions:(NSDictionary)launchOptions {
    [ShareInstallSDK setAppKey:@"K2BK7B6HH7F7R2" withDelegate:self WithOptions:launchOptions];
    return YES;
    }

注:AppKey需填寫(xiě)自己的AppKey,請(qǐng)到ShareInstall官網(wǎng)后臺(tái)查看自己應(yīng)用的AppKey。
3、個(gè)性化安裝
當(dāng)應(yīng)用安裝后首次打開(kāi)時(shí),iOS sdk會(huì)收到網(wǎng)頁(yè)端通過(guò)js sdk傳來(lái)的自定義動(dòng)態(tài)參數(shù),精確的獲取app每一次安裝的分享(或推廣)來(lái)源。比如通過(guò)在分享鏈接url中附帶app邀請(qǐng)人的用戶(hù)id,就可達(dá)到免填邀請(qǐng)碼的效果;url中可拼接自定義的參數(shù)。在AppDelegate中,添加獲取安裝參數(shù)的回調(diào)方法,代碼如下所示:

#pragma mark ShareInstallDelegate
//通過(guò)ShareInstall獲取自定義參數(shù),數(shù)據(jù)為空時(shí)也會(huì)調(diào)用此方法

  • (void)getInstallParamsFromSmartInstall:(id) params withError: (NSError ) error{NSLog(@"安裝參數(shù)params=%@",params);
    br/>NSLog(@"安裝參數(shù)params=%@",params);
    alert = [[UIAlertView alloc] initWithTitle:@"直接點(diǎn)擊App進(jìn)來(lái)的" message:[self DataTOjsonString:params] delegate:nil cancelButtonTitle:@"取消" otherButtonTitles:@"確定", nil];
    //彈出提示框(便于調(diào)試,調(diào)試完成后刪除此代碼)
    [alert show];
    }

4、一鍵跳轉(zhuǎn)
ShareInstall通過(guò)標(biāo)準(zhǔn)的scheme、universal link等技術(shù),在app安裝的情況下,從各種瀏覽器(微信、QQ、新浪微博、釘釘?shù)戎髁魃缃卉浖膬?nèi)置瀏覽器)喚醒 app 并傳遞自定義參數(shù),避免重復(fù)安裝。
5、 universal link 配置
Universal link是iOS9的一個(gè)新特性,通過(guò)Universal link,App可以通過(guò)各種瀏覽器跳轉(zhuǎn)到App(例如微信內(nèi)可不通過(guò)safari,一鍵跳轉(zhuǎn)到App),真正實(shí)現(xiàn)一鍵跳轉(zhuǎn)到相應(yīng)界面。
備注:iOS9以上推薦使用Universal link。
5.1 配置developer.apple.com的相關(guān)信息
到蘋(píng)果開(kāi)發(fā)者中心,為當(dāng)前的App ID開(kāi)啟Associated Domains服務(wù):

5.2 配置Xcode
在Xcode中配置ShareInstall為當(dāng)前應(yīng)用生成的關(guān)聯(lián)域名:Associated Domains 開(kāi)關(guān)打開(kāi),添加Domains: applinks:k2bk7b6hh7f7r2.shareinstall.com

在AppDelegate中的continueUserActivity方法中調(diào)用,用來(lái)處理Universal link。

//Universal Links 通用鏈接

  • (BOOL)application:(UIApplication )application continueUserActivity:(NSUserActivity)userActivity restorationHandler:(void (^)(NSArray * _Nullable))restorationHandler
    {
    //判斷是否通過(guò)ShareInstall Universal Links 喚起App
    if ([ShareInstallSDK continueUserActivity:userActivity]) {
    return YES ;
    }else{
    //其他代碼
    return YES;
    }
    }

5.3 配置App的URL Scheme
iOS系統(tǒng)中App之間是相互隔離的,通過(guò)URL Scheme, App之間可以相互調(diào)用,并且可以傳遞參數(shù)。
備注:iOS9以下通過(guò)Url Scheme實(shí)現(xiàn)拉起。
5.4 在Xcode里選中Target—Info—URL Types, 配置shareInstall為當(dāng)前應(yīng)用生成的Url Scheme,如圖所示:
identifier 配置為 com.ShareInstall,URL Schemes從shareInstall獲取(afap0343)。
注:identifier 一定要配置為com.ShareInstall

5.5 URL Scheme相關(guān)代碼配置
注意:當(dāng)需要在shareInstall這個(gè)方法中處理第三方回調(diào)的時(shí)候(比如支付寶、微信回調(diào)等),請(qǐng)注意區(qū)分。

//iOS9以下 URI Scheme
-(BOOL)application:(UIApplication )application openURL:(NSURL)url sourceApplication:(NSString *)sourceApplication annotation:(id)annotation{

//判斷是否通過(guò)ShareInstall URL Scheme 喚起App
if ([ShareInstallSDK handLinkURL:url]) {
     return YES;
}else{
    //其他代碼
    return YES;
}

return YES;

}

//iOS9以上 URL Scheme

  • (BOOL)application:(UIApplication )app openURL:(NSURL)url options:(nonnull NSDictionary *)options
    {
    //判斷是否通過(guò)ShareInstall URL Scheme 喚起App
    if ([ShareInstallSDK handLinkURL:url]) {

    return YES;

    }else{
    //其他代碼
    return YES;
    }

    return YES;
    }

5.6獲取喚醒參數(shù),直達(dá)具體頁(yè)
通過(guò)在url中附帶具體的參數(shù),喚醒a(bǔ)pp并跳轉(zhuǎn)到具體頁(yè)。

  • (void)getWakeUpParamsFromSmartInstall: (id) params withError: (NSError ) error{NSLog(@"喚醒參數(shù)params=%@",params);
    br/>NSLog(@"喚醒參數(shù)params=%@",params);
    alert = [[UIAlertView alloc] initWithTitle:@"URL shceme 進(jìn)來(lái)的" message:[self DataTOjsonString:params] delegate:nil cancelButtonTitle:@"取消" otherButtonTitles:@"確定", nil];
    //彈出提示框(便于調(diào)試,調(diào)試完成后刪除此代碼)
    [alert show];
    }

5.7 其他代碼配置
如果做測(cè)試,獲取參數(shù),則必須在Appdelegate.h加上如下測(cè)試代碼。

#pragma mark 將oc數(shù)據(jù)類(lèi)型轉(zhuǎn)成NSString
-(NSString *)DataTOjsonString:(id)object
{
if (!object) {
return nil;
}

NSString *jsonString = nil;
NSError *error;
NSData *jsonData = [NSJSONSerialization dataWithJSONObject:object
                                                   options:NSJSONWritingPrettyPrinted
                                                     error:&error];
if (! jsonData) {
    NSLog(@"Got an error: %@", error);
} else {

jsonString = [[NSString alloc] initWithData:jsonData encoding:NSUTF8StringEncoding];
}
return jsonString;
}

6、注冊(cè)量統(tǒng)計(jì)
使用Shareinstall 控制中心提供的渠道統(tǒng)計(jì)時(shí),在App用戶(hù)注冊(cè)完成后調(diào)用,可以統(tǒng)計(jì)渠道注冊(cè)量。
#warning 必須在注冊(cè)成功的時(shí)調(diào)用[ShareInstallSDK reportRegister] 方法,否則可能導(dǎo)致注冊(cè)統(tǒng)計(jì)不準(zhǔn)。
下一步

另外有需要云服務(wù)器可以了解下創(chuàng)新互聯(lián)cdcxhl.cn,海內(nèi)外云服務(wù)器15元起步,三天無(wú)理由+7*72小時(shí)售后在線(xiàn),公司持有idc許可證,提供“云服務(wù)器、裸金屬服務(wù)器、高防服務(wù)器、香港服務(wù)器、美國(guó)服務(wù)器、虛擬主機(jī)、免備案服務(wù)器”等云主機(jī)租用服務(wù)以及企業(yè)上云的綜合解決方案,具有“安全穩(wěn)定、簡(jiǎn)單易用、服務(wù)可用性高、性?xún)r(jià)比高”等特點(diǎn)與優(yōu)勢(shì),專(zhuān)為企業(yè)上云打造定制,能夠滿(mǎn)足用戶(hù)豐富、多元化的應(yīng)用場(chǎng)景需求。

文章題目:shareinstall之IOS集成-創(chuàng)新互聯(lián)
新聞來(lái)源:http://muchs.cn/article24/dppjce.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供外貿(mào)網(wǎng)站建設(shè)、網(wǎng)站維護(hù)網(wǎng)站收錄、響應(yīng)式網(wǎng)站網(wǎng)站導(dǎo)航、微信公眾號(hào)

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶(hù)投稿、用戶(hù)轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話(huà):028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來(lái)源: 創(chuàng)新互聯(lián)