【问题标题】:Can i write an app which sends file (can be an image file) to another device using NFC Android Beam that does't has the same app installed?我可以编写一个使用 NFC Android Beam 将文件(可以是图像文件)发送到另一台设备的应用程序,该设备没有安装相同的应用程序吗?
【发布时间】:2014-08-05 15:59:51
【问题描述】:

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

mNfcAdapter.setBeamPushUrisCallback()

其他设备是否也应该有相同的应用程序来接收文件?
如果是,则发送此文件将不支持其他平台,例如 Blackberry,即使它们是支持 NFC 的设备。请指教。

【问题讨论】:

    标签: android nfc android-beam


    【解决方案1】:

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

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

    如果您查看开发指南中的文件发送要求,您会发现不需要在两台设备上安装应用程序。

    • 大文件的 Android Beam 文件传输仅适用于 Android 4.1(API 级别 16)及更高版本。
    • 您要传输的文件必须驻留在外部存储中。要详细了解如何使用外部存储,请阅读使用外部存储。
    • 您要传输的每个文件都必须是全世界可读的。您可以通过调用方法 File.setReadable(true,false) 来设置此权限。
    • 您必须为要传输的文件提供文件 URI。 Android Beam 文件传输无法处理 FileProvider.getUriForFile 生成的内容 URI。

    发送文件参考: https://developer.android.com/training/beam-files/send-files.html

    接收文件参考: https://developer.android.com/training/beam-files/receive-files.html

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2020-12-19
      • 2012-06-04
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多