M app/src/main/java/com/github/nacabaro/vbhelper/screens/scanScreen/ScanScreen.kt => app/src/main/java/com/github/nacabaro/vbhelper/screens/scanScreen/ScanScreen.kt +3 -3
@@ 67,7 67,7 @@ fun ScanScreen(
}
}
- DisposableEffect(readingScreen || writingScreen) {
+ DisposableEffect(readingScreen || writingScreen, isDoneSendingCard) {
if(readingScreen) {
scanScreenController.registerActivityLifecycleListener(SCAN_SCREEN_ACTIVITY_LIFECYCLE_LISTENER, object: ActivityLifecycleListener {
override fun onPause() {
@@ 139,12 139,12 @@ fun ScanScreen(
} else if (writingScreen) {
if (!isDoneSendingCard) {
ReadingCharacterScreen("Sending card") {
- isDoneSendingCard = true
+ writingScreen = false
scanScreenController.cancelRead()
}
} else if (!isDoneWritingCharacter) {
ReadingCharacterScreen("Writing character") {
- isDoneWritingCharacter = true
+ isDoneSendingCard = false
writingScreen = false
scanScreenController.cancelRead()
}
M app/src/main/java/com/github/nacabaro/vbhelper/screens/scanScreen/ScanScreenControllerImpl.kt => app/src/main/java/com/github/nacabaro/vbhelper/screens/scanScreen/ScanScreenControllerImpl.kt +9 -3
@@ 6,6 6,7 @@ import android.nfc.Tag
import android.nfc.tech.NfcA
import android.os.Bundle
import android.provider.Settings
+import android.util.Log
import android.widget.Toast
import androidx.activity.ComponentActivity
import androidx.lifecycle.lifecycleScope
@@ 115,9 116,14 @@ class ScanScreenControllerImpl(
onComplete: () -> Unit
) {
handleTag(secrets) { tagCommunicator ->
- tagCommunicator.sendCharacter(nfcCharacter)
- onComplete.invoke()
- "Sent character successfully!"
+ try {
+ tagCommunicator.sendCharacter(nfcCharacter)
+ onComplete.invoke()
+ "Sent character successfully!"
+ } catch (e: Throwable) {
+ Log.e("TAG", e.stackTraceToString())
+ "Whoops"
+ }
}
}