應(yīng)用程序間跳轉(zhuǎn)和社交分享

一. 應(yīng)用程序間跳轉(zhuǎn)

1. 什么是應(yīng)用間跳轉(zhuǎn),有什么作用?

- 應(yīng)用場(chǎng)景
    1. 使用第三方用戶登錄,需要用戶授權(quán),還需要"返回到調(diào)用的程序,同時(shí)返回授權(quán)的用戶名"
    2. 應(yīng)用程序推廣,網(wǎng)易彩票,設(shè)置-推薦應(yīng)用-有很多應(yīng)用程序圖標(biāo)如果本機(jī)已經(jīng)安裝過(guò),會(huì)直接跳轉(zhuǎn)到另外一個(gè)應(yīng)用程序, 軟件的廣告,推廣結(jié)果,后續(xù)會(huì)有一些列的金錢(qián)上的結(jié)算
    3. 支付寶,第三方支付,淘寶,電話費(fèi)充值。。。

2. 應(yīng)用程序間跳轉(zhuǎn)實(shí)現(xiàn)?

直接打開(kāi)對(duì)應(yīng)APP的scheme即可

  1. 概念須知

     > URL : 統(tǒng)一資源定位符
         scheme(協(xié)議頭) : 決定通過(guò)什么方式查找資源 http:// ftp:// tel:// file://
         path(路徑) : 資源路徑 www.baidu.com 192.168.1.1/資源 110 /User/Desktop
    
  2. 設(shè)置方式

     > 默認(rèn)情況下應(yīng)用程序是沒(méi)有自己的URL的,如果想要擁有自己的URL,需要設(shè)置URL
         項(xiàng)目 -> info -> URL Types -> URL Scheme
    
  3. 打開(kāi)方式

     代碼:
         [[UIApplication shareApplication] openURL:appURL];
    
  4. 跳轉(zhuǎn)到對(duì)方APP, 對(duì)方APP執(zhí)行的代理方法

     -(BOOL)application:(UIApplication *)application handleOpenURL:(NSURL *)url
     {
     
     }
    
  5. iOS9.0跳轉(zhuǎn)適配
    在info.plist文件中添加LSApplicationQueriesSchemes 字段 ,是數(shù)組類型

6.具體操作流程

跳轉(zhuǎn)的代碼如下:
1. 應(yīng)用場(chǎng)景
上面已經(jīng)說(shuō)明

2. 要打開(kāi)本機(jī)上的其他應(yīng)用程序,需要設(shè)置schemes,自定義的協(xié)議頭,可以打開(kāi)其他的應(yīng)用程序
- (IBAction)openWangyi:(id)sender
{
    // 跳轉(zhuǎn)到其他應(yīng)用程序
    // schemes: 網(wǎng)易的scheme wangyi
    NSURL *url = [NSURL URLWithString:@"wangyi://view?newsid=201410130001"];
    
    // 判斷本機(jī)是否安裝了目標(biāo)程序
    if ([[UIApplication sharedApplication] canOpenURL:url]) {
        [[UIApplication sharedApplication] openURL:url];
    } else {
        NSLog(@"沒(méi)有安裝,可以再給定下載地址,前往");
    }
}

3. 新浪微博的授權(quán)界面說(shuō)明:
1> 在新浪微博中,本身不能直接跳轉(zhuǎn)到該界面
2> 用其他應(yīng)用程序打開(kāi)時(shí),如果scheme時(shí)weibo://oaauth,直接進(jìn)入此界面
3> 如果直接點(diǎn)擊,返回,返回調(diào)用的應(yīng)用程序
4> 如果點(diǎn)擊表格行中的用戶名,直接返回用戶信息給調(diào)用應(yīng)用程序


4. 如果要返回調(diào)用的應(yīng)用程序,需要知道調(diào)用我們的應(yīng)用程序的scheme
// 舊方法
/** 只要是由其他應(yīng)用程序打開(kāi)的,就會(huì)調(diào)用此方法 */
/** URL 就是其他應(yīng)用程序,打開(kāi)當(dāng)前程序使用的URL */
- (BOOL)application:(UIApplication *)application handleOpenURL:(NSURL *)url

// 新方法
/** 
 openURL 是打開(kāi)當(dāng)前應(yīng)用程序的url
 sourceApplication 是當(dāng)開(kāi)當(dāng)前應(yīng)用程序的源程序的BundleId
 
 提示:一旦重寫(xiě)了新方法,舊方法就不再被執(zhí)行
 但是:很多第三方框架,都建議兩個(gè)方法全都寫(xiě)
 */
- (BOOL)application:(UIApplication *)application openURL:(NSURL *)url sourceApplication:(NSString *)sourceApplication annotation:(id)annotation```
---

# 二. 社交分享
### 1. 什么是社交分享, 有什么作用?
    
    - 通過(guò)用戶的分享,讓更多的人去了解和使用這個(gè)App
    - 目前移動(dòng)互聯(lián)網(wǎng)應(yīng)用程序推廣的最重要手段之一
    - 屬于口碑營(yíng)銷的范疇,經(jīng)典成功案例是《瘋狂猜圖》

### 2. 社交分享的實(shí)現(xiàn)方案
- 1.系統(tǒng)自帶社交分享

        1. 導(dǎo)入Social.framework
        
        2. 判斷服務(wù)是否可用
            [SLComposeViewController isAvailableForServiceType:SLServiceTypeSinaWeibo];
            
        3. 彈出分享內(nèi)容輸入界面
            SLComposeViewController *cc = \[SLComposeViewController composeViewControllerForServiceType:SLServiceTypeSinaWeibo];
            [self presentViewController:cc animated:YES completion:nil];
            
        4. 額外設(shè)置
            [cc setInitialText:@"測(cè)試文字"]; // 初始化文字
            [cc addImage:[UIImage imageNamed:@"lufy"]]; // 配圖

- 2.第三方SDK實(shí)現(xiàn)(友盟分享)
下載地址: [http://www.umeng.com/]
        1. 申請(qǐng)賬號(hào),創(chuàng)建應(yīng)用
        2. 下載SDK
        3. 參照集成文檔


- 3.社交分享的一些建議
  - 遠(yuǎn)程通知-由服務(wù)器、開(kāi)發(fā)商向用戶推送消息
  - 社交分享-App的用戶主動(dòng)分享他們的經(jīng)驗(yàn)和心得 - 口碑營(yíng)銷

========================================================
SSO - 目前在國(guó)內(nèi)使用比較多,如果本機(jī)安裝了某個(gè)應(yīng)用程序,會(huì)直接進(jìn)入該應(yīng)用程序獲得授權(quán)。

URL Schemes填"sina."+你的友盟AppKey.實(shí)現(xiàn)下面兩個(gè)系統(tǒng)回調(diào):========================================================

強(qiáng)烈推薦大家使用的框架:友盟的統(tǒng)計(jì)分析
關(guān)注官方網(wǎng)站:http://bbs.umeng.com/forum-social-1.html
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書(shū)系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容