← Fejlesztői dokumentáció
NFC
Minden plüssben NDEF formátumú NFC címke van, ami egy URL-t tartalmaz. Ez az URL a plüss digitális profiljára mutat.
Android NFC Documentation
1. Engedélyek – AndroidManifest.xml
<uses-permission android:name="android.permission.NFC" />
<!-- Ha az appodhoz kötelező az NFC -->
<uses-feature android:name="android.hardware.nfc"
android:required="true" /> 2. NFC olvasó inicializálása (Kotlin)
val nfcAdapter = NfcAdapter.getDefaultAdapter(this)
if (nfcAdapter == null || !nfcAdapter.isEnabled) {
// Az eszköz nem támogatja az NFC-t, vagy ki van kapcsolva
} 3. Foreground dispatch beállítása
override fun onResume() {
super.onResume()
val intent = Intent(this, javaClass).addFlags(Intent.FLAG_ACTIVITY_SINGLE_TOP)
val pendingIntent = PendingIntent.getActivity(
this, 0, intent, PendingIntent.FLAG_MUTABLE
)
nfcAdapter.enableForegroundDispatch(this, pendingIntent, null, null)
}
override fun onPause() {
super.onPause()
nfcAdapter.disableForegroundDispatch(this)
} 4. Tag beolvasása
override fun onNewIntent(intent: Intent) {
super.onNewIntent(intent)
if (intent.action == NfcAdapter.ACTION_NDEF_DISCOVERED ||
intent.action == NfcAdapter.ACTION_TAG_DISCOVERED) {
val rawMessages = intent.getParcelableArrayExtra(NfcAdapter.EXTRA_NDEF_MESSAGES)
val messages = rawMessages?.map { it as NdefMessage }
messages?.forEach { message ->
message.records.forEach { record ->
val payload = String(record.payload, Charsets.UTF_8)
// A payload tartalmazza a tag adatát
}
}
}
}