首页 > 解决方案 > 如何通过 NFC 推送和打开 URL,跳过 Android Beam UI?

问题描述

用例:我希望路过的用户在我的 Kiosk Android 设备上点击他的手机,并在他手机的默认浏览器应用程序上打开我的商店 URL。

我能想到的三个可用选项(HCE、R/W、P2P)的唯一选择是带有 Beam 的 P2P。但是,问题是,一旦用户在我的 NFC 上点击设备,整个应用程序就会缩小并嵌入黑色 UI 中,并带有“Touch to Beam”标签。有没有办法可以避免这个两步过程?

它认为这一定是可能的,因为当我们使用 Beam 从 chrome 应用程序共享 URL 时,它只是在另一台设备中打开,而不是要求“触摸到 Beam”。但我找不到任何支持它的答案。

fun send(activity: Activity, url: String, callback: (Boolean)->Unit){
    mCallback = callback
    mNfcAdapter?.setOnNdefPushCompleteCallback(this, activity)
    mNfcAdapter?.setNdefPushMessage( NdefMessage(NdefRecord.createUri(Uri.encode(url))), activity)
}

 override fun onNdefPushComplete(event: NfcEvent?) {
    mCallback?.invoke(true)
}

标签: androidnfchcenfc-p2p

解决方案


推荐阅读