aboutsummaryrefslogtreecommitdiffstats
path: root/android/app/src/fcm/AndroidManifest.xml
diff options
context:
space:
mode:
Diffstat (limited to 'android/app/src/fcm/AndroidManifest.xml')
-rw-r--r--android/app/src/fcm/AndroidManifest.xml72
1 files changed, 72 insertions, 0 deletions
diff --git a/android/app/src/fcm/AndroidManifest.xml b/android/app/src/fcm/AndroidManifest.xml
new file mode 100644
index 0000000..640056c
--- /dev/null
+++ b/android/app/src/fcm/AndroidManifest.xml
@@ -0,0 +1,72 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!-- The fcm build: the WebView build (src/webview/AndroidManifest.xml — keep
+ the two in step) plus Firebase Cloud Messaging for push on phones with
+ Google Play Services. See Fcm.java. -->
+<manifest xmlns:android="http://schemas.android.com/apk/res/android">
+ <uses-permission android:name="android.permission.INTERNET" />
+ <!-- the wake job asks to run when there's a network; the scheduler won't
+ take that constraint without this -->
+ <uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
+ <uses-permission android:name="android.permission.CAMERA" />
+ <uses-feature android:name="android.hardware.camera" android:required="false" />
+ <application
+ android:name="io.coinos.app.CoinosApp"
+ android:label="@string/app_name"
+ android:icon="@mipmap/ic_launcher"
+ android:theme="@style/AppTheme"
+ android:supportsRtl="true"
+ android:usesCleartextTraffic="false">
+ <!-- the app's half of the association with v3.coinos.io (the site's half
+ is its assetlinks.json): passkeys for the site work in this app only
+ when both name each other -->
+ <meta-data
+ android:name="asset_statements"
+ android:resource="@string/asset_statements" />
+ <activity
+ android:name="io.coinos.app.MainActivity"
+ android:exported="true"
+ android:launchMode="singleTask"
+ android:configChanges="orientation|screenSize|keyboardHidden|uiMode"
+ android:windowSoftInputMode="adjustResize">
+ <intent-filter>
+ <action android:name="android.intent.action.MAIN" />
+ <category android:name="android.intent.category.LAUNCHER" />
+ </intent-filter>
+ <!-- the payment schemes the TWA build claims, claimed here too -->
+ <intent-filter>
+ <action android:name="android.intent.action.VIEW" />
+ <category android:name="android.intent.category.DEFAULT" />
+ <category android:name="android.intent.category.BROWSABLE" />
+ <data android:scheme="lightning" />
+ <data android:scheme="bitcoin" />
+ <data android:scheme="nostr" />
+ <data android:scheme="lnurl" />
+ <data android:scheme="lnurlw" />
+ <data android:scheme="lnurlp" />
+ </intent-filter>
+ <intent-filter>
+ <action android:name="android.nfc.action.NDEF_DISCOVERED" />
+ <category android:name="android.intent.category.DEFAULT" />
+ <data android:scheme="lightning" />
+ <data android:scheme="bitcoin" />
+ <data android:scheme="nostr" />
+ <data android:scheme="lnurl" />
+ <data android:scheme="lnurlw" />
+ <data android:scheme="lnurlp" />
+ </intent-filter>
+ </activity>
+ <!-- pushes through Firebase -->
+ <service
+ android:name="io.coinos.app.FcmService"
+ android:exported="false">
+ <intent-filter>
+ <action android:name="com.google.firebase.MESSAGING_EVENT" />
+ </intent-filter>
+ </service>
+ <!-- the off-screen wallet a push wakes -->
+ <service
+ android:name="io.coinos.app.WakeJob"
+ android:exported="false"
+ android:permission="android.permission.BIND_JOB_SERVICE" />
+ </application>
+</manifest>