<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
    package="app.grapheneos.logviewer">

    <uses-permission android:name="android.permission.READ_LOGS" />
    <uses-permission android:name="android.permission.READ_LOGS_FULL" />
    <!-- needed for checking whether the bootloader is unlocked-->
    <uses-permission android:name="android.permission.READ_OEM_UNLOCK_STATE" />
    <uses-permission android:name="android.permission.QUERY_ALL_PACKAGES" />
    <uses-permission android:name="android.permission.QUERY_USERS" />

    <permission android:name="app.grapheneos.logviewer.SHOW_LOGCAT"
        android:protectionLevel="signature|privileged" />

    <permission android:name="app.grapheneos.logviewer.SHOW_ERROR_REPORT"
        android:protectionLevel="signature|preinstalled" />

    <application
        android:label="@string/app_label"
        android:theme="@style/Theme"
        android:largeHeap="true"
    >
        <activity
            android:name=".LogcatActivity"
            android:permission="app.grapheneos.logviewer.SHOW_LOGCAT"
            android:documentLaunchMode="always"
            android:exported="true" >

            <intent-filter>
                <action android:name="${applicationId}.LOGCAT" />
                <action android:name="${applicationId}.PKG_LOGCAT" />
                <category android:name="android.intent.category.DEFAULT" />
            </intent-filter>

        </activity>

        <activity
            android:name=".ErrorReportActivity"
            android:permission="app.grapheneos.logviewer.SHOW_ERROR_REPORT"
            android:documentLaunchMode="always"
            android:exported="true" >

            <intent-filter>
                <action android:name="${applicationId}.ERROR_REPORT" />
                <action android:name="android.intent.action.APP_ERROR" />
                <category android:name="android.intent.category.DEFAULT" />
            </intent-filter>
        </activity>

        <provider
            android:name=".BlobProvider"
            android:authorities="${applicationId}.BlobProvider"
            android:grantUriPermissions="true"
            android:exported="false" />

    </application>
</manifest>
