| <?xml version="1.0" encoding="utf-8"?> |
| <!-- |
| SPDX-FileCopyrightText: 2024 The LineageOS Project |
| SPDX-License-Identifier: Apache-2.0 |
| --> |
| <manifest xmlns:android="http://schemas.android.com/apk/res/android" |
| xmlns:tools="http://schemas.android.com/tools" |
| package="org.lineageos.twelve"> |
| |
| <uses-permission android:name="android.permission.FOREGROUND_SERVICE" /> |
| <uses-permission android:name="android.permission.FOREGROUND_SERVICE_MEDIA_PLAYBACK" /> |
| <uses-permission android:name="android.permission.INTERNET" /> |
| <uses-permission |
| android:name="android.permission.MANAGE_MEDIA" |
| tools:ignore="ProtectedPermissions" /> |
| <uses-permission |
| android:name="android.permission.READ_EXTERNAL_STORAGE" |
| android:maxSdkVersion="32" /> |
| <uses-permission android:name="android.permission.READ_MEDIA_AUDIO" /> |
| <uses-permission android:name="android.permission.RECORD_AUDIO" /> |
| |
| <application |
| android:name=".TwelveApplication" |
| android:appCategory="audio" |
| android:enableOnBackInvokedCallback="true" |
| android:icon="@mipmap/ic_launcher" |
| android:label="@string/app_name" |
| android:networkSecurityConfig="@xml/network_security_config" |
| android:supportsRtl="true" |
| android:theme="@style/Theme.Twelve" |
| tools:targetApi="tiramisu"> |
| |
| <activity |
| android:name=".MainActivity" |
| android:exported="true"> |
| |
| <intent-filter> |
| <action android:name="android.intent.action.MAIN" /> |
| |
| <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> |
| <action android:name="android.intent.action.VIEW" /> |
| <action android:name="android.provider.action.REVIEW" /> |
| |
| <category android:name="android.intent.category.DEFAULT" /> |
| <category android:name="android.intent.category.BROWSABLE" /> |
| |
| <data android:mimeType="vnd.android.cursor.item/album" /> |
| <data android:mimeType="vnd.android.cursor.item/artist" /> |
| <!-- Deprecated, we cannot handle those as we use our internal database --> |
| <!--<data android:mimeType="vnd.android.cursor.item/playlist" />--> |
| |
| <data android:scheme="content" /> |
| </intent-filter> |
| |
| </activity> |
| |
| <activity |
| android:name=".SettingsActivity" |
| android:configChanges="orientation|screenLayout|screenSize|smallestScreenSize|keyboardHidden" |
| android:exported="false" |
| android:label="@string/title_activity_settings" |
| android:theme="@style/Theme.SettingsLib" /> |
| |
| <activity |
| android:name=".ViewActivity" |
| android:excludeFromRecents="true" |
| android:exported="true" |
| android:theme="@style/Theme.Twelve.Dialog"> |
| |
| <intent-filter> |
| <action android:name="android.intent.action.VIEW" /> |
| <action android:name="android.provider.action.REVIEW" /> |
| <action android:name="android.provider.action.REVIEW_SECURE" /> |
| |
| <category android:name="android.intent.category.DEFAULT" /> |
| <category android:name="android.intent.category.BROWSABLE" /> |
| |
| <data android:mimeType="application/itunes" /> |
| <data android:mimeType="application/ogg" /> |
| <data android:mimeType="application/vnd.apple.mpegurl" /> |
| <data android:mimeType="application/vnd.ms-sstr+xml" /> |
| <data android:mimeType="application/x-mpegurl" /> |
| <data android:mimeType="application/x-ogg" /> |
| <data android:mimeType="audio/*" /> |
| <data android:mimeType="vnd.android.cursor.item/audio" /> |
| |
| <data android:scheme="content" /> |
| <data android:scheme="file" /> |
| <data android:scheme="http" /> |
| <data android:scheme="https" /> |
| <data android:scheme="rtsp" /> |
| </intent-filter> |
| |
| </activity> |
| |
| <service |
| android:name=".services.PlaybackService" |
| android:exported="true" |
| android:foregroundServiceType="mediaPlayback" |
| android:label="@string/app_name"> |
| |
| <intent-filter> |
| <action android:name="androidx.media3.session.MediaLibraryService" /> |
| <action android:name="android.media.browse.MediaBrowserService" /> |
| </intent-filter> |
| |
| </service> |
| |
| <receiver |
| android:name=".services.PlaybackServiceActionsReceiver" |
| android:exported="false" /> |
| |
| <receiver |
| android:name="androidx.media3.session.MediaButtonReceiver" |
| android:exported="true"> |
| <intent-filter> |
| <action android:name="android.intent.action.MEDIA_BUTTON" /> |
| </intent-filter> |
| </receiver> |
| |
| <receiver |
| android:name=".ui.widgets.NowPlayingAppWidgetProvider" |
| android:exported="false"> |
| |
| <intent-filter> |
| <action android:name="android.appwidget.action.APPWIDGET_UPDATE" /> |
| </intent-filter> |
| |
| <meta-data |
| android:name="android.appwidget.provider" |
| android:resource="@xml/app_widget_now_playing" /> |
| |
| </receiver> |
| |
| <meta-data |
| android:name="com.google.android.gms.car.application" |
| android:resource="@xml/automotive_app_desc" /> |
| |
| </application> |
| |
| </manifest> |