❶ android從瀏覽器中打開本地應用
開發中遇到的一些問題特此記錄:
1、應用場景一 在瀏覽器中要求直接打開到安裝的應用中
需要在該應用的啟動Activity 清單文件中進行配置
<Intent-filter>
<action android:name="android.intent.action.VIEW"/>
<category android:name="android.intent.category.DEFAULT"/>
<category android:name="android.intent.category.BROWSABLE"/>
<data
android:host="com..test"
android:scheme="text"/>
</Intent-filter>
此處對應的data數據 跟伺服器人員進行交互的時候為:text://com..test
2、應用場景二 在瀏覽器中進行打開 並且要求打開指定的具體的頁面
首先得在清單文件中進行上面一樣的配置 接著和從其他跳轉的activity中獲取的一樣 ,通過intent來進行數據的獲取
if(intent !=null) {
Uri uri = intent.getData();
if(uri !=null) {
String host = uri.getHost();
LogUtil.d(TAG,host);
String data = uri.getQueryParameter("code");
try{
jumpData= URLDecoder.decode(data,"UTF-8");
LogUtil.d(TAG,jumpData);
}catch(UnsupportedEncodingException e) {
e.printStackTrace();
}
}
}
這樣獲取到的數據就是需要的數據 所要跳轉的具體信息具體跳轉類型都會獲取到,然後在跟以前一樣進行跳轉就可以了。
❷ 安卓手機怎麼打開url
首先需要一台安裝有瀏覽器且能夠正常上網的手機。
一、在文件管理器中找到需要打開的url文件,並選擇打開為文本。
❸ URL scheme啟動Android應用,原生Android瀏覽器解析不正確
1、自定義URL Scheme:
創建一個activity並加上一個<intent-filter>(如果該activity是包含其他<intent-filter>,則需新建一個<intenf-filter>,不能在原有filter上添加),內容為:
<action android:name="android.intent.action.VIEW"/><!-- 若刪除,使用startActivity啟動android.content.ActivityNotFoundException,使用HTMLViewer啟動找不到網頁-->
<category android:name="android.intent.category.BROWSABLE"/><!-- 若刪除,使用startActivity啟動ok,使用HTMLViewer啟動找不到網頁 -->
<category android:name="android.intent.category.DEFAULT"/><!-- 若刪除,使用startActivity啟動android.content.ActivityNotFoundException,使用HTMLViewer啟動找不到網頁-->
<data android:scheme="myapp"/><!-- scheme的值可自定義 -->
2、通過URL Scheme啟動Android應用
方式一:通過代碼訪問:Intent intent = new Intent();
/**parse的參數值說明如下
* 只寫myapp,啟動android.content.ActivityNotFoundException
* 寫myapp://12,成功
* 寫myapp://da?sd=ad,成功
*/
intent.setData(Uri.parse("myapp://12"));
startActivity(intent);
方式二:通過網頁訪問:
/**href的值說明如下
* 只寫myapp,找不到網頁
* 寫myapp://12,成功
* 寫myapp://da?sd=ad,成功
*/
<html xmlns="http://www.w3.org/1999/xhtml" >
<head>
<title>通過URL Scheme啟動Android應用</title>
</head>
<body>
<form>
<a href="myapp://12">啟動</a>
</form>
</body>
</html>
創建完成後發送到手機,再點擊html選擇使用HTMLViewer打開,再點擊鏈接即可啟動應用。
3、總結:第二種方式實現有點繁瑣,最好的實現方式是直接在瀏覽器中輸入url以啟動應用。在網上搜索找到應如下操作:在瀏覽器的搜索欄輸入如下url:content://com.android.htmlfileprovider/storage/emulated/0/myapp://12,經測試無法成功。不知道是哪裡的問題,還請知道的指點一二。
❹ Android點擊簡訊鏈接打開App之App Link 技術實現(親證篇)
學習資料:
Android 點擊Url(簡訊鏈接)打開App 的調研與實現
Google App Link 技術實現(親證篇)
AppLinks使用詳解
實現方式分:Deep linking 與 Android App Links
Deep linking方式實現:具體可以參考 Android 點擊Url(簡訊鏈接)打開App 的調研與實現
Android App Links方式實現
第一步 驗證一個伺服器地址(例如https://asuss.ryit.co),成功驗證通過後,當用戶在簡訊中點擊於類似https://asuss.ryit.co/login的web鏈接,即可打開app本地相關頁面,我們在AndroidMenifest的啟動頁進行配置
第二步 assetlinks.json文件製作 Android Studio中Tools>App Link Assistants
這個文件只能放在https的鏈接中,不管你之前在action中聲明的是http或者https
第三步 驗證
1)打開瀏覽器訪問https://asuss.ryit.co/.well-known/assetlinks.json,正常應該看到該文件內容輸出。
2)訪問google api,查看app是否通過App Links驗證(需翻牆這步一定要做,有人反饋如果不做這步還是deeplink)
https://digitalassetlinks.googleapis.com/v1/statements:list?source.web.site=https://asuss.ryit.co(替換你的伺服器名)&relation=delegate_permission/common.handle_all_urls
3)在簡訊中編輯https://asuss.ryit.co,之後點擊url直接跳轉到應用中省去了跳轉到瀏覽器的選擇跳轉過程
注意:圖中url為個人虛擬url了,替換即可
散花,愛你們,我的安卓老兄弟們,安卓老姐們,我踩完坑了。
❺ android手機怎麼才能直接打開URL鏈接文件
在安卓代碼中調用瀏覽器來打開相應的網頁,一般有以下幾種方式
調用默認瀏覽器。
其他瀏覽器。
自定義一個簡單的WebView瀏覽器。
【原理】
主要是通過代碼進行調用已有或者未有的瀏覽器進行打開相應的網頁進行瀏覽。
【詳細實現步奏】
一.調用默認瀏覽器
優缺點:部分手機可能連默認的瀏覽器都沒有。
123456二.其他瀏覽器,制定打開
缺點:必須知道打開的瀏覽器的包名,大部分用戶可能沒有安裝這些瀏覽器
123456三.自定義一個簡單的WebView瀏覽器
優缺點:推薦使用,不必擔心手機上是否有瀏覽器。
12345【最後】
每種方法根據個人需要進行選用,沒其他特別因素推薦使用第三種方案。
❻ 手機如何打開url文件
url文件手機打開需要一個帶有瀏覽器以及正常上網的能力手機。方法如下:
准備工具:小米10。
系統版本:安卓7.0。
第一步:在文件管理器中找到需要打開的url文件,並選擇打開方式為「文本」。見下圖所示:
❼ Android 12 新特性:讓 URL 分享更簡單
相比較之前的 2 個 Beta 版本,日前發布的 Android 12 Beta 3 引入了大量的變化和改進。雖然Google在博客中詳細羅列了 Beta 3 中面向用戶的重大變化,但很多細節上的改變並沒有完整收錄。 援引外媒 XDA 報道,Android 12 引入了一個非常有用的功能--近期 URL 分享。
該功能可以讓你快速復制近期應用概覽中的鏈接。事實上早在 Beta 3 發布的時候,XDA 編輯就注意到了這項功能,只是當時並不清楚是如何工作的。而現在Google分享了開發者文檔,對這項功能進行了詳細說明。
根據官方文檔,近期 URL 分享功能是可以由任何提供網路用戶界面並覆蓋活動類的 onProvideAssistContent 方法的應用程序啟用。該方法用於向助理應用程序提供關於當前前景內容的結構化信息。基本上,應用程序可以告訴助理,當前的前景內容是從一個特定的網頁載入的。而在 Android 12 中,該 URL 被提取出來並顯示給用戶,讓他們可以輕松地從最近的應用概覽中復制它。
正如你在截圖中看到的那樣,URL 以圖標的形式出現在最近應用概覽中的應用卡的右上角。你可以點擊它來查看完整的 URL,然後從最近的應用概覽中復制或分享它。點擊該按鈕也會在底部出現聯系人建議,以幫助你在同一屏幕上分享該URL。
目前,如果你想從Google瀏覽器中復制一個鏈接並與朋友分享,你必須點擊地址欄,然後點擊復制按鈕,切換到你選擇的消息應用程序,然後在點擊發送之前將 URL 粘貼到那裡。或者,你可以點擊地址欄,然後點擊分享按鈕,從分享表中選擇你想分享鏈接的應用程序,然後選擇你想分享的聯系人。在這兩種情況下,這都是一個相當漫長的過程。
最近的URL共享功能旨在很大程度上簡化這一過程,讓你向上滑動打開最近的應用程序概覽,然後在同一屏幕上復制或分享鏈接。
❽ 安卓手機怎麼打開url
安卓手機打開url文件首先需要在文件管理器中找到需要打開的url文件,再用「文本」方式打開,點擊使用HTML查看器打開。最底下一行是網路地址,從「=」號後面開始選擇,直接復制,打開瀏覽器在瀏覽器搜索欄中粘貼url,點擊進入即可看到相關內容。
在WWW上,每一信息資源都有統一的且在網上唯一的地址,該地址就叫URL(Uniform Resource Locator,統一資源定位器),它是WWW的統一資源定位標志,就是指網路地址。
相關信息
hostname(主機名)
是指存放資源的伺服器的域名系統(DNS)主機名或IP地址。有時,在主機名前也可以包含連接到伺服器所需的用戶名和密碼(格式:username:password@hostname)。
port(埠號)
整數,可選,省略時使用方案的默認埠,各種傳輸協議都有默認的埠號,如http的默認埠為80。如果輸入時省略,則使用默認埠號。有時候出於安全或其他考慮,可以在伺服器上對埠進行重定義,即採用非標准埠號,此時,URL中就不能省略埠號這一項。
❾ 在android手機如何通過瀏覽器URL鏈接打開android應用
在activity里加上如下即可,在觸發url的時候你的應用會和瀏覽器一起顯示在選項列表裡,選擇了你的應用就用你的應用打開了
❿ Android 跨應用間調用: URL Scheme
Android中的自定義的 URL Scheme 是一種頁面內跳轉協議,也可以被稱為 URLRouter ,就是通過類似打開網頁的方式去通過路由打開一個Activity,而非直接通過顯式Intent方式去進行跳轉。這樣隱式intent的方法跳轉好處如下:
上文已經說過, URL Scheme 是就通過類似打開網頁的方式去通過路由打開一個Activity,其協議格式和我們打開網頁輸入的網址類似。
一個完整的完整的URL Scheme協議格式由scheme、host、port、path和query組成,其結構如下所示:
其中scheme既可以是Android中常見的協議,也可以是我們自定義的協議。Android中常見的協議包括content協議、http協議、file協議等,自定義協議可以使用自定義的字元串,當我們啟動第三方的應用時候,多是使用自定義協議。
如下是一個自定義協議的URI:
通過上面的路徑 Scheme、Host、port、path、query全部包含:
URL Scheme 的使用方法簡要言之就是先在manifest中配置能接受Scheme方式啟動的activity;當需要調用時,將Scheme協議的URi以Data的形式加入到Intent中,隱式調用該activity。
1). 在AndroidManifest.xml中對<activity >標簽增加<intent-filter>設置Scheme
上面的設置中可以看到,MainActivity包含多個<intent-filter>設置,第一個是正常的啟動,也就是在應用列表中啟動;第二個是通過 URL Scheme 方式啟動,其本身也是隱式Intent調用的一種,不同在於添加了<data>屬性,定義了其接受 URL Scheme 協議格式為 urlschemel://auth_activity
這里需要說明下, URL Scheme 協議格式中,組成URI的這些屬性在<data >標簽中都是可選的 ,但存在如下的依賴關系:
當我們將intent對象中的Uri參數與intent-filter中的<data>標簽指定的URI格式進行對比時,我們只對比intent-filter的<data>標簽指定的部分,例如:
需要注意的是,intent-filter的<data>標簽在指定path的值時,可以在裡面使用通配符*,起到部分匹配的效果。
2). 使用URL啟動Activity
當然可以在網頁中調用
或者是在JS中調用
3.)如何判斷URL Scheme是否有效
有時候需要把一些輔助性的、較為獨立的APP在Home Launcher中隱藏起來,只允許一些特定的APP調用。這個時候,我們可以利用 URL Scheme 協議來做到這一點,設置AndroidManifest.xml中對<activity >標簽如下
因為Home Launcher列出的應用圖標要求必須有Activity同時滿足
上面的配置中有多餘的category和data限制存在,所以並不匹配,不會在Home Launcher出現,但是可以使用 URL Scheme 來啟動。
這樣就可以將一組APP設置一個統一的入口,然後根據實際需要在調用不同子APP,即所謂的 APP業務組件化 , URL Scheme 在其中有著重要的作用,更進一步討論會在以後的文章中呈現,敬請期待。
參考文獻:
http://blog.csdn.net/iispring/article/details/48481793
http://blog.csdn.net/hb707934728/article/details/53196419
http://www.cnblogs.com/whoislcj/p/5825333.html