- int slot = intent.getIntExtra("slot", -1);
- byte[] challenge = intent.getByteArrayExtra("challenge");
- if (slot <= 0) return;
- Tag tag = intent.getParcelableExtra(NfcAdapter.EXTRA_TAG);
- if (tag == null) return;
- IsoDep isoTag = IsoDep.get(tag);
- try {
- byte[] response = YkNeo.doChallengeYubiKey(
- isoTag, slot, challenge);
- Intent data = getIntent();
- data.putExtra("response", response);
- setResult(RESULT_OK, data);
- } catch (CRException e) {
- Log.v(TAG, e.getMessage());
- Toast.makeText(this, e.getMessage(),
- Toast.LENGTH_LONG).show();
- }
- finish();
- }
-
-/*
-<receiver android:name=".IsoDepReceiver"
- android:label="IsoDepReceiver">
- <intent-filter>
- <action android:name="android.nfc.action.TECH_DISCOVERED" />
- </intent-filter>
-
- <meta-data android:name="android.nfc.action.TECH_DISCOVERED"
- android:resource="@xml/filter_nfc"
- />
- </receiver>
-
-<resources xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
- <!-- capture anything using IsoDep -->
- <tech-list>
- <tech>android.nfc.tech.IsoDep</tech>
- </tech-list>
- </resources>