Android:H5 通过 URL Scheme 拉起app应用
記錄一下:task-->通過點(diǎn)擊h5鏈接,拉起目標(biāo)app
第一:在清單文件中配置,啟動的WeekUpActivity
<activity<!--要喚起的Activity-->android:name=".splash.WeekUpActivity"android:exported="true"><intent-filter><!--可以根據(jù)用戶的數(shù)據(jù)類型,打開相應(yīng)的Activity--><action android:name="android.intent.action.VIEW" /><!--界面可以被隱式調(diào)用--><category android:name="android.intent.category.DEFAULT" /><!--界面可以通過瀏覽器的連接啟動--><category android:name="android.intent.category.BROWSABLE" /><!--協(xié)議部分,主要是配置scheme和host--><dataandroid:host="jhq"android:scheme="testclientapp"android:path="/news"android:port="8080"> /></intent-filter> </activity>第二:格式:scheme://host:port/path? ?===》testclientapp://jhp:8080/news
- 1.在手機(jī)微信里,通過微信內(nèi)部瀏覽器拉起app
- 2.在瀏覽器中(搜狗、百度、qq),通過URL Scheme 拉起app
另總結(jié)一下:Android拉起app的方法
//通過包名,打開目的app private void openThirdApp2(){Intent intent2 = getPackageManager().getLaunchIntentForPackage("包名");String classNameString = intent2.getComponent().getClassName();//得到app類名Intent intent = new Intent();intent.setAction(Intent.ACTION_MAIN);intent.addCategory(Intent.CATEGORY_LAUNCHER);intent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK| Intent.FLAG_ACTIVITY_RESET_TASK_IF_NEEDED);intent.setComponent(new ComponentName("包名", classNameString));startActivity(intent);}//通過包名,打開目的app import android.content.ComponentName; import android.content.Intent; import android.content.pm.PackageManager;private void openThirdApp1(){PackageManager packageManager = getPackageManager();Intent intent= packageManager.getLaunchIntentForPackage("包名");startActivity(intent);}//可以拉起---發(fā)起app和拉起的app不在同一個棧里 private void openThirdApp3(){//可以拉起---發(fā)起app和拉起的app不在同一個棧里Intent intent = new Intent();intent.setData(Uri.parse("testclientapp://jhq:8080/news"));intent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);startActivity(intent);}//可以拉起---但在發(fā)起app和拉起的app在同一個棧里 private void openSchema(){//可以拉起---但在發(fā)起app和拉起的app在同一個棧里Intent it = new Intent();it.setAction(Intent.ACTION_VIEW);it.setData(Uri.parse("testclientapp://jhq:8080/news"));startActivity(it);}參考:
https://www.sunzn.com/2017/07/18/%E4%BD%BF%E7%94%A8-URL-Scheme-%E5%94%A4%E8%B5%B7%E5%BA%94%E7%94%A8%E6%89%93%E5%BC%80-Activity/? ??使用 URL Scheme 喚起應(yīng)用打開 Activity
https://blog.csdn.net/qq_40028324/article/details/103078599??關(guān)于h5喚起App的方式
https://www.cnblogs.com/shadajin/p/5724117.html??iOS/Android 瀏覽器(h5)及微信中喚起本地APP
https://blog.csdn.net/wangzunkuan/article/details/95515175??運(yùn)用scheme協(xié)議喚起外部app
https://blog.csdn.net/weixin_43917449/article/details/103393978??Android 使用scheme喚起app本地打開
https://blog.csdn.net/zhaohuiyan9837/article/details/78429079??android點(diǎn)擊鏈接打開應(yīng)用對應(yīng)界面? (在應(yīng)用殺死狀態(tài)下,打開對應(yīng)界面后,返回時為了不回到瀏覽器界面,可以借助TaskStackBuilder來實(shí)現(xiàn)(具體用法請查閱相關(guān)文檔))
https://www.jianshu.com/p/1439c8bbc34b??Android 外部喚起應(yīng)用跳轉(zhuǎn)指定頁面?TaskStackBuilder
https://blog.csdn.net/huaxun66/article/details/78274600??Android應(yīng)用內(nèi)跳轉(zhuǎn)Scheme協(xié)議
https://github.com/ZHuiYan/WebOpenApp/tree/master? ?demo
總結(jié)
以上是生活随笔為你收集整理的Android:H5 通过 URL Scheme 拉起app应用的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Netplus里的基本概念
- 下一篇: android scheme 参数解析,