iOS的URL Scheme的實(shí)現(xiàn)比較簡單?
打開project 點(diǎn)擊工程名 -> info -> URL type 點(diǎn)擊加號(hào) 如圖 圖片來自于(http://www.itdecent.cn/p/f367b4a5e871)

圖中的URL Scheme是必填的其他的隨意
在網(wǎng)頁調(diào)用App時(shí) 用scheme中的值加“://”? 例:“com.xhnp://”這樣就可以直接調(diào)用App,在“://”后面可以傳參數(shù)也可以不傳
App調(diào)用時(shí) 寫一個(gè)button的點(diǎn)擊事件,里面寫
????????let urlString = "com.xhnp://"
? ? ? ? leturl = URL(string: urlString)
? ? ? ? UIApplication.shared.open(url!)
就可以調(diào)用。
已上就是iOS的Scheme實(shí)現(xiàn)。
Android的實(shí)現(xiàn),在AndroidManifest.xml :
<activity
? ? android:name="xxxxxActivity"
????????...>
? ? <intent-filter>
? ? ? ? ? ? <!-- 上面三個(gè)是必須的 -->
? ??????????<action android:name="android.intent.action.VIEW"/>
????????????<category android:name="android.intent.category.DEFAULT"/>
????????????<category android:name="android.intent.category.BROWSABLE"/>
? ? ? ? ? ? <!-- scheme? 這個(gè)是必須的,其他host等不是必須的 -->
? ? ? ? ? ? ?<data? ?android:scheme="com.xhnp"/>
????</intent-filter>
</activity>
Android的scheme 不能有大寫字母
網(wǎng)頁跳轉(zhuǎn)的時(shí)候:有時(shí)會(huì)因?yàn)闉g覽器的原因不能進(jìn)行跳轉(zhuǎn)(我出現(xiàn)的問題是網(wǎng)頁跳轉(zhuǎn)會(huì)閃以下然后返回網(wǎng)頁),解決方案找個(gè)好的瀏覽器。
App跳轉(zhuǎn)的時(shí)候:同樣找個(gè)button寫點(diǎn)擊事件
? ??Uri uri = Uri.parse(urlString);
Intent intent =new Intent(Intent.ACTION_VIEW,uri);
intent.addCategory(Intent.CATEGORY_BROWSABLE);
intent.addCategory(Intent.CATEGORY_DEFAULT);
intent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
startActivity(intent);
其中
intent.addCategory(Intent.CATEGORY_BROWSABLE);
intent.addCategory(Intent.CATEGORY_DEFAULT);
intent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
我看的其他人寫的不要這三行也可以進(jìn)行跳轉(zhuǎn),我的需要加這三行才能進(jìn)行跳轉(zhuǎn)。
還有一個(gè)小問題就是跳轉(zhuǎn)后點(diǎn)擊返回鍵會(huì)返回桌面有的手機(jī)會(huì)返回跳轉(zhuǎn)前的App
以上就是Android的Scheme實(shí)現(xiàn)。