[ios] 如何調用其他app h5介面調用開啟app

來源:互聯網
上載者:User

標籤:images   test   .net   har   idt   www.   https   plist   div   

參考資料:app喚醒app

     h5喚醒app

    有趣的URL Scheme

 

被喚起端需要做的工作(demoApp):

1.設定URL Scheme  只是一個app的標識  具體是什麼自己定  一個Scheme對應一個app  對應的identifier是項目的build id

2.核查info.plist檔案中是否也有對應的值

被喚醒端的工作就做好了.

在appdelegate控制器的這個方法裡可以拿到具體的請求資訊  從而可以有選擇的去判斷是否要喚醒app

- (BOOL)application:(UIApplication *)application openURL:(NSURL *)url  sourceApplication:(NSString *)sourceApplication annotation:(id)annotation{    NSLog(@"Calling Application Bundle ID: %@", sourceApplication);    NSLog(@"URL scheme:%@", [url scheme]);    NSLog(@"URL query: %@", [url query]);        // Customer Code    return YES;}

 

喚醒端工作:(test)

1.開啟對應的scheme:

需要注意的一點事  這個url需要在scheme的尾部添加://  比如設定的scheme是A  那麼這個要開啟的url則是A://

- (void)awakeOtherApp{    NSString *customURL = @"openDemoApp://";        if ([[UIApplication sharedApplication]         canOpenURL:[NSURL URLWithString:customURL]])    {        [[UIApplication sharedApplication] openURL:[NSURL URLWithString:customURL]];    }    else    {        UIAlertView *alert = [[UIAlertView alloc] initWithTitle:@"URL error"                                                        message:[NSString stringWithFormat:                                                                 @"No custom URL defined for %@", customURL]                                                       delegate:self cancelButtonTitle:@"Ok"                                              otherButtonTitles:nil];         [alert show];     } }

在對應的位置調用這個方法即可

在ios9以後,因為注重了安全問題,所以需要在info.plist檔案中設定一個白名單,如果不設定的話會包以下錯誤資訊:

-canOpenURL: failed for URL: "openDemoApp://" - error: "This app is not allowed to query for scheme opendemoapp"

白名單設定如下:

在info.plist檔案中添加:

值就是之前設定的scheme  這個是沒有://的

h5調用app的方法可以參照上面連結

 

demo (提取碼: ysfu)

 

[ios] 如何調用其他app h5介面調用開啟app

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.