簡體   English   中英

我將如何在我的 android 應用程序中打開我的網站

[英]How will I open my website inside my android app

您好,我有一個 webview android 應用程序。 當有人打開我的應用程序時。 我的網站在應用程序內作為 webview 應用程序打開。 但是當有人在自己的瀏覽器中調用我的網站 url 時,我想在應用程序內打開 url。

例如,當我撥打 www.fb.com/somepage 時,facebook 會直接在我的手機中打開自己的應用程序。 我不通過瀏覽器訪問頁面我嘗試這樣做。 我會怎么做?

我搜索了我想象的所有內容,但找不到關於它的有用文章。 我搜索了 android 支持的 url 或支持的網頁。 我發現了很多東西。 他們寫了很多代碼。 我不認為我需要很多代碼來捕捉我的網站網址。 我不對嗎?

我已經有了 webview 應用程序。 如果我會做一些簡單的方法,比如清單或我的主要活動文件中的某些更改。 我想這樣做。

謝謝你的幫助

需要的是您要鏈接到url scheme 的View操作的intent-filter

在您的清單 XML 文件中... View 意圖表示操作,而 BROWSABLE 類別響應 Web URI。

定義方案

<activity android:name=".MainActivity>
    <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:scheme="http" 
         android:host="your-website.com" 
         android:path="/somepage/" />
    </intent-filter>
</activity> 

但是,用戶必須已經安裝了您的應用程序,否則他/她將在瀏覽器中收到錯誤消息。 你絕對需要一個后備。 處理錯誤問題的一種方法是使用一些 Javascript 檢查來驗證用戶是否安裝了應用程序(如果您使用的是 AngularJS 之類的 Javascript,您可以將其綁定到 onclick。如果沒有,您可以使用某種重定向Javascript 或沒有)。 如果未安裝該應用程序,用戶將轉到常規網站 url。 否則,他/她會跳轉到應用程序。

為未安裝應用程序的用戶處理重定向

在您的網站文件或模板文件中,使用 Javascript

<script>
  //any conditional logic 
  if( navigator.userAgent.match(/android/i) ) {
  // redirect to App
  } else {
  // stay/redirect to website or something like getting them to install the app  
  }
</script>

現在,當用戶點擊<a href="http://yourweb.com/somepage/">Your Text </a> ,他/她會進入該應用程序,但如果該應用程序未安裝,他/他/她將進入瀏覽器或 Play 商店中的頁面(請參閱下面的注釋)。

其他選項

還有另一種方法可以完成上述所有操作 您可以擁有自己的自定義 URI,而不是定義 http 方案。

<intent-filter>
  <data android:scheme="your-custom-URI" />

</intent-filter>

並在您的 Web 模板文件中為重定向回退提供某種條件......

<a href="your-custom-URI://somepage">Your Text</a>

額外說明

  • 需要您注意的事情涉及某些瀏覽器的細節。 以下是 Google Chrome處理該主題的方式

  • 如果您的應用在 Play 商店中,您可以推薦用戶到market://details?id=com.your.app.package下載它。

  • 您可以在您的網站中使用一些 Javascript 庫(例如 AngularJS、Vue 等)實現更多功能。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM