Android NFC, сделать нулевую проверку в OnCreate? - PullRequest
1 голос
/ 11 октября 2011

У меня есть код для инициализации моего адаптера NFC, но я не уверен, как инициализировать переменные во время onCreate. Приложение может быть инициализировано независимо от того, находится ли NFC TAG рядом, т.е. если кто-то просто открыл приложение. Поэтому, когда я перехожу к этой строке NfcV nfcMessage = NfcV.get(new TagGet().getTag());, она вылетает, потому что она нулевая, там нет тега, если вы просто загружаете приложение самостоятельно. Как мне проверить здесь на != null Я не уверен, какую часть проверить или как структурировать этот код.

В результате я хочу прочитать содержимое тега, если тег присутствует. В противном случае просто загрузите макет и дождитесь сканирования тега NfcV.

// Setup an intent filter for all MIME based dispatches
    IntentFilter nfcv = new IntentFilter(NfcAdapter.ACTION_TAG_DISCOVERED);
    try {
        nfcv.addDataType("*/*");
    } catch (MalformedMimeTypeException e) {
        throw new RuntimeException("fail", e);
    }
    mFilters = new IntentFilter[] {
            nfcv,
    };

    // Setup a tech list for all NfcF tags
    mTechLists = new String[][] { new String[] { NfcV.class.getName() } };

    //mAdapter.enableForegroundDispatch(this, mPendingIntent, mFilters, mTechLists);

    NfcV nfcMessage = NfcV.get(new TagGet().getTag());

    byte[] data = new byte[2048]; //tag length can't be any larger
    String value = "";
    try {
        data = nfcMessage.transceive(new byte[2048]);
        value = new String(data);
    } catch (IOException e) {
        // TODO Auto-generated catch block
        e.printStackTrace();

1 Ответ

2 голосов
/ 12 октября 2011

Hear - это схема кода основного способа, которым я создал свое первое приложение NFC.Я попытался заменить значения (я использовал nfcA вместо nfcV), чтобы вы могли прочитать его лучше.Это очень базовая структура, и вам необходимо заполнить части собственным кодом, но она должна дать вам хорошее представление о том, как может работать структура приложения NFC.1004 *

...