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
 17    <uses-permission android:name="android.permission.CAMERA" />
 18
 19    <uses-permission
 20        android:name="android.permission.READ_PHONE_STATE"
 21        tools:node="remove" />
 22
 23    <uses-sdk tools:overrideLibrary="net.ypresto.androidtranscoder" />
 24
 25    <uses-feature android:name="android.hardware.camera" android:required="false" />
 26    <uses-feature android:name="android.hardware.camera.autofocus" android:required="false" />
 27
 28
 29    <application
 30        android:networkSecurityConfig="@xml/network_security_configuration"
 31        android:allowBackup="true"
 32        android:icon="@drawable/ic_launcher"
 33        android:label="@string/app_name"
 34        android:theme="@style/ConversationsTheme"
 35        tools:replace="android:label">
 36
 37        <meta-data android:name="com.google.android.gms.car.application"
 38            android:resource="@xml/automotive_app_desc" />
 39
 40        <service android:name=".services.XmppConnectionService" />
 41
 42        <receiver android:name=".services.EventReceiver">
 43            <intent-filter>
 44                <action android:name="android.intent.action.BOOT_COMPLETED" />
 45                <action android:name="android.net.conn.CONNECTIVITY_CHANGE" />
 46                <action android:name="android.intent.action.ACTION_SHUTDOWN" />
 47                <action android:name="android.media.RINGER_MODE_CHANGED" />
 48            </intent-filter>
 49        </receiver>
 50
 51        <activity
 52            android:name=".ui.ConversationActivity"
 53            android:theme="@style/SplashTheme">
 54            <intent-filter>
 55                <action android:name="android.intent.action.MAIN" />
 56
 57                <category android:name="android.intent.category.LAUNCHER" />
 58            </intent-filter>
 59        </activity>
 60        <activity
 61            android:name=".ui.ConversationsActivity"
 62            android:label="@string/app_name"
 63            android:launchMode="singleTask"
 64            android:minWidth="300dp"
 65            android:minHeight="300dp"
 66            android:windowSoftInputMode="stateHidden" />
 67        <activity
 68            android:name=".ui.ScanActivity"
 69            android:screenOrientation="portrait"
 70            android:theme="@style/ConversationsTheme.FullScreen"
 71            android:windowSoftInputMode="stateAlwaysHidden" />
 72        <activity
 73            android:name=".ui.UriHandlerActivity"
 74            android:label="@string/title_activity_start_conversation">
 75            <intent-filter>
 76                <action android:name="android.intent.action.VIEW" />
 77
 78                <category android:name="android.intent.category.DEFAULT" />
 79                <category android:name="android.intent.category.BROWSABLE" />
 80
 81                <data android:scheme="xmpp" />
 82            </intent-filter>
 83            <intent-filter android:autoVerify="true">
 84                <action android:name="android.intent.action.VIEW" />
 85
 86                <category android:name="android.intent.category.DEFAULT" />
 87                <category android:name="android.intent.category.BROWSABLE" />
 88
 89                <data android:scheme="https" />
 90                <data android:host="conversations.im" />
 91                <data android:pathPrefix="/i/" />
 92                <data android:pathPrefix="/j/" />
 93            </intent-filter>
 94            <intent-filter>
 95                <action android:name="android.intent.action.SENDTO" />
 96
 97                <category android:name="android.intent.category.DEFAULT" />
 98
 99                <data android:scheme="imto" />
100                <data android:host="jabber" />
101            </intent-filter>
102        </activity>
103        <activity
104            android:name=".ui.StartConversationActivity"
105            android:label="@string/title_activity_start_conversation"
106            android:launchMode="singleTop">
107        </activity>
108        <activity
109            android:name=".ui.WelcomeActivity"
110            android:label="@string/app_name"
111            android:launchMode="singleTask"/>
112        <activity
113            android:name=".ui.MagicCreateActivity"
114            android:label="@string/create_account"
115            android:launchMode="singleTask"/>
116        <activity
117            android:name=".ui.SettingsActivity"
118            android:label="@string/title_activity_settings" />
119        <activity
120            android:name=".ui.ChooseContactActivity"
121            android:label="@string/title_activity_choose_contact" />
122        <activity
123            android:name=".ui.BlocklistActivity"
124            android:label="@string/title_activity_block_list" />
125        <activity
126            android:name=".ui.ChangePasswordActivity"
127            android:label="@string/change_password_on_server" />
128        <activity
129            android:name=".ui.ManageAccountActivity"
130            android:label="@string/title_activity_manage_accounts"
131            android:launchMode="singleTask" />
132        <activity
133            android:name=".ui.ShareViaAccountActivity"
134            android:label="@string/title_activity_share_via_account"
135            android:launchMode="singleTop" />
136        <activity
137            android:name=".ui.EditAccountActivity"
138            android:launchMode="singleTop"
139            android:windowSoftInputMode="stateHidden|adjustResize" />
140        <activity
141            android:name=".ui.ConferenceDetailsActivity"
142            android:windowSoftInputMode="stateHidden" />
143        <activity
144            android:name=".ui.ContactDetailsActivity"
145            android:windowSoftInputMode="stateHidden" />
146        <activity
147            android:name=".ui.PublishProfilePictureActivity"
148            android:label="@string/mgmt_account_publish_avatar"
149            android:windowSoftInputMode="stateHidden" />
150        <activity
151            android:name=".ui.ShareWithActivity"
152            android:label="@string/app_name"
153            android:launchMode="singleTop">
154            <intent-filter>
155                <action android:name="android.intent.action.SEND" />
156
157                <category android:name="android.intent.category.DEFAULT" />
158
159                <data android:mimeType="text/plain" />
160            </intent-filter>
161            <intent-filter>
162                <action android:name="android.intent.action.SEND" />
163
164                <category android:name="android.intent.category.DEFAULT" />
165
166                <data android:mimeType="*/*" />
167            </intent-filter>
168            <intent-filter>
169                <action android:name="android.intent.action.SEND_MULTIPLE" />
170
171                <category android:name="android.intent.category.DEFAULT" />
172
173                <data android:mimeType="image/*" />
174            </intent-filter>
175
176            <meta-data
177                android:name="android.service.chooser.chooser_target_service"
178                android:value=".services.ContactChooserTargetService" />
179        </activity>
180        <activity
181            android:name=".ui.TrustKeysActivity"
182            android:label="@string/trust_omemo_fingerprints"
183            android:windowSoftInputMode="stateAlwaysHidden" />
184        <activity
185            android:name=".ui.AboutActivity"
186            android:label="@string/title_activity_about"
187            android:parentActivityName=".ui.SettingsActivity">
188            <meta-data
189                android:name="android.support.PARENT_ACTIVITY"
190                android:value="eu.siacs.conversations.ui.SettingsActivity" />
191            <intent-filter>
192                <action android:name="android.intent.action.VIEW" />
193                <category android:name="android.intent.category.PREFERENCE" />
194            </intent-filter>
195        </activity>
196        <activity android:name="com.soundcloud.android.crop.CropImageActivity" />
197        <activity android:name=".ui.MemorizingActivity"/>
198
199        <service android:name=".services.ExportLogsService" />
200        <service
201            android:name=".services.ContactChooserTargetService"
202            android:permission="android.permission.BIND_CHOOSER_TARGET_SERVICE">
203            <intent-filter>
204                <action android:name="android.service.chooser.ChooserTargetService" />
205            </intent-filter>
206        </service>
207
208        <provider
209            android:name="android.support.v4.content.FileProvider"
210            android:authorities="${applicationId}.files"
211            android:exported="false"
212            android:grantUriPermissions="true">
213            <meta-data
214                android:name="android.support.FILE_PROVIDER_PATHS"
215                android:resource="@xml/file_paths" />
216        </provider>
217        <provider
218            android:authorities="${applicationId}.barcodes"
219            android:name=".services.BarcodeProvider"
220            android:exported="false"
221            android:grantUriPermissions="true"/>
222
223
224    </application>
225
226</manifest>