如何在Android中的NFC智能海报标签中写入数据

时间:2012-02-15 08:46:53

标签: android tags

我被要求在智能海报标签中写下以下数据。

1)折扣优惠的网址 2)计数值(如前200个条目的报价)

如何以编程方式在智能海报中写下这些信息?

是否可以将其写为键/值对?

任何指向示例代码的指针都可以帮助我很多?

提前致谢。

1 个答案:

答案 0 :(得分:1)

我认为要求1)和2)是两个不同的层次。 所需物品。 1)在Android / NFC编程级别,使用TNF_WELL_KNOWN和RTD-SMART_POSTER(因为这是一个URL,使用RTD_URI工作正确)。

这里有一些代码:

    private NdefRecord createRecord(String text)
        throws UnsupportedEncodingException {

    //Intent intent = getIntent();
    //EditText editTextWeb = (EditText)
    EditText editText = (EditText) findViewById(R.id.editTextWeblinks);
    String webLink = editText.getText().toString();
    byte[] uriField = webLink.getBytes(Charset.forName("US-ASCII"));
    byte[] payload = new byte[uriField.length + 1];              //1 =URIPrefix
    payload[0] = 0x01;                                      //http://www. to the URI
    System.arraycopy(uriField, 0, payload, 1, uriField.length);  //appends URI to payload
    NdefRecord rtdUriRecord = new NdefRecord(
        NdefRecord.TNF_WELL_KNOWN, NdefRecord.RTD_URI, new byte[0], payload);

    return rtdUriRecord;
}

请求。 2我们有一个棘手的部分。 使用Android / NFC API,您可以识别您编写的每个标签但不能在NF标签中添加一种计数器程序逻辑,此功能必须在外部应用程序上执行(在Android,PC,Mac,自定义上命名)设备等。)。

实现这一目标的方式:构建定制的NFC终端,用于销售和提供业务。 Simpe的方法:在收银台计算机上构建一个简单的应用程序来扫描条形码(下载的图像)并写一个与该事件相关的计数器。

希望它有所帮助。