2.5 KiB · text History a7ca785
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android">

    <uses-permission android:name="android.permission.INTERNET"/>
    <uses-permission android:name="android.permission.CAMERA"/>
    <uses-feature android:name="android.hardware.camera" android:required="false"/>

    <application
        android:label="@string/app_name"
        android:icon="@mipmap/ic_launcher"
        android:roundIcon="@mipmap/ic_launcher"
        android:allowBackup="false"
        android:dataExtractionRules="@xml/data_extraction_rules"
        android:supportsRtl="true"
        android:theme="@style/Theme.Waxx"
        android:usesCleartextTraffic="true">

        <activity
            android:name=".MainActivity"
            android:exported="true"
            android:launchMode="singleTask"
            android:theme="@style/Theme.Waxx">
            <intent-filter>
                <action android:name="android.intent.action.MAIN"/>
                <category android:name="android.intent.category.LAUNCHER"/>
            </intent-filter>

            <!--
                waxx://pair?base=<server>&token=<api-token> — tapped from a
                note/chat or scanned from the web settings page. Resolves to
                PairScreen via the runtime intent dispatch in MainActivity.
            -->
            <intent-filter android:autoVerify="false">
                <action android:name="android.intent.action.VIEW"/>
                <category android:name="android.intent.category.DEFAULT"/>
                <category android:name="android.intent.category.BROWSABLE"/>
                <data android:scheme="waxx" android:host="pair"/>
            </intent-filter>

            <!--
                https://<host>/m/<token> — magic-link App Link. autoVerify=true
                requires the corresponding .well-known/assetlinks.json on the
                server to declare this app's SHA-256 cert fingerprint.
                Override appLinksHost in app/build.gradle.kts when the prod
                domain is finalized.
            -->
            <intent-filter android:autoVerify="true">
                <action android:name="android.intent.action.VIEW"/>
                <category android:name="android.intent.category.DEFAULT"/>
                <category android:name="android.intent.category.BROWSABLE"/>
                <data android:scheme="https"
                      android:host="${appLinksHost}"
                      android:pathPrefix="/m/"/>
            </intent-filter>
        </activity>
    </application>
</manifest>