如果未安装应用程序,请开始下载并安装Android App

时间:2015-10-05 07:16:19

标签: android intentfilter

我在清单

中使用此代码进行深层链接
<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="abc.in"
        android:pathPrefix="/"
        android:scheme="https" />
</intent-filter>

当点击网页上的链接安装应用程序时,我的应用程序可以打开。

在此我想实现两件事 -

  1. 在我输入网址并点击“开始”时打开我的应用。
  2. 当我点击网址并点击go.App正在点击网站上的任何链接时,应用程序未打开。

    1. 如果未安装应用,我想开始下载应用。
    2. 此时我可以在未安装应用程序但下载未开始的情况下转移到Play商店。

      如果可以做到这些,我希望得到你的帮助

2 个答案:

答案 0 :(得分:1)

1。Enabling deep linking上提供下一个示例的谷歌教程

<activity
    android:name="com.example.android.GizmosActivity"
    android:label="@string/title_gizmos" >
    <intent-filter android:label="@string/filter_title_viewgizmos">
        <action android:name="android.intent.action.VIEW" />
        <category android:name="android.intent.category.DEFAULT" />
        <category android:name="android.intent.category.BROWSABLE" />
        <!-- Accepts URIs that begin with "http://www.example.com/gizmos” -->
        <data android:scheme="http"
              android:host="www.example.com"
              android:pathPrefix="/gizmos" />
        <!-- note that the leading "/" is required for pathPrefix-->
        <!-- Accepts URIs that begin with "example://gizmos”
        <data android:scheme="example"
              android:host="gizmos" />
        -->
    </intent-filter>
</activity>

另请注意,从Android 11开始,有一个安全更新,您需要在深度链接工作之前在列表中午餐一次。

  1.   

    此时我可以在app不能转移到Play商店   安装但下载未开始。

  2. 它是你将获得的最好的,唯一可以自动启动下载的地方是来自游戏商店,他们希望保持这种方式;)

答案 1 :(得分:0)

  1. 方案是https,它不适用于http
  2. 您必须输入有效的市场链接
  3. 例如,从Google Play内的网站打开应用:

      

    搜索:   https://market.android.com/search?q=pname:packagename

         

    直接开放:   https://market.android.com/details?id=packagename