1<?xml version="1.0" encoding="utf-8"?>
2<!-- Copyright (C) 2007 The Android Open Source Project
3
4     Licensed under the Apache License, Version 2.0 (the "License");
5     you may not use this file except in compliance with the License.
6     You may obtain a copy of the License at
7
8          http://www.apache.org/licenses/LICENSE-2.0
9
10     Unless required by applicable law or agreed to in writing, software
11     distributed under the License is distributed on an "AS IS" BASIS,
12     WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13     See the License for the specific language governing permissions and
14     limitations under the License.
15-->
16
17<manifest xmlns:android="http://schemas.android.com/apk/res/android"
18        package="com.android.music">
19
20    <original-package android:name="com.android.music" />
21    <uses-sdk android:minSdkVersion="8" android:targetSdkVersion="24"/>
22    <uses-permission android:name="android.permission.WRITE_SETTINGS" />
23    <uses-permission android:name="android.permission.SYSTEM_ALERT_WINDOW" />
24    <uses-permission android:name="android.permission.WAKE_LOCK" />
25    <uses-permission android:name="android.permission.INTERNET" />
26    <uses-permission android:name="android.permission.READ_PHONE_STATE" />
27    <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
28    <uses-permission android:name="android.permission.BROADCAST_STICKY" />
29
30    <application android:icon="@drawable/app_music"
31        android:label="@string/musicbrowserlabel"
32        android:taskAffinity="android.task.music"
33        android:allowTaskReparenting="true"
34        android:usesCleartextTraffic="true">
35        <meta-data
36            android:name="android.app.default_searchable"
37            android:value="com.android.music.QueryBrowserActivity"
38        />
39        <activity android:name="com.android.music.MusicBrowserActivity"
40            android:theme="@android:style/Theme.NoTitleBar"
41            android:exported="true"
42        >
43            <intent-filter>
44                <action android:name="android.intent.action.MAIN" />
45                <action android:name="android.intent.action.MUSIC_PLAYER" />
46                <category android:name="android.intent.category.DEFAULT" />
47                <category android:name="android.intent.category.LAUNCHER" />
48                <category android:name="android.intent.category.APP_MUSIC" />
49            </intent-filter>
50        </activity>
51        <receiver android:name="com.android.music.MediaButtonIntentReceiver">
52            <intent-filter>
53                <action android:name="android.intent.action.MEDIA_BUTTON" />
54                <action android:name="android.media.AUDIO_BECOMING_NOISY" />
55            </intent-filter>
56        </receiver>
57        <!-- This is the "current music playing" panel, which has special
58             launch behavior.  We clear its task affinity, so it will not
59             be associated with the main media task and if launched
60             from a notification will not bring the rest of the media app
61             to the foreground.  We make it singleTask so that when others
62             launch it (such as media) we will launch in to our own task.
63             We set clearTaskOnLaunch because the user
64             can go to a playlist from this activity, so if they later return
65             to it we want it back in its initial state.  We exclude from
66             recents since this is accessible through a notification when
67             appropriate. -->
68        <activity android:name="com.android.music.MediaPlaybackActivity"
69                android:theme="@android:style/Theme.NoTitleBar"
70                android:label="@string/mediaplaybacklabel"
71                android:taskAffinity=""
72                android:launchMode="singleTask"
73                android:clearTaskOnLaunch="true"
74                android:excludeFromRecents="true"
75                android:exported="true" >
76            <intent-filter>
77                <action android:name="android.intent.action.VIEW" />
78                <category android:name="android.intent.category.DEFAULT" />
79                <data android:scheme="content"/>
80                <data android:host="media"/>
81                <data android:mimeType="audio/*"/>
82                <data android:mimeType="application/ogg"/>
83                <data android:mimeType="application/x-ogg"/>
84                <data android:mimeType="application/itunes"/>
85            </intent-filter>
86            <intent-filter>
87                <action android:name="com.android.music.PLAYBACK_VIEWER" />
88                <category android:name="android.intent.category.DEFAULT" />
89            </intent-filter>
90        </activity>
91
92        <activity android:name="AudioPreview" android:theme="@android:style/Theme.Dialog"
93                android:taskAffinity=""
94                android:excludeFromRecents="true" android:exported="true" >
95            <intent-filter>
96                <action android:name="android.intent.action.VIEW" />
97                <category android:name="android.intent.category.DEFAULT" />
98                <data android:scheme="file"/>
99                <data android:mimeType="audio/*"/>
100                <data android:mimeType="application/ogg"/>
101                <data android:mimeType="application/x-ogg"/>
102                <data android:mimeType="application/itunes"/>
103            </intent-filter>
104            <intent-filter>
105                <action android:name="android.intent.action.VIEW" />
106                <category android:name="android.intent.category.DEFAULT" />
107                <category android:name="android.intent.category.BROWSABLE" />
108                <data android:scheme="http" />
109                <data android:mimeType="audio/*"/>
110                <data android:mimeType="application/ogg"/>
111                <data android:mimeType="application/x-ogg"/>
112                <data android:mimeType="application/itunes"/>
113            </intent-filter>
114            <intent-filter
115                android:priority="-1">
116                <action android:name="android.intent.action.VIEW" />
117                <category android:name="android.intent.category.DEFAULT" />
118                <category android:name="android.intent.category.BROWSABLE" />
119                <data android:scheme="content" />
120                <data android:mimeType="audio/*"/>
121                <data android:mimeType="application/ogg"/>
122                <data android:mimeType="application/x-ogg"/>
123                <data android:mimeType="application/itunes"/>
124            </intent-filter>
125        </activity>
126
127        <activity android:name="com.android.music.ArtistAlbumBrowserActivity" android:exported="false" >
128            <intent-filter>
129                <action android:name="android.intent.action.PICK" />
130                <category android:name="android.intent.category.DEFAULT" />
131                <data android:mimeType="vnd.android.cursor.dir/artistalbum"/>
132            </intent-filter>
133        </activity>
134        <activity android:name="com.android.music.AlbumBrowserActivity" android:exported="false" >
135            <intent-filter>
136                <action android:name="android.intent.action.PICK" />
137                <category android:name="android.intent.category.DEFAULT" />
138                <data android:mimeType="vnd.android.cursor.dir/album"/>
139            </intent-filter>
140        </activity>
141        <activity android:name="com.android.music.NowPlayingActivity" android:exported="false" >
142            <intent-filter>
143                <action android:name="android.intent.action.PICK" />
144                <category android:name="android.intent.category.DEFAULT" />
145                <data android:mimeType="vnd.android.cursor.dir/nowplaying"/>
146            </intent-filter>
147        </activity>
148        <activity android:name="com.android.music.TrackBrowserActivity" android:exported="false" >
149            <intent-filter>
150                <action android:name="android.intent.action.EDIT" />
151                <action android:name="android.intent.action.PICK" />
152                <category android:name="android.intent.category.DEFAULT" />
153                <data android:mimeType="vnd.android.cursor.dir/track"/>
154            </intent-filter>
155        </activity>
156        <activity android:name="com.android.music.QueryBrowserActivity"
157                android:theme="@android:style/Theme.NoTitleBar"
158                android:exported="true" >
159            <intent-filter>
160                <action android:name="android.intent.action.SEARCH" />
161                <action android:name="android.intent.action.MEDIA_SEARCH" />
162                <category android:name="android.intent.category.DEFAULT" />
163            </intent-filter>
164            <meta-data
165                android:name="android.app.searchable"
166                android:resource="@xml/searchable"
167            />
168        </activity>
169        <activity android:name="com.android.music.PlaylistBrowserActivity"
170                android:label="@string/musicbrowserlabel"
171                android:exported="true" >
172            <intent-filter>
173                <action android:name="android.intent.action.PICK" />
174                <category android:name="android.intent.category.DEFAULT" />
175                <data android:mimeType="vnd.android.cursor.dir/playlist"/>
176            </intent-filter>
177            <intent-filter>
178                <action android:name="android.intent.action.VIEW" />
179                <category android:name="android.intent.category.DEFAULT" />
180                <data android:mimeType="vnd.android.cursor.dir/playlist"/>
181            </intent-filter>
182        </activity>
183        <activity-alias android:name="com.android.music.PlaylistShortcutActivity"
184            android:targetActivity="com.android.music.PlaylistBrowserActivity"
185            android:label="@string/musicshortcutlabel"
186            android:icon="@drawable/ic_launcher_shortcut_music_playlist"
187            android:exported="true" >
188
189            <intent-filter>
190                <action android:name="android.intent.action.CREATE_SHORTCUT" />
191                <category android:name="android.intent.category.DEFAULT" />
192            </intent-filter>
193
194        </activity-alias>
195        <activity android:name="com.android.music.VideoBrowserActivity"
196            android:taskAffinity="android.task.video"
197            android:label="@string/videobrowserlabel"
198            android:icon="@drawable/app_video"
199            android:exported="false" >
200            <intent-filter>
201                <action android:name="android.intent.action.PICK" />
202                <category android:name="android.intent.category.DEFAULT" />
203                <data android:mimeType="vnd.android.cursor.dir/video"/>
204            </intent-filter>
205<!--
206            <intent-filter>
207                <action android:name="android.intent.action.MAIN" />
208                <category android:name="android.intent.category.DEFAULT" />
209                <category android:name="android.intent.category.LAUNCHER" />
210            </intent-filter>
211-->
212        </activity>
213        <activity android:name="com.android.music.MediaPickerActivity"
214                android:label="@string/mediapickerlabel" android:exported="false" >
215<!--
216            <intent-filter>
217                <action android:name="android.intent.action.PICK" />
218                <category android:name="android.intent.category.DEFAULT" />
219                <data android:mimeType="media/*"/>
220                <data android:mimeType="audio/*"/>
221                <data android:mimeType="application/ogg"/>
222                <data android:mimeType="application/x-ogg"/>
223                <data android:mimeType="video/*"/>
224            </intent-filter>
225            <intent-filter>
226                <action android:name="android.intent.action.GET_CONTENT" />
227                <category android:name="android.intent.category.DEFAULT" />
228                <category android:name="android.intent.category.OPENABLE" />
229                <data android:mimeType="media/*"/>
230                <data android:mimeType="audio/*"/>
231                <data android:mimeType="application/ogg"/>
232                <data android:mimeType="application/x-ogg"/>
233                <data android:mimeType="video/*"/>
234            </intent-filter>
235-->
236        </activity>
237        <activity android:name="com.android.music.MusicPicker"
238                android:label="@string/music_picker_title" android:exported="true" >
239            <!-- First way to invoke us: someone asks to get content of
240                 any of the audio types we support. -->
241            <intent-filter>
242                <action android:name="android.intent.action.GET_CONTENT" />
243                <category android:name="android.intent.category.DEFAULT" />
244                <category android:name="android.intent.category.OPENABLE" />
245                <data android:mimeType="audio/*"/>
246                <data android:mimeType="application/ogg"/>
247                <data android:mimeType="application/x-ogg"/>
248            </intent-filter>
249            <!-- Second way to invoke us: someone asks to pick an item from
250                 some media Uri. -->
251            <intent-filter>
252                <action android:name="android.intent.action.PICK" />
253                <category android:name="android.intent.category.DEFAULT" />
254                <category android:name="android.intent.category.OPENABLE" />
255                <data android:mimeType="vnd.android.cursor.dir/audio"/>
256            </intent-filter>
257        </activity>
258        <activity android:name="com.android.music.CreatePlaylist"
259            android:theme="@android:style/Theme.Dialog" android:exported="false" />
260        <activity android:name="com.android.music.RenamePlaylist"
261            android:theme="@android:style/Theme.Dialog" android:exported="false" />
262        <activity android:name="com.android.music.WeekSelector"
263            android:theme="@android:style/Theme.Dialog" android:exported="false" />
264        <activity android:name="com.android.music.DeleteItems"
265            android:theme="@android:style/Theme.Dialog" android:exported="false" />
266        <activity android:name="com.android.music.ScanningProgress"
267            android:theme="@android:style/Theme.Dialog" android:exported="false" />
268        <service android:name="com.android.music.MediaPlaybackService"
269            android:exported="false" />
270
271        <receiver android:name="com.android.music.MediaAppWidgetProvider">
272            <intent-filter>
273                <action android:name="android.appwidget.action.APPWIDGET_UPDATE" />
274            </intent-filter>
275            <meta-data android:name="android.appwidget.provider" android:resource="@xml/appwidget_info" />
276        </receiver>
277    </application>
278</manifest>
279