<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:tools="http://schemas.android.com/tools" xmlns:android="http://schemas.android.com/apk/res/android">
    <uses-permission android:name="android.permission.INTERNET" />
    <uses-permission android:name="android.permission.POST_NOTIFICATIONS" />
    <uses-permission android:name="android.permission.RECORD_AUDIO" />
    <uses-permission android:name="android.permission.SCHEDULE_EXACT_ALARM" />
    <uses-permission android:name="com.android.alarm.permission.SET_ALARM" />
    <uses-permission android:name="android.permission.RECEIVE_BOOT_COMPLETED" />
    <uses-permission android:name="android.permission.BLUETOOTH" />
    <uses-permission android:name="android.permission.BLUETOOTH_CONNECT" />
    <uses-permission android:name="android.permission.BLUETOOTH_SCAN" android:usesPermissionFlags="neverForLocation" tools:targetApi="s"/>
    <uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION" android:usesPermissionFlags="neverForLocation"
                     tools:targetApi="s"/>
    <uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" android:usesPermissionFlags="neverForLocation"
                     tools:targetApi="s"/>
    <uses-permission android:name="android.permission.FOREGROUND_SERVICE" />
    <uses-permission android:name="android.permission.FOREGROUND_SERVICE_CONNECTED_DEVICE" />
    <!-- TODO: Remove this when we use CompanionDeviceManager -->
    <uses-permission android:name="android.permission.REQUEST_IGNORE_BATTERY_OPTIMIZATIONS" />
    <!-- TODO: Remove this permission for non-QA flavors -->
    <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"
        android:maxSdkVersion="28" />
    <!-- TODO: Remove this permission for non-QA flavors -->
    <uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE"
        android:maxSdkVersion="28" />
    <uses-permission android:name="android.permission.READ_CONTACTS" />
    <uses-permission
        android:name="android.permission.MANAGE_ONGOING_CALLS"
        tools:ignore="ProtectedPermissions" /> <!-- This is a system permission, but we are an exception when paired -->
    <uses-permission android:name="com.beeper.android.permission.READ_PERMISSION" />
    <uses-permission android:name="com.beeper.android.permission.SEND_PERMISSION" />
    <uses-feature android:name="android.hardware.bluetooth" android:required="true"/>
    <uses-feature android:name="android.hardware.bluetooth_le" android:required="true"/>
    <uses-feature android:name="android.software.companion_device_setup" android:required="false" />
    <queries>
        <intent>
            <action android:name="android.intent.action.SET_ALARM"/>
        </intent>
        <intent>
            <action android:name="android.intent.action.SET_TIMER"/>
        </intent>
        <package android:name="com.beeper.android"/>
    </queries>
    <application>
        <receiver android:name=".glance.VoiceWidgetReceiver"
                  android:exported="true"
                  android:enabled="false">
            <intent-filter>
                <action android:name="android.appwidget.action.APPWIDGET_UPDATE" />
            </intent-filter>
            <meta-data
                android:name="android.appwidget.provider"
                android:resource="@xml/voice_widget_info" />
        </receiver>
        <receiver android:name="coredevices.ring.reminders.ReminderReceiver"
                    android:exported="true">
        </receiver>
        <receiver android:name="coredevices.ring.reminders.ReminderBootReceiver"
                    android:exported="true">
            <intent-filter>
                <action android:name="android.intent.action.BOOT_COMPLETED" />
                <action android:name="android.intent.action.LOCKED_BOOT_COMPLETED" />
                <action android:name="android.intent.action.QUICKBOOT_POWERON" />
            </intent-filter>
        </receiver>
        <service android:name="coredevices.ring.service.InferenceForegroundService"
            android:foregroundServiceType="shortService"
            android:exported="false"/>
        <activity android:name="coredevices.ring.service.InferenceActivity"
            android:theme="@android:style/Theme.Translucent.NoTitleBar"
            android:excludeFromRecents="true"
            android:taskAffinity=""
            android:exported="false"/>
    </application>

</manifest>