我已经跟随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不支持应用程序内索引。
答案 0 :(得分:1)
没有最低API级别可以使用App-Indexing api本身,但不幸的是,对于Jelly Bean以下的用户,API依赖于Google搜索的最低版本是API 17.这是一个简单的重新发布来自IanHannibalLake的答案。这是指向OG answer的链接。