295 lines
15 KiB
XML
295 lines
15 KiB
XML
<?xml version="1.0" encoding="utf-8"?>
|
|
<!--
|
|
Copyright (C) 2017 The Android Open Source Project
|
|
|
|
Licensed under the Apache License, Version 2.0 (the "License");
|
|
you may not use this file except in compliance with the License.
|
|
You may obtain a copy of the License at
|
|
|
|
http://www.apache.org/licenses/LICENSE-2.0
|
|
|
|
Unless required by applicable law or agreed to in writing, software
|
|
distributed under the License is distributed on an "AS IS" BASIS,
|
|
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
See the License for the specific language governing permissions and
|
|
limitations under the License.
|
|
-->
|
|
|
|
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
|
|
package="com.android.music"
|
|
xmlns:tools="http://schemas.android.com/tools">
|
|
|
|
<!-- Package Name -->
|
|
<original-package android:name="com.android.music"/>
|
|
|
|
<!-- SDK Versions -->
|
|
<uses-sdk android:minSdkVersion="19"
|
|
android:targetSdkVersion="30"/>
|
|
|
|
<!-- Permissions -->
|
|
<uses-permission android:name="android.permission.WRITE_SETTINGS" />
|
|
<uses-permission android:name="android.permission.SYSTEM_ALERT_WINDOW" />
|
|
<uses-permission android:name="android.permission.WAKE_LOCK" />
|
|
<uses-permission android:name="android.permission.INTERNET" />
|
|
<uses-permission android:name="android.permission.READ_PHONE_STATE" />
|
|
<uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE" />
|
|
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
|
|
<uses-permission android:name="android.permission.BROADCAST_STICKY" />
|
|
<uses-permission android:name="android.permission.FOREGROUND_SERVICE" />
|
|
<uses-permission android:name="android.permission.MANAGE_EXTERNAL_STORAGE" />
|
|
|
|
<!-- App Declaration -->
|
|
<application android:icon="@drawable/app_music"
|
|
android:label="@string/musicbrowserlabel"
|
|
android:taskAffinity="android.task.music"
|
|
android:allowTaskReparenting="true"
|
|
android:usesCleartextTraffic="true">
|
|
|
|
<meta-data
|
|
android:name="android.app.default_searchable"
|
|
android:value="com.android.music.QueryBrowserActivity"/>
|
|
|
|
<!-- The main activity -->
|
|
<activity android:name="com.android.music.MusicBrowserActivity"
|
|
android:theme="@android:style/Theme.NoTitleBar"
|
|
android:exported="true">
|
|
<intent-filter>
|
|
<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>
|
|
</activity>
|
|
|
|
<receiver android:name="com.android.music.MediaButtonIntentReceiver">
|
|
<intent-filter>
|
|
<action android:name="android.intent.action.MEDIA_BUTTON" />
|
|
<action android:name="android.media.AUDIO_BECOMING_NOISY" />
|
|
</intent-filter>
|
|
</receiver>
|
|
|
|
<!-- This is the "current music playing" panel, which has special
|
|
launch behavior. We clear its task affinity, so it will not
|
|
be associated with the main media task and if launched
|
|
from a notification will not bring the rest of the media app
|
|
to the foreground. We make it singleTask so that when others
|
|
launch it (such as media) we will launch in to our own task.
|
|
We set clearTaskOnLaunch because the user
|
|
can go to a playlist from this activity, so if they later return
|
|
to it we want it back in its initial state. We exclude from
|
|
recents since this is accessible through a notification when
|
|
appropriate. -->
|
|
<activity android:name="com.android.music.MediaPlaybackActivity"
|
|
android:theme="@android:style/Theme.NoTitleBar"
|
|
android:label="@string/mediaplaybacklabel"
|
|
android:taskAffinity=""
|
|
android:launchMode="singleTask"
|
|
android:clearTaskOnLaunch="true"
|
|
android:excludeFromRecents="true"
|
|
android:exported="true" >
|
|
<intent-filter>
|
|
<action android:name="android.intent.action.VIEW" />
|
|
<category android:name="android.intent.category.DEFAULT" />
|
|
<data android:scheme="content"/>
|
|
<data android:host="media"/>
|
|
<data android:mimeType="audio/*"/>
|
|
<data android:mimeType="application/ogg"/>
|
|
<data android:mimeType="application/x-ogg"/>
|
|
<data android:mimeType="application/itunes"/>
|
|
</intent-filter>
|
|
<intent-filter>
|
|
<action android:name="com.android.music.PLAYBACK_VIEWER" />
|
|
<category android:name="android.intent.category.DEFAULT" />
|
|
</intent-filter>
|
|
</activity>
|
|
|
|
<activity android:name="AudioPreview" android:theme="@android:style/Theme.Dialog"
|
|
android:taskAffinity=""
|
|
android:excludeFromRecents="true" android:exported="true" >
|
|
<intent-filter>
|
|
<action android:name="android.intent.action.VIEW" />
|
|
<category android:name="android.intent.category.DEFAULT" />
|
|
<data android:scheme="file"/>
|
|
<data android:mimeType="audio/*"/>
|
|
<data android:mimeType="application/ogg"/>
|
|
<data android:mimeType="application/x-ogg"/>
|
|
<data android:mimeType="application/itunes"/>
|
|
</intent-filter>
|
|
<intent-filter>
|
|
<action android:name="android.intent.action.VIEW" />
|
|
<category android:name="android.intent.category.DEFAULT" />
|
|
<category android:name="android.intent.category.BROWSABLE" />
|
|
<data android:scheme="http" />
|
|
<data android:mimeType="audio/*"/>
|
|
<data android:mimeType="application/ogg"/>
|
|
<data android:mimeType="application/x-ogg"/>
|
|
<data android:mimeType="application/itunes"/>
|
|
</intent-filter>
|
|
<intent-filter
|
|
android:priority="-1">
|
|
<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:mimeType="audio/*"/>
|
|
<data android:mimeType="application/ogg"/>
|
|
<data android:mimeType="application/x-ogg"/>
|
|
<data android:mimeType="application/itunes"/>
|
|
</intent-filter>
|
|
</activity>
|
|
|
|
<activity android:name="com.android.music.ArtistAlbumBrowserActivity" android:exported="false" >
|
|
<intent-filter>
|
|
<action android:name="android.intent.action.PICK" />
|
|
<category android:name="android.intent.category.DEFAULT" />
|
|
<data android:mimeType="vnd.android.cursor.dir/artistalbum"/>
|
|
</intent-filter>
|
|
</activity>
|
|
<activity android:name="com.android.music.AlbumBrowserActivity" android:exported="false" >
|
|
<intent-filter>
|
|
<action android:name="android.intent.action.PICK" />
|
|
<category android:name="android.intent.category.DEFAULT" />
|
|
<data android:mimeType="vnd.android.cursor.dir/album"/>
|
|
</intent-filter>
|
|
</activity>
|
|
<activity android:name="com.android.music.NowPlayingActivity" android:exported="false" >
|
|
<intent-filter>
|
|
<action android:name="android.intent.action.PICK" />
|
|
<category android:name="android.intent.category.DEFAULT" />
|
|
<data android:mimeType="vnd.android.cursor.dir/nowplaying"/>
|
|
</intent-filter>
|
|
</activity>
|
|
<activity android:name="com.android.music.TrackBrowserActivity" android:exported="false" >
|
|
<intent-filter>
|
|
<action android:name="android.intent.action.EDIT" />
|
|
<action android:name="android.intent.action.PICK" />
|
|
<category android:name="android.intent.category.DEFAULT" />
|
|
<data android:mimeType="vnd.android.cursor.dir/track"/>
|
|
</intent-filter>
|
|
</activity>
|
|
<activity android:name="com.android.music.QueryBrowserActivity"
|
|
android:theme="@android:style/Theme.NoTitleBar"
|
|
android:exported="true" >
|
|
<intent-filter>
|
|
<action android:name="android.intent.action.SEARCH" />
|
|
<action android:name="android.intent.action.MEDIA_SEARCH" />
|
|
<category android:name="android.intent.category.DEFAULT" />
|
|
</intent-filter>
|
|
<meta-data
|
|
android:name="android.app.searchable"
|
|
android:resource="@xml/searchable"
|
|
/>
|
|
</activity>
|
|
<activity android:name="com.android.music.PlaylistBrowserActivity"
|
|
android:label="@string/musicbrowserlabel"
|
|
android:exported="true" >
|
|
<intent-filter>
|
|
<action android:name="android.intent.action.PICK" />
|
|
<category android:name="android.intent.category.DEFAULT" />
|
|
<data android:mimeType="vnd.android.cursor.dir/playlist"/>
|
|
</intent-filter>
|
|
<intent-filter>
|
|
<action android:name="android.intent.action.VIEW" />
|
|
<category android:name="android.intent.category.DEFAULT" />
|
|
<data android:mimeType="vnd.android.cursor.dir/playlist"/>
|
|
</intent-filter>
|
|
</activity>
|
|
<activity-alias android:name="com.android.music.PlaylistShortcutActivity"
|
|
android:targetActivity="com.android.music.PlaylistBrowserActivity"
|
|
android:label="@string/musicshortcutlabel"
|
|
android:icon="@drawable/ic_launcher_shortcut_music_playlist"
|
|
android:exported="true" >
|
|
|
|
<intent-filter>
|
|
<action android:name="android.intent.action.CREATE_SHORTCUT" />
|
|
<category android:name="android.intent.category.DEFAULT" />
|
|
</intent-filter>
|
|
|
|
</activity-alias>
|
|
<activity android:name="com.android.music.VideoBrowserActivity"
|
|
android:taskAffinity="android.task.video"
|
|
android:label="@string/videobrowserlabel"
|
|
android:icon="@drawable/app_video"
|
|
android:exported="false" >
|
|
<intent-filter>
|
|
<action android:name="android.intent.action.PICK" />
|
|
<category android:name="android.intent.category.DEFAULT" />
|
|
<data android:mimeType="vnd.android.cursor.dir/video"/>
|
|
</intent-filter>
|
|
<!--
|
|
<intent-filter>
|
|
<action android:name="android.intent.action.MAIN" />
|
|
<category android:name="android.intent.category.DEFAULT" />
|
|
<category android:name="android.intent.category.LAUNCHER" />
|
|
</intent-filter>
|
|
-->
|
|
</activity>
|
|
<activity android:name="com.android.music.MediaPickerActivity"
|
|
android:label="@string/mediapickerlabel" android:exported="false" >
|
|
<!--
|
|
<intent-filter>
|
|
<action android:name="android.intent.action.PICK" />
|
|
<category android:name="android.intent.category.DEFAULT" />
|
|
<data android:mimeType="media/*"/>
|
|
<data android:mimeType="audio/*"/>
|
|
<data android:mimeType="application/ogg"/>
|
|
<data android:mimeType="application/x-ogg"/>
|
|
<data android:mimeType="video/*"/>
|
|
</intent-filter>
|
|
<intent-filter>
|
|
<action android:name="android.intent.action.GET_CONTENT" />
|
|
<category android:name="android.intent.category.DEFAULT" />
|
|
<category android:name="android.intent.category.OPENABLE" />
|
|
<data android:mimeType="media/*"/>
|
|
<data android:mimeType="audio/*"/>
|
|
<data android:mimeType="application/ogg"/>
|
|
<data android:mimeType="application/x-ogg"/>
|
|
<data android:mimeType="video/*"/>
|
|
</intent-filter>
|
|
-->
|
|
</activity>
|
|
<activity android:name="com.android.music.MusicPicker"
|
|
android:label="@string/music_picker_title" android:exported="true" >
|
|
<!-- First way to invoke us: someone asks to get content of
|
|
any of the audio types we support. -->
|
|
<intent-filter>
|
|
<action android:name="android.intent.action.GET_CONTENT" />
|
|
<category android:name="android.intent.category.DEFAULT" />
|
|
<category android:name="android.intent.category.OPENABLE" />
|
|
<data android:mimeType="audio/*"/>
|
|
<data android:mimeType="application/ogg"/>
|
|
<data android:mimeType="application/x-ogg"/>
|
|
</intent-filter>
|
|
<!-- Second way to invoke us: someone asks to pick an item from
|
|
some media Uri. -->
|
|
<intent-filter>
|
|
<action android:name="android.intent.action.PICK" />
|
|
<category android:name="android.intent.category.DEFAULT" />
|
|
<category android:name="android.intent.category.OPENABLE" />
|
|
<data android:mimeType="vnd.android.cursor.dir/audio"/>
|
|
</intent-filter>
|
|
</activity>
|
|
<activity android:name="com.android.music.CreatePlaylist"
|
|
android:theme="@android:style/Theme.Dialog" android:exported="false" />
|
|
<activity android:name="com.android.music.RenamePlaylist"
|
|
android:theme="@android:style/Theme.Dialog" android:exported="false" />
|
|
<activity android:name="com.android.music.WeekSelector"
|
|
android:theme="@android:style/Theme.Dialog" android:exported="false" />
|
|
<activity android:name="com.android.music.DeleteItems"
|
|
android:theme="@android:style/Theme.Dialog" android:exported="false" />
|
|
<activity android:name="com.android.music.ScanningProgress"
|
|
android:theme="@android:style/Theme.Dialog" android:exported="false" />
|
|
<service android:name="com.android.music.MediaPlaybackService"
|
|
android:exported="false" />
|
|
|
|
<receiver android:name="com.android.music.MediaAppWidgetProvider">
|
|
<intent-filter>
|
|
<action android:name="android.appwidget.action.APPWIDGET_UPDATE" />
|
|
</intent-filter>
|
|
<meta-data android:name="android.appwidget.provider" android:resource="@xml/appwidget_info" />
|
|
</receiver>
|
|
</application>
|
|
|
|
</manifest>
|