Auxio/app/src/main/AndroidManifest.xml
Alexander Capehart a2f27f303b
ui: add predictive back gesture
Rework the back pressed callbacks to support a predictive back gesture.

This completes the trivial Android 13 reworks.
2022-08-27 16:16:18 -06:00

120 lines
No EOL
4.7 KiB
XML

<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools">
<!-- Android 13 uses READ_MEDIA_AUDIO instead of READ_EXTERNAL_STORAGE -->
<uses-permission android:name="android.permission.READ_MEDIA_AUDIO" />
<uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE" android:maxSdkVersion="32" />
<uses-permission android:name="android.permission.FOREGROUND_SERVICE" />
<uses-permission android:name="android.permission.WAKE_LOCK" />
<!-- Work around ExoPlayer requiring network permissions we do not use -->
<uses-permission
android:name="android.permission.ACCESS_NETWORK_STATE"
tools:node="remove" />
<queries />
<application
android:name=".AuxioApp"
android:allowBackup="true"
android:fullBackupContent="@xml/backup_descriptor"
android:icon="@mipmap/ic_launcher"
android:label="@string/info_app_name"
android:roundIcon="@mipmap/ic_launcher"
android:supportsRtl="true"
android:theme="@style/Theme.Auxio.App"
android:dataExtractionRules="@xml/data_extraction_rules"
android:appCategory="audio"
android:enableOnBackInvokedCallback="true"
tools:ignore="UnusedAttribute">
<activity
android:name=".MainActivity"
android:exported="true"
android:icon="@mipmap/ic_launcher"
android:launchMode="singleTask"
android:roundIcon="@mipmap/ic_launcher"
android:windowSoftInputMode="adjustPan">
<intent-filter>
<!-- Expose that we are a music player. -->
<action android:name="android.intent.action.MAIN" />
<action android:name="android.intent.action.MUSIC_PLAYER" />
<category android:name="android.intent.category.DEFAULT" />
<category android:name="android.intent.category.LAUNCHER" />
<category android:name="android.intent.category.APP_MUSIC" />
</intent-filter>
<intent-filter>
<!--
Signal that we can take audio of *any* format, file or content. This is important,
as some apps use this to determine if Auxio is eligible to be a default music
player.
-->
<action android:name="android.intent.action.VIEW" />
<category android:name="android.intent.category.DEFAULT" />
<category android:name="android.intent.category.BROWSABLE" />
<data android:scheme="content" />
<data android:scheme="file" />
<!-- Normal audio mime types + weird mime types -->
<data android:mimeType="audio/*" />
<data android:mimeType="application/ogg" />
<data android:mimeType="application/x-ogg" />
<data android:mimeType="application/itunes" />
</intent-filter>
</activity>
<!--
IndexerService handles querying the media database,
extracting metadata, and constructing the music library.
-->
<service
android:name=".music.system.IndexerService"
android:foregroundServiceType="dataSync"
android:icon="@mipmap/ic_launcher"
android:exported="false"
android:roundIcon="@mipmap/ic_launcher" />
<!--
PlaybackService handles music playback, system components, and state saving.
-->
<service
android:name=".playback.system.PlaybackService"
android:foregroundServiceType="mediaPlayback"
android:icon="@mipmap/ic_launcher"
android:exported="false"
android:roundIcon="@mipmap/ic_launcher" />
<!--
Work around apps that blindly query for ACTION_MEDIA_BUTTON working.
See the class for more info.
-->
<receiver
android:name=".playback.system.MediaButtonReceiver"
android:exported="true">
<intent-filter>
<action android:name="android.intent.action.MEDIA_BUTTON" />
</intent-filter>
</receiver>
<!-- Auxio's one and only AppWidget. -->
<receiver
android:name=".widgets.WidgetProvider"
android:exported="false"
android:label="@string/lbl_playback">
<intent-filter>
<action android:name="android.appwidget.action.APPWIDGET_UPDATE" />
</intent-filter>
<meta-data
android:name="android.appwidget.provider"
android:resource="@xml/widget_info" />
</receiver>
</application>
</manifest>