1 <?xml version="1.0" encoding="utf-8"?>
2 <!-- Copyright (C) 2012 Andrew Neal
3 Copyright (C) 2014 The CyanogenMod Project
4 Copyright (C) 2019 The LineageOS Project
6 Licensed under the Apache License, Version 2.0 (the "License");
7 you may not use this file except in compliance with the License.
8 You may obtain a copy of the License at
10 http://www.apache.org/licenses/LICENSE-2.0
12 Unless required by applicable law or agreed to in writing, software
13 distributed under the License is distributed on an "AS IS" BASIS,
14 WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
15 See the License for the specific language governing permissions and
16 limitations under the License.
18 <manifest xmlns:android="http://schemas.android.com/apk/res/android"
19 package="org.lineageos.eleven"
20 android:versionCode="3"
21 android:versionName="3.0">
23 <!-- Used for caching and creating new playlists -->
24 <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
25 <!-- Used to check for a network connection -->
26 <uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
27 <!-- Used to download images -->
28 <uses-permission android:name="android.permission.INTERNET" />
29 <!-- Used to keep the service running when the phone sleeps -->
30 <uses-permission android:name="android.permission.WAKE_LOCK" />
31 <!-- The main service uses a sticky broadcast -->
32 <uses-permission android:name="android.permission.BROADCAST_STICKY" />
33 <!-- Lower or raise the music based on the phone state -->
34 <uses-permission android:name="android.permission.READ_PHONE_STATE" />
35 <!-- Used to set the devices's ringtone -->
36 <uses-permission android:name="android.permission.WRITE_SETTINGS" />
37 <!-- Used to create launcher shortcuts -->
38 <uses-permission android:name="com.android.launcher.permission.INSTALL_SHORTCUT" />
39 <!-- Allows Eleven to read from External Storage -->
40 <uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE"/>
41 <!-- Allows Eleven to modify media files on external storage -->
42 <uses-permission android:name="android.permission.WRITE_MEDIA_STORAGE" />
44 <!-- Audio Visualizer Permissions -->
45 <uses-permission android:name="android.permission.RECORD_AUDIO" />
46 <uses-permission android:name="android.permission.MODIFY_AUDIO_SETTINGS" />
48 <!-- Allows Eleven to start services in foreground -->
49 <uses-permission android:name="android.permission.FOREGROUND_SERVICE" />
51 <!-- Accelerometer feature for shake to play -->
52 <uses-feature android:name="android.hardware.sensor.accelerometer" />
55 android:name="org.lineageos.eleven.ElevenApplication"
56 android:allowBackup="true"
57 android:allowTaskReparenting="true"
58 android:hardwareAccelerated="@bool/config_hardwareAccelerated"
59 android:appCategory="audio"
60 android:icon="@mipmap/ic_launcher"
61 android:label="@string/app_name"
62 android:largeHeap="@bool/config_largeHeap"
63 android:taskAffinity="org.lineageos.eleven.task"
64 android:theme="@style/Eleven.Theme">
68 android:name="android.app.default_searchable"
69 android:value=".ui.activities.SearchActivity" />
70 <!-- Main activity -->
72 android:name="org.lineageos.eleven.ui.activities.HomeActivity"
73 android:windowSoftInputMode="adjustPan"
74 android:launchMode="singleTop"
75 android:exported="true"
76 android:theme="@style/Eleven.Theme.ActionBar.Overlay">
78 <action android:name="android.intent.action.MAIN" />
79 <action android:name="android.intent.action.MUSIC_PLAYER" />
81 <category android:name="android.intent.category.LAUNCHER" />
82 <category android:name="android.intent.category.APP_MUSIC" />
83 <category android:name="android.intent.category.DEFAULT" />
86 <action android:name="android.intent.action.VIEW" />
88 <category android:name="android.intent.category.DEFAULT" />
90 <data android:mimeType="vnd.android.cursor.dir/playlist" />
91 <data android:mimeType="vnd.android.cursor.dir/albums" />
92 <data android:mimeType="vnd.android.cursor.dir/artists" />
95 <action android:name="${applicationId}.AUDIO_PLAYER" />
97 <category android:name="android.intent.category.DEFAULT" />
101 <!-- Search interface -->
103 android:name="org.lineageos.eleven.ui.activities.SearchActivity"
104 android:windowSoftInputMode="adjustResize"
105 android:exported="true"
106 android:theme="@style/Eleven.Theme">
108 <action android:name="android.intent.action.SEARCH" />
109 <action android:name="android.intent.action.MEDIA_SEARCH" />
111 <category android:name="android.intent.category.DEFAULT" />
115 android:name="android.app.searchable"
116 android:resource="@xml/searchable" />
118 <!-- Used to set options -->
120 android:name="org.lineageos.eleven.ui.activities.SettingsActivity"
121 android:label="@string/menu_settings"/>
122 <!-- Audio Preview -->
124 android:name=".ui.activities.preview.AudioPreviewActivity"
125 android:launchMode="singleTask"
126 android:excludeFromRecents="true"
127 android:taskAffinity=""
128 android:theme="@style/Theme.AudioPreview">
130 <action android:name="android.intent.action.VIEW" />
132 <category android:name="android.intent.category.DEFAULT" />
134 <data android:scheme="content" />
135 <data android:mimeType="audio/*" />
136 <data android:mimeType="application/ogg" />
137 <data android:mimeType="application/x-ogg" />
138 <data android:mimeType="application/itunes" />
141 <action android:name="android.intent.action.VIEW" />
143 <category android:name="android.intent.category.DEFAULT" />
145 <data android:scheme="file" />
146 <data android:mimeType="audio/*" />
147 <data android:mimeType="application/ogg" />
148 <data android:mimeType="application/x-ogg" />
149 <data android:mimeType="application/itunes" />
152 <action android:name="android.intent.action.VIEW" />
154 <category android:name="android.intent.category.DEFAULT" />
155 <category android:name="android.intent.category.BROWSABLE" />
157 <data android:scheme="http" />
158 <data android:mimeType="audio/*" />
159 <data android:mimeType="application/ogg" />
160 <data android:mimeType="application/x-ogg" />
161 <data android:mimeType="application/itunes" />
164 <!-- 4x1 App Widget -->
166 android:name="org.lineageos.eleven.appwidgets.AppWidgetSmall"
167 android:exported="false"
168 android:label="@string/app_widget_small" >
170 <action android:name="android.appwidget.action.APPWIDGET_UPDATE" />
174 android:name="android.appwidget.provider"
175 android:resource="@xml/app_widget_small" />
177 <!-- 4x2 App Widget -->
179 android:name="org.lineageos.eleven.appwidgets.AppWidgetLarge"
180 android:exported="false"
181 android:label="@string/app_widget_large" >
183 <action android:name="android.appwidget.action.APPWIDGET_UPDATE" />
187 android:name="android.appwidget.provider"
188 android:resource="@xml/app_widget_large" />
190 <!-- 4x2 alternate App Widget -->
192 android:name="org.lineageos.eleven.appwidgets.AppWidgetLargeAlternate"
193 android:exported="false"
194 android:label="@string/app_widget_large_alt" >
196 <action android:name="android.appwidget.action.APPWIDGET_UPDATE" />
200 android:name="android.appwidget.provider"
201 android:resource="@xml/app_widget_large_alternate" />
203 <!-- Media button receiver -->
204 <receiver android:name="org.lineageos.eleven.MediaButtonIntentReceiver" >
206 <action android:name="android.intent.action.MEDIA_BUTTON" />
207 <action android:name="android.media.AUDIO_BECOMING_NOISY" />
210 <!-- Used to recalculate sorting of songs based on the user's locale -->
211 <receiver android:name=".locale.LocaleChangeReceiver">
213 <action android:name="android.intent.action.LOCALE_CHANGED"/>
216 <!-- Music service -->
218 android:name="org.lineageos.eleven.MusicPlaybackService"
219 android:label="@string/app_name"
220 android:process=":main" />