Rya*_*n C 15 android nfc deep-linking branch.io android-instant-apps
我正在尝试通过NFC打开即时应用程序.
我的AndroidManifest.xml中有类似下面的内容
<intent-filter android:autoVerify="true">
<action android:name="android.intent.action.VIEW" />
<action android:name="android.nfc.action.NDEF_DISCOVERED" />
<category android:name="android.intent.category.DEFAULT" />
<category android:name="android.intent.category.BROWSABLE" />
<data android:scheme="https" />
<data android:scheme="http" />
<data android:host="example-refresh.herokuapp.com" />
</intent-filter>
Run Code Online (Sandbox Code Playgroud)
从链接转到https://example-refresh.herokuapp.com(显然是示例链接)时,单击即时应用正确加载.当从nfc标签打开该链接时,浏览器就会加载.我已经尝试过让nfc打开一个AAR(https://developer.android.com/guide/topics/connectivity/nfc/nfc.html#aar)这会导致当应用程序没有打开游戏商店链接时安装时,安装和应用程序正确打开nfc.如果我在nfc上有其他东西,所以它显示了消歧的选项,那么我可以为浏览器选项选择即时应用程序,但我希望它默认为即时应用程序.
是否有一些我缺少一个nfc标签来加载即时应用程序?我也试过使用分支,但没有运气.
即时应用程序的允许权限非常有限,而 NFC 不在该权限集中。因此任何与 NFC 相关的意图都将不起作用。此外,您在清单上定义的任何内容仅在安装您的应用程序时才有效。即时应用程序显然不是这种情况。android.intent.action.VIEW当您将 APK 上传到 Play 商店时,Google 会为意图建立索引,以便他们可以使即时应用程序正常运行。
因此,当您扫描 NFC 时,这是一个android.nfc.action.NDEF_DISCOVERED意图,因此您的应用程序不会启动
但是,您仍然可以使其发挥作用。您不应使用通常用于启动免安装应用程序的链接,而应将 Play 商店上的免安装应用程序的链接写入 NFC 标签。
https://play.google.com/store/apps/details?id=<package_name>&launch=true
Run Code Online (Sandbox Code Playgroud)
检查https://developer.android.com/distribute/marketing-tools/linking-to-google-play#Instant
| 归档时间: |
|
| 查看次数: |
818 次 |
| 最近记录: |