我是否可以编写一个应用程序,使用NFC Android Beam将文件(可以是图像文件)发送到另一个设备,该设备可以';t是否安装了相同的应用程序?

我是否可以编写一个应用程序,使用NFC Android Beam将文件(可以是图像文件)发送到另一个设备,该设备可以';t是否安装了相同的应用程序?,android,nfc,android-beam,Android,Nfc,Android Beam,我可以通过NFC Android Beam使用以下API发送文件 mNfcAdapter.setBeamPushUrisCallback() 其他设备是否也应该有相同的应用程序来接收文件 如果是,则发送此文件将不支持黑莓等其他平台,即使它们是支持NFC的设备。请给我一些建议 文件传输实现不要求接收设备具有您的应用程序。如果您发送图片之类的内容,当用户单击“可以”启动相关应用程序(如果已安装)的竞争通知时,将广播mime类型 值得注意的是,您不能通过android beam文件传输强制mime类

我可以通过NFC Android Beam使用以下API发送文件

mNfcAdapter.setBeamPushUrisCallback()
其他设备是否也应该有相同的应用程序来接收文件

如果是,则发送此文件将不支持黑莓等其他平台,即使它们是支持NFC的设备。请给我一些建议

文件传输实现不要求接收设备具有您的应用程序。如果您发送图片之类的内容,当用户单击“可以”启动相关应用程序(如果已安装)的竞争通知时,将广播mime类型

值得注意的是,您不能通过android beam文件传输强制mime类型,因此您不能保证您的应用程序将是唯一等待接收特定文件类型的应用程序。我还想指出,根据我的经验,试图发送没有扩展名的文件似乎是行不通的。如果没有分机,Beam将尝试但从不连接发送

如果查看《开发人员指南》中的文件发送要求,您会发现在两台设备上都安装应用程序并不是一项要求

  • 针对大文件的Android Beam文件传输仅在Android 4.1(API级别16)及更高版本中可用
  • 要传输的文件必须位于外部存储器中。要了解有关使用外部存储器的更多信息,请阅读使用外部存储器
  • 要传输的每个文件都必须是世界可读的。您可以通过调用方法File.setReadable(true、false)来设置此权限
  • 必须为要传输的文件提供文件URI。Android Beam文件传输无法处理FileProvider.getUriForFile生成的内容URI
发送文件参考:

接收文件参考: