我正在实现两个不同的应用程序。1) 一个人将在 nfc 标签上写入内容并读取 2) 仅在标签上读取内容。
但是在编写标签时,我们必须提到我的第二个应用程序无法读取标签的包。有没有办法以我的两个应用程序都可以读取的方式编写标签。任何帮助或代码片段都会有很大帮助。
谢谢。
我现在这是前一阵子写的,我希望你现在已经想出了答案,但如果你还没有,这里是答案:
创建 2 个单独的 NdefRecords,上面有 2 个应用程序。如果您想将其用作意图过滤器(即 application/vnd.company.app),请将 MimeType 保留为您的原始写作应用程序名称。
所以你要做的是:
NdefRecord app1 = NdefRecord.createApplicationRecord(com.company.writer);
NdefRecord app2 = NdefRecord.createApplicationRecord(com.company.reader);
byte[] payload = xyz.getBytes();
byte[] mimeBytes = "com.company.writer".getBytes();
NdefRecord record = new NdefRecord(NdefRecord.TNF_MIME_MEDIA, mimeBytes, new byte[0], payload);
NdefMessage message = new NdefMessage(new NdefRecord[]{ record, app1, app2});