通過瀏覽器調用Android或iOS應用

來源:互聯網
上載者:User

在做行動裝置 App單點登入的時候,需要在瀏覽器裡點選連結啟動APP並將參數傳到APP裡的相應介面進行處理,現將通過瀏覽器調用Android和iOS應用的實現過程整理出來固化到部落格,以便查詢。

一:通過瀏覽器調用Android應用

1)修改設定檔AndroidManifest.xml,在需要開啟的activity下添加如下配置:





2)在HTML中,添加ssotest,即可點擊此連結開啟APP。

3)其他的APP也可以通過如下方式開啟該應用:

startActivity(new Intent(Intent.ACTION_VIEW, Uri.parse("ssotest://")));

4)如果想傳遞參數,可以在url追加即可,比如:

ssotest

5)接受並解析參數,在接收的Activity中使用如下代碼獲得參數:

this.getIntent().getScheme();//獲得Scheme名稱

this.getIntent().getDataString();//獲得Uri全部路徑,根據格式自己解析字串即可。

二:通過瀏覽器調用iOS應用

1)修改plist檔案,註冊對外的URL

A:找到工程的info.plist

B: 點擊 information property list後面的加號,從列表中選擇URL types

C: 展開URL types,再展開Item0,將Item0下的URL identifier修改為URL Scheme

D: 展開URL Scheme,將Item0的內容修改為ssotest(可自行定義)

2)在HTML中,添加ssotest,即可點擊此連結開啟APP。

3)如果想在啟動的APP中接受此URL並進行特殊的處理,可以修改工程的AppDelegate.m,重寫openURL方法,如下:

- (BOOL)application:(UIApplication *)application openURL:(NSURL *)url sourceApplication:(NSString *)sourceApplication annotation:(id)annotation

{

// 可通過[url scheme]獲得定義的Scheme名稱

// 可通過[url absoluteString] 獲得整個的URL路徑,可解析傳遞過來的資料

}

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在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.