From a02b193b90fa7f15c502c77657b48c1c1e4bfaaf Mon Sep 17 00:00:00 2001 From: Mo Tarbin Date: Mon, 13 Jul 2026 00:46:48 -0400 Subject: [PATCH] implement NFC intent normalization in MainActivity for Donetick --- .../src/main/java/com/donetick/app/MainActivity.java | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/android/app/src/main/java/com/donetick/app/MainActivity.java b/android/app/src/main/java/com/donetick/app/MainActivity.java index 283dc35..efe9d80 100644 --- a/android/app/src/main/java/com/donetick/app/MainActivity.java +++ b/android/app/src/main/java/com/donetick/app/MainActivity.java @@ -8,11 +8,23 @@ import ee.forgr.capacitor.social.login.ModifiedMainActivityForSocialLoginPlugin; import com.getcapacitor.PluginHandle; import com.getcapacitor.Plugin; import android.content.Intent; +import android.nfc.NfcAdapter; import android.util.Log; public class MainActivity extends BridgeActivity implements ModifiedMainActivityForSocialLoginPlugin { + // Capacitor only forwards ACTION_VIEW deep links, so normalize Donetick NFC intents before dispatch. + @Override + protected void onNewIntent(Intent intent) { + if (NfcAdapter.ACTION_NDEF_DISCOVERED.equals(intent.getAction()) + && intent.getData() != null + && "donetick".equals(intent.getData().getScheme())) { + intent.setAction(Intent.ACTION_VIEW); + } + super.onNewIntent(intent); + } + @Override public void onActivityResult(int requestCode, int resultCode, Intent data) { super.onActivityResult(requestCode, resultCode, data);