摘要:關于我的博客我的個人站點,知乎簡書喜馬拉雅聽書開源中國泡在網上的日子郵箱阿里云博客頭條
目錄介紹
1.URL Scheme使用場景介紹
2.URL Scheme基礎介紹
2.1 什么是URL Scheme?
2.2 URL Scheme協議格式解釋
2.3 Scheme鏈接格式樣式
3.URL Scheme如何使用
3.1 設置Scheme
3.2 獲取Scheme跳轉的參數,并添加跳轉方式
3.3 調用方式
3.4 如何判斷一個Scheme是否有效
3.5 Scheme在短信息中注意要點
關于Scheme應用案例https://github.com/yangchong2...
可以參考該demo中的AppTool工具app,用aidl通信,還支持scheme協議跳轉,挺好玩的!
關于鏈接1.技術博客匯總
2.開源項目匯總
3.生活博客匯總
4.喜馬拉雅音頻匯總
5.其他匯總
1.URL Scheme使用場景介紹
URL Scheme使用場景,目前1,2,5使用場景很廣,有沒有一種熟悉的感覺?
* 1.通過小程序,利用Scheme協議打開原生app * 2.H5頁面點擊錨點,根據錨點具體跳轉路徑APP端跳轉具體的頁面 * 3.APP端收到服務器端下發的PUSH通知欄消息,根據消息的點擊跳轉路徑跳轉相關頁面 * 4.APP根據URL跳轉到另外一個APP指定頁面 * 5.通過短信息中的url打開原生app2.URL Scheme基礎介紹 2.1 什么是URL Scheme?
android中的scheme是一種頁面內跳轉協議,是一種非常好的實現機制,通過定義自己的scheme協議,可以非常方便跳轉app中的各個頁面
2.2 URL Scheme協議格式String urlStr="http://www.ycbjie.cn:80/yc?id=hello&name=cg"; //url = protocol + authority(host + port) + path + query //協議protocol= http //域名authority= www.ycbjie.cn:80 //頁面path= /yc //參數query= id=hello&name=cg //authority = host + port //主機host= www.ycbjie.cn //端口port= 802.3 Scheme鏈接格式樣式
樣式:[scheme]://[host]/[path]?[query]
3.URL Scheme如何使用 3.1 設置Scheme在AndroidManifest.xml中對標簽增加設置Scheme
3.2 獲取Scheme跳轉的參數,并添加跳轉方式
public class SchemeFirstActivity extends AppCompatActivity { @Override protected void onCreate(@Nullable Bundle savedInstanceState) { super.onCreate(savedInstanceState); Uri uri = getIntent().getData(); if (uri != null) { //獲取指定參數值 String type = uri.getQueryParameter("type"); Log.e( "UrlUtils","main: " + type); if(type.equals("yangchong")){ ActivityUtils.startActivity(GuideActivity.class); }else if(type.equals("main")){ ActivityUtils.startActivity(MainActivity.class); } } finish(); } }3.3 調用方式
3.3.1 原生調用
Intent intent = new Intent(Intent.ACTION_VIEW,Uri.parse("yc://ycbjie:8888/from?type=yangchong")); startActivity(intent);
3.3.2 網頁調用
打開叮咚app
3.3.3 短信息中調用
3.4 如何判斷一個Scheme是否有效PackageManager packageManager = getPackageManager(); Intent intent = new Intent(Intent.ACTION_VIEW, Uri.parse("yc://ycbjie:8888/from?type=yangchong")); List3.5 Scheme在短信息中注意要點activities = packageManager.queryIntentActivities(intent, 0); boolean isValid = !activities.isEmpty(); if (isValid) { startActivity(intent); }
設置android:scheme="http"或者android:scheme="https"后,點擊短信息或者h5頁面,發現沒有跳到指定的頁面,反而打開的是網頁鏈接。
關于我的博客我的個人站點:www.yczbj.org,www.ycbjie.cn
github:https://github.com/yangchong211
知乎:https://www.zhihu.com/people/...
簡書:http://www.jianshu.com/u/b7b2...
csdn:http://my.csdn.net/m0_37700275
喜馬拉雅聽書:http://www.ximalaya.com/zhubo...
開源中國:https://my.oschina.net/zbj161...
泡在網上的日子:http://www.jcodecraeer.com/me...
郵箱:yangchong211@163.com
阿里云博客:https://yq.aliyun.com/users/a... 239.headeruserinfo.3.dT4bcV
segmentfault頭條:https://segmentfault.com/u/xi...
文章版權歸作者所有,未經允許請勿轉載,若此文章存在違規行為,您可以聯系管理員刪除。
轉載請注明本文地址:http://specialneedsforspecialkids.com/yun/76624.html
摘要:上面提到在安卓完全不需要像這樣大費周章的繞彎路,所以安卓可能就不需要這個自定義的,這樣又會導致面臨著與安卓差異化嚴重問題。前言 最早接觸離線包的概念要追溯到16年初,項目迎來大改版,其中重點項目之一就是離線包方案的制定與實施。離線包顧名思義就是將H5/CSS/JS和資源文件打包提前下發到App中,這樣App在加載網頁的時候實際上加載的是本地的文件,減少網絡請求來提高網頁的渲染速度,并實現動態...
摘要:上一篇文章網絡爬蟲實戰使用處理異常下一篇文章網絡爬蟲實戰使用分析協議庫里還提供了這個模塊,它定義了處理的標準接口,例如實現各部分的抽取,合并以及鏈接轉換。上一篇文章網絡爬蟲實戰使用處理異常下一篇文章網絡爬蟲實戰使用分析協議 上一篇文章:Python3網絡爬蟲實戰---21、使用Urllib:處理異常下一篇文章:Python3網絡爬蟲實戰---23、使用Urllib:分析Robots協議...
摘要:很好的一個屬性,因為通過這個屬性在上我們能夠繞過微信的攔截從而打開。微信中打開至此只有微信是打不開的,實際上騰訊系的產品都是打不開的,包括瀏覽器。簡而言之,騰訊的產品中都去借助應用寶這個平臺去執行你需要的操作。 先聲明一下關于ios中9.0打開方式的文章來自博客:IOS9通用鏈接(universal link) 前言 對于一個完備的互聯網產品而言需要有app端與web端兩個不同前端,對...
閱讀 804·2023-04-25 19:40
閱讀 3405·2023-04-25 17:41
閱讀 2993·2021-11-11 11:01
閱讀 2588·2019-08-30 15:55
閱讀 3218·2019-08-30 15:44
閱讀 1347·2019-08-29 14:07
閱讀 478·2019-08-29 11:23
閱讀 1314·2019-08-27 10:54