<?xml version="1.0" encoding="utf-8"?>
<!-- Copyright (C) 2007 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">

    <original-package android:name="com.android.music" />

    <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.WRITE_EXTERNAL_STORAGE" />
    <uses-permission android:name="android.permission.BROADCAST_STICKY" />

    <application android:icon="@drawable/app_music"
        android:label="@string/musicbrowserlabel"
        android:taskAffinity="android.task.music"
        android:allowTaskReparenting="true">
        <meta-data
            android:name="android.app.default_searchable"
            android:value="com.android.music.QueryBrowserActivity"
        />
        <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" />
            </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>