有没有一种方法可以这样构造一个NdefMessage
:
- 如果接收方设备上安装了我的应用程序,请打开其中的链接(例如,使用自定义 URI 方案)
- 如果我的应用程序未安装,请打开默认网络浏览器,其中包含指向移动网站上同一页面的链接
我让它们分开工作,但是当我将两个 NdefRecord
放入一个 NdefMessage
并将其设置为通过 Android Beam 推送时,接收设备会显示一个包含这两个的选择器记录。您可以单击其中一个,它会将您带到相应的应用程序(我的应用程序或 Chrome)。有没有办法绕过这个选择器并让它自动启动第一个支持的链接?
最佳答案
不,没有。
但是这里有两个解决方法:
- Android 支持所谓的 ApplicationRecords,它指向某个特定的包。如果未安装,Android 将打开 Play 商店以安装该应用。
- 只需通过 beam 推送 http://uri,让您的应用也解析此 uri。第一次“打开”链接时,您将获得选择器,要求您在浏览器和您的应用程序之间进行选择。
关于安卓光束 : share a in-app link with fallback to web version,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21986887/