应用内索引不适用于Android 4?

时间:2017-12-11 13:41:34

标签: android firebase deep-linking firebase-app-indexing

我已经跟随documentation for In-App-Indexing

  • assetlinks.json上传到https://mycompany.com/.well-known/assetlinks.json
  • com.google.firebase:firebase-appindexing:11.6.0添加为依赖项

  • 添加到我的应用的清单中:

    <activity
        android:name=".main.view.MainScreenActivity"
        android:label="@string/app_name"
        android:launchMode="singleTask"
        android:theme="@style/AppTheme.NoActionBar">
    
        <!--deeplinking-->
        <intent-filter
            android:autoVerify="true"
            android:label="@string/app_name">
            <action android:name="android.intent.action.VIEW" />
    
            <category android:name="android.intent.category.DEFAULT" />
            <category android:name="android.intent.category.BROWSABLE" />
    
            <data
                android:host="www.mycompany.com"
                android:path="/" />
    
            <data android:scheme="http" />
            <data android:scheme="https" />
    
            <data android:pathPattern="/somepath/" />
    
        </intent-filter>
    </activity>
    

我根据the documentation对所有这些进行了测试,一切似乎都很好。

在Android 5及更高版本上,我可以从Play商店下载我的应用,搜索我的网站内容,Google会直接从我的应用中显示结果。我也可以直接从Google的搜索结果跳转到我的应用中。一切都很好。

这在Android 4上无效。

我注意到,在Android 5上安装和打开我的应用时,日志中会显示以下内容:

  

I / IntentFilterIntentSvc:正在验证   IntentFilter的。 verificationId:4 scheme:&#34; https&#34;主机:&#34; www.mycompany.com&#34;   包:&#34; com.mycompany.myapp&#34 ;. 12-11 14:26:49.641 1708-9067 /?

     

I / IntentFilterIntentSvc:验证4完成。成功:真。失败   主机:

在Android 4设备上不会发生这种情况。

知道问题可能在这里吗?我没有找到任何信息表明Android 4不支持应用程序内索引。

1 个答案:

答案 0 :(得分:1)

没有最低API级别可以使用App-Indexing api本身,但不幸的是,对于Jelly Bean以下的用户,API依赖于Google搜索的最低版本是API 17.这是一个简单的重新发布来自IanHannibalLake的答案。这是指向OG answer的链接。