我需要通过NFC将数据传输到其他设备和第三方应用。既不是能够查看我的内容的目标应用程序的问题,也会使用任何intent-filter
定义android.nfc.action
。但他们实际上定义了过滤器来查看我的数据。是否可以通过我的数据NFC阻止打开这样的第三方应用程序?
第三方应用使用
定义过滤器<action android:name="android.intent.action.VIEW"/>
<category android:name="android.intent.category.BROWSABLE"/>
<category android:name="android.intent.category.DEFAULT"/>
和各种数据元素,如
<data android:mimeType="{MYMIME}" android:scheme="{content|file|https}"/>
<data android:host="{MYHOST}" android:pathPrefix="/view/" android:scheme="http"/>
<data android:host="*" android:pathPattern="{.*\\.MYEXTENSION|.*\\..*\\.MYEXTENSION}" android:scheme="{content|file|https|http}"/>
<data android:host="*" android:mimeType="*/*" android:pathPattern="{.*\\.MYEXTENSION|.*\\..*\\.MYEXTENSION}" android:scheme="{content|file|https|http}"/>
<data android:scheme="{MYSCHEME}"/>
<data android:host="*" android:pathPattern="/.*" android:scheme="{MYSCHEME}"/>
android是否定义了将TNF_MIME_MEDIA
NDEF记录转换为某种本地uri资源的任何中间件?或者也许我可以用其他方式构建NFC有效载荷,NDEF协议不是必需的?
在最糟糕的情况下,我可以使用AAR记录打开特定的应用程序,但它只在主要活动上打开(而不是我的内容)。