mirror of
https://github.com/TanelOrumaa/Estonian-ID-card-mobile-authenticator-POC.git
synced 2024-12-22 12:30:16 +02:00
MOB-40 added listening to NFC adapter changes
This commit is contained in:
parent
c33fba1a14
commit
94fad95364
@ -1,12 +1,15 @@
|
|||||||
package com.tarkvaraprojekt.mobileauthapp
|
package com.tarkvaraprojekt.mobileauthapp
|
||||||
|
|
||||||
import android.content.BroadcastReceiver
|
import android.content.BroadcastReceiver
|
||||||
|
import android.content.Context
|
||||||
import android.content.Intent
|
import android.content.Intent
|
||||||
import android.content.IntentFilter
|
import android.content.IntentFilter
|
||||||
|
import android.net.ConnectivityManager
|
||||||
import android.nfc.NfcAdapter
|
import android.nfc.NfcAdapter
|
||||||
import android.nfc.TagLostException
|
import android.nfc.TagLostException
|
||||||
import android.nfc.tech.IsoDep
|
import android.nfc.tech.IsoDep
|
||||||
import android.os.Bundle
|
import android.os.Bundle
|
||||||
|
import android.util.Log
|
||||||
import android.view.LayoutInflater
|
import android.view.LayoutInflater
|
||||||
import android.view.View
|
import android.view.View
|
||||||
import android.view.ViewGroup
|
import android.view.ViewGroup
|
||||||
@ -41,6 +44,8 @@ class HomeFragment : Fragment() {
|
|||||||
// Is the app used for authentication
|
// Is the app used for authentication
|
||||||
private var auth: Boolean = false
|
private var auth: Boolean = false
|
||||||
|
|
||||||
|
private var receiver: BroadcastReceiver? = null
|
||||||
|
|
||||||
override fun onCreateView(
|
override fun onCreateView(
|
||||||
inflater: LayoutInflater,
|
inflater: LayoutInflater,
|
||||||
container: ViewGroup?,
|
container: ViewGroup?,
|
||||||
@ -63,6 +68,13 @@ class HomeFragment : Fragment() {
|
|||||||
if (auth || mobile) {
|
if (auth || mobile) {
|
||||||
startAuthentication(mobile)
|
startAuthentication(mobile)
|
||||||
} else {
|
} else {
|
||||||
|
receiver = object : BroadcastReceiver() {
|
||||||
|
override fun onReceive(p0: Context?, p1: Intent?) {
|
||||||
|
updateAction(canSaved)
|
||||||
|
}
|
||||||
|
}
|
||||||
|
val filter = IntentFilter(NfcAdapter.ACTION_ADAPTER_STATE_CHANGED)
|
||||||
|
requireActivity().registerReceiver(receiver, filter)
|
||||||
updateAction(canSaved)
|
updateAction(canSaved)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -189,7 +201,7 @@ class HomeFragment : Fragment() {
|
|||||||
*/
|
*/
|
||||||
private fun enableReaderMode() {
|
private fun enableReaderMode() {
|
||||||
val adapter = NfcAdapter.getDefaultAdapter(activity)
|
val adapter = NfcAdapter.getDefaultAdapter(activity)
|
||||||
if (adapter == null) {
|
if (adapter == null || !adapter.isEnabled) {
|
||||||
binding!!.detectionActionText.text = getString(R.string.nfc_not_available)
|
binding!!.detectionActionText.text = getString(R.string.nfc_not_available)
|
||||||
} else {
|
} else {
|
||||||
adapter.enableReaderMode(activity, { tag ->
|
adapter.enableReaderMode(activity, { tag ->
|
||||||
@ -235,6 +247,7 @@ class HomeFragment : Fragment() {
|
|||||||
|
|
||||||
override fun onDestroyView() {
|
override fun onDestroyView() {
|
||||||
super.onDestroyView()
|
super.onDestroyView()
|
||||||
|
requireActivity().unregisterReceiver(receiver)
|
||||||
binding = null
|
binding = null
|
||||||
}
|
}
|
||||||
}
|
}
|
Loading…
Reference in New Issue
Block a user