waterkit 0.2.0

Kit utilities and helpers
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android">

    <!-- Permissions for all waterkit crates testing -->
    <uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" />
    <uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION" />
    <uses-permission android:name="android.permission.CAMERA" />
    <uses-permission android:name="android.permission.RECORD_AUDIO" />
    <uses-permission android:name="android.permission.VIBRATE" />
    <uses-permission android:name="android.permission.POST_NOTIFICATIONS" />
    <uses-permission android:name="android.permission.READ_CONTACTS" />
    <uses-permission android:name="android.permission.READ_CALENDAR" />
    <uses-permission android:name="android.permission.HIGH_SAMPLING_RATE_SENSORS" />
    <uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
    
    <application
        android:allowBackup="true"
        android:label="@string/app_name"
        android:supportsRtl="true"
        android:theme="@style/Theme.Material3.DayNight">
        
        <!-- The harness runs its whole test pass from this activity, so it must
             survive a configuration change. The emulator resizes its display
             shortly after boot, and without this the activity is destroyed and
             relaunched mid-run, restarting the pass and never writing a report. -->
        <activity
            android:name=".MainActivity"
            android:exported="true"
            android:configChanges="orientation|screenSize|screenLayout|smallestScreenSize|density|uiMode|keyboardHidden|navigation">
            <intent-filter>
                <action android:name="android.intent.action.MAIN" />
                <category android:name="android.intent.category.LAUNCHER" />
            </intent-filter>
        </activity>
        <activity
            android:name=".ActivityResultEchoActivity"
            android:exported="false" />

        <!-- waterkit-wallet's save flow runs in this library-owned trampoline
             activity. Crate metadata cannot declare activities yet
             (water-rs/waterui#2163), so the harness declares it by hand. -->
        <activity
            android:name="waterkit.wallet.SavePassesActivity"
            android:exported="false"
            android:theme="@android:style/Theme.Translucent.NoTitleBar"
            android:excludeFromRecents="true" />

        <!-- waterkit-clipboard serves copied files through this provider.
             Crate metadata cannot declare manifest components yet
             (water-rs/waterui#1873), so the harness declares it by hand,
             enabled only when the clipboard's helpers are in the DEX. -->
        <provider
            android:name="waterkit.clipboard.ClipboardFileProvider"
            android:authorities="${applicationId}.waterkit.clipboard"
            android:enabled="${waterkitClipboardProvider}"
            android:exported="false"
            android:grantUriPermissions="true" />
    </application>

</manifest>