AndroidManifest.xml

  1<?xml version="1.0" encoding="utf-8"?>
  2<manifest xmlns:android="http://schemas.android.com/apk/res/android"
  3    xmlns:tools="http://schemas.android.com/tools"
  4    package="eu.siacs.conversations">
  5
  6    <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
  7    <uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE" />
  8    <uses-permission android:name="android.permission.READ_CONTACTS" />
  9    <uses-permission android:name="android.permission.READ_PROFILE" />
 10    <uses-permission android:name="android.permission.INTERNET" />
 11    <uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
 12    <uses-permission android:name="android.permission.WAKE_LOCK" />
 13    <uses-permission android:name="android.permission.RECEIVE_BOOT_COMPLETED" />
 14    <uses-permission android:name="android.permission.VIBRATE" />
 15    <uses-permission android:name="android.permission.REQUEST_IGNORE_BATTERY_OPTIMIZATIONS" />
 16    <uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION" />
 17    <uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" />
 18    <uses-permission android:name="android.permission.ACCESS_WIFI_STATE" />
 19
 20    <uses-feature android:name="android.hardware.location" android:required="false" />
 21    <uses-feature android:name="android.hardware.location.gps" android:required="false" />
 22    <uses-feature android:name="android.hardware.location.network" android:required="false" />
 23
 24    <uses-permission android:name="android.permission.CAMERA" />
 25    <uses-permission android:name="android.permission.RECORD_AUDIO"/>
 26
 27    <uses-permission
 28        android:name="android.permission.READ_PHONE_STATE"
 29        tools:node="remove" />
 30
 31    <uses-sdk tools:overrideLibrary="net.ypresto.androidtranscoder" />
 32
 33    <uses-feature android:name="android.hardware.camera" android:required="false" />
 34    <uses-feature android:name="android.hardware.camera.autofocus" android:required="false" />
 35
 36
 37    <application
 38        android:networkSecurityConfig="@xml/network_security_configuration"
 39        android:allowBackup="true"
 40        android:icon="@drawable/ic_launcher"
 41        android:label="@string/app_name"
 42        android:theme="@style/ConversationsTheme"
 43        android:appCategory="social"
 44        tools:replace="android:label"
 45        tools:targetApi="o">
 46
 47        <meta-data android:name="com.google.android.gms.car.application"
 48            android:resource="@xml/automotive_app_desc" />
 49
 50        <service android:name=".services.XmppConnectionService" />
 51
 52        <receiver android:name=".services.EventReceiver">
 53            <intent-filter>
 54                <action android:name="android.intent.action.BOOT_COMPLETED" />
 55                <action android:name="android.net.conn.CONNECTIVITY_CHANGE" />
 56                <action android:name="android.intent.action.ACTION_SHUTDOWN" />
 57                <action android:name="android.media.RINGER_MODE_CHANGED" />
 58            </intent-filter>
 59        </receiver>
 60        <activity
 61            android:name=".ui.ShareLocationActivity"
 62            android:label="@string/title_activity_share_location"/>
 63        <activity
 64            android:name=".ui.SearchActivity"
 65            android:label="@string/search_messages"/>
 66        <activity
 67            android:name=".ui.RecordingActivity"
 68            android:theme="@style/ConversationsTheme.Dialog"
 69            android:configChanges="orientation|screenSize"/>
 70        <activity
 71            android:name=".ui.ShowLocationActivity"
 72            android:label="@string/title_activity_show_location" >
 73            <intent-filter>
 74                <action android:name="eu.siacs.conversations.location.show" />
 75                <category android:name="android.intent.category.DEFAULT" />
 76            </intent-filter>
 77            <intent-filter>
 78                <action android:name="android.intent.action.VIEW" />
 79                <data android:scheme="geo" />
 80                <category android:name="android.intent.category.DEFAULT" />
 81            </intent-filter>
 82        </activity>
 83        <activity
 84            android:name=".ui.ConversationActivity"
 85            android:theme="@style/SplashTheme">
 86            <intent-filter>
 87                <action android:name="android.intent.action.MAIN" />
 88
 89                <category android:name="android.intent.category.LAUNCHER" />
 90            </intent-filter>
 91        </activity>
 92        <activity
 93            android:name=".ui.ConversationsActivity"
 94            android:label="@string/app_name"
 95            android:launchMode="singleTask"
 96            android:minWidth="300dp"
 97            android:minHeight="300dp"
 98            android:windowSoftInputMode="stateHidden" />
 99        <activity
100            android:name=".ui.ScanActivity"
101            android:screenOrientation="portrait"
102            android:theme="@style/ConversationsTheme.FullScreen"
103            android:windowSoftInputMode="stateAlwaysHidden" />
104        <activity
105            android:name=".ui.UriHandlerActivity"
106            android:label="@string/title_activity_start_conversation">
107            <intent-filter>
108                <action android:name="android.intent.action.VIEW" />
109
110                <category android:name="android.intent.category.DEFAULT" />
111                <category android:name="android.intent.category.BROWSABLE" />
112
113                <data android:scheme="xmpp" />
114            </intent-filter>
115            <intent-filter android:autoVerify="true">
116                <action android:name="android.intent.action.VIEW" />
117
118                <category android:name="android.intent.category.DEFAULT" />
119                <category android:name="android.intent.category.BROWSABLE" />
120
121                <data android:scheme="https" />
122                <data android:host="conversations.im" />
123                <data android:pathPrefix="/i/" />
124                <data android:pathPrefix="/j/" />
125            </intent-filter>
126            <intent-filter>
127                <action android:name="android.intent.action.SENDTO" />
128
129                <category android:name="android.intent.category.DEFAULT" />
130
131                <data android:scheme="imto" />
132                <data android:host="jabber" />
133            </intent-filter>
134        </activity>
135        <activity
136            android:name=".ui.StartConversationActivity"
137            android:label="@string/title_activity_start_conversation"
138            android:launchMode="singleTop">
139            <intent-filter>
140                <action android:name="android.intent.action.VIEW" />
141            </intent-filter>
142        </activity>
143        <activity
144            android:name=".ui.WelcomeActivity"
145            android:label="@string/app_name"
146            android:launchMode="singleTask"/>
147        <activity
148            android:name=".ui.MagicCreateActivity"
149            android:label="@string/create_account"
150            android:launchMode="singleTask"/>
151        <activity
152            android:name=".ui.SettingsActivity"
153            android:label="@string/title_activity_settings" />
154        <activity
155            android:name=".ui.ChooseContactActivity"
156            android:label="@string/title_activity_choose_contact" />
157        <activity
158            android:name=".ui.BlocklistActivity"
159            android:label="@string/title_activity_block_list" />
160        <activity
161            android:name=".ui.ChangePasswordActivity"
162            android:label="@string/change_password_on_server" />
163        <activity
164            android:name=".ui.ManageAccountActivity"
165            android:label="@string/title_activity_manage_accounts"
166            android:launchMode="singleTask" />
167        <activity
168            android:name=".ui.ShareViaAccountActivity"
169            android:label="@string/title_activity_share_via_account"
170            android:launchMode="singleTop" />
171        <activity
172            android:name=".ui.EditAccountActivity"
173            android:launchMode="singleTop"
174            android:windowSoftInputMode="stateHidden|adjustResize" />
175        <activity
176            android:name=".ui.ConferenceDetailsActivity"
177            android:windowSoftInputMode="stateHidden" />
178        <activity
179            android:name=".ui.ContactDetailsActivity"
180            android:windowSoftInputMode="stateHidden" />
181        <activity
182            android:name=".ui.PublishProfilePictureActivity"
183            android:label="@string/mgmt_account_publish_avatar"
184            android:windowSoftInputMode="stateHidden" />
185        <activity
186            android:name=".ui.ShareWithActivity"
187            android:label="@string/app_name"
188            android:launchMode="singleTop">
189            <intent-filter>
190                <action android:name="android.intent.action.SEND" />
191
192                <category android:name="android.intent.category.DEFAULT" />
193
194                <data android:mimeType="text/plain" />
195            </intent-filter>
196            <intent-filter>
197                <action android:name="android.intent.action.SEND" />
198
199                <category android:name="android.intent.category.DEFAULT" />
200
201                <data android:mimeType="*/*" />
202            </intent-filter>
203            <intent-filter>
204                <action android:name="android.intent.action.SEND_MULTIPLE" />
205
206                <category android:name="android.intent.category.DEFAULT" />
207
208                <data android:mimeType="image/*" />
209            </intent-filter>
210
211            <meta-data
212                android:name="android.service.chooser.chooser_target_service"
213                android:value=".services.ContactChooserTargetService" />
214        </activity>
215        <activity
216            android:name=".ui.TrustKeysActivity"
217            android:label="@string/trust_omemo_fingerprints"
218            android:windowSoftInputMode="stateAlwaysHidden" />
219        <activity
220            android:name=".ui.AboutActivity"
221            android:label="@string/title_activity_about"
222            android:parentActivityName=".ui.SettingsActivity">
223            <meta-data
224                android:name="android.support.PARENT_ACTIVITY"
225                android:value="eu.siacs.conversations.ui.SettingsActivity" />
226            <intent-filter>
227                <action android:name="android.intent.action.VIEW" />
228                <category android:name="android.intent.category.PREFERENCE" />
229            </intent-filter>
230        </activity>
231        <activity android:name="com.soundcloud.android.crop.CropImageActivity" />
232        <activity android:name=".ui.MemorizingActivity"/>
233
234        <service android:name=".services.ExportLogsService" />
235        <service
236            android:name=".services.ContactChooserTargetService"
237            android:permission="android.permission.BIND_CHOOSER_TARGET_SERVICE">
238            <intent-filter>
239                <action android:name="android.service.chooser.ChooserTargetService" />
240            </intent-filter>
241        </service>
242
243        <provider
244            android:name="android.support.v4.content.FileProvider"
245            android:authorities="${applicationId}.files"
246            android:exported="false"
247            android:grantUriPermissions="true">
248            <meta-data
249                android:name="android.support.FILE_PROVIDER_PATHS"
250                android:resource="@xml/file_paths" />
251        </provider>
252        <provider
253            android:authorities="${applicationId}.barcodes"
254            android:name=".services.BarcodeProvider"
255            android:exported="false"
256            android:grantUriPermissions="true"/>
257
258        <activity android:name=".ui.ShortcutActivity"
259            android:label="@string/contact">
260            <intent-filter>
261                <action android:name="android.intent.action.CREATE_SHORTCUT" />
262            </intent-filter>
263        </activity>
264    </application>
265
266</manifest>