blob: 41b2254602b6b221ec0e683feac91cd21e63b11b [file] [log] [blame]
Mike Doddd3b009a2015-08-11 11:16:59 -07001<?xml version="1.0" encoding="utf-8"?>
2<!--
3 Copyright (C) 2015 The Android Open Source Project
4
5 Licensed under the Apache License, Version 2.0 (the "License");
6 you may not use this file except in compliance with the License.
7 You may obtain a copy of the License at
8
9 http://www.apache.org/licenses/LICENSE-2.0
10
11 Unless required by applicable law or agreed to in writing, software
12 distributed under the License is distributed on an "AS IS" BASIS,
13 WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14 See the License for the specific language governing permissions and
15 limitations under the License.
16-->
17<manifest xmlns:android="http://schemas.android.com/apk/res/android"
maxwenbc3d4662019-09-13 17:38:27 +020018 xmlns:tools="http://schemas.android.com/tools"
Mike Doddd3b009a2015-08-11 11:16:59 -070019 package="com.android.messaging"
20 android:installLocation="internalOnly">
21
maxwenbc3d4662019-09-13 17:38:27 +020022 <uses-sdk android:minSdkVersion="21" android:targetSdkVersion="28"
23 tools:overrideLibrary="com.android.ex.chips,com.android.ex.photo" />
Mike Doddd3b009a2015-08-11 11:16:59 -070024
25 <!-- Application holds CPU wakelock while working in background -->
26 <uses-permission android:name="android.permission.WAKE_LOCK" />
27 <!-- Application needs SMS/MMS permissions -->
28 <uses-permission android:name="android.permission.READ_SMS"/>
29 <uses-permission android:name="android.permission.WRITE_SMS"/>
30 <uses-permission android:name="android.permission.RECEIVE_SMS"/>
31 <uses-permission android:name="android.permission.RECEIVE_MMS"/>
32 <uses-permission android:name="android.permission.SEND_SMS"/>
33 <!-- Application needs access to MMS network -->
34 <uses-permission android:name="android.permission.INTERNET" />
35 <uses-permission android:name="android.permission.ACCESS_NETWORK_STATE"/>
36 <uses-permission android:name="android.permission.CHANGE_NETWORK_STATE" />
37 <!-- Application needs CONTACT permissions -->
38 <uses-permission android:name="android.permission.READ_CONTACTS"/>
39 <uses-permission android:name="android.permission.WRITE_CONTACTS"/>
40 <!-- Application needs to read profiles for the user itself from CP2 -->
41 <uses-permission android:name="android.permission.READ_PROFILE"/>
42 <uses-permission android:name="android.permission.VIBRATE"/>
43 <uses-permission android:name="android.permission.READ_PHONE_STATE"/>
44
45 <uses-permission android:name="android.permission.CAMERA" />
46 <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"/>
47 <uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE"/>
48 <uses-permission android:name="android.permission.RECORD_AUDIO" />
49 <uses-permission android:name="android.permission.CALL_PHONE" />
50 <uses-permission android:name="android.permission.DOWNLOAD_WITHOUT_NOTIFICATION" />
51 <uses-permission android:name="android.permission.RECEIVE_BOOT_COMPLETED" />
52
53 <!-- Optional features -->
54 <uses-feature android:name="android.hardware.camera" android:required="false" />
55 <uses-feature android:name="android.hardware.camera.front" android:required="false" />
56 <uses-feature android:name="android.hardware.camera.autofocus" android:required="false" />
57 <uses-feature android:name="android.hardware.microphone" android:required="false" />
58 <uses-feature android:name="android.hardware.screen.portrait" android:required="false" />
59
60 <application
61 android:name="com.android.messaging.BugleApplication"
62 android:allowBackup="false"
maxwen071d0642017-12-31 00:06:24 +010063 android:icon="@mipmap/ic_launcher_messaging"
Mike Doddd3b009a2015-08-11 11:16:59 -070064 android:label="@string/app_name"
65 android:theme="@style/BugleTheme"
66 android:supportsRtl="true">
67
68 <!-- Displays a list of conversations -->
69 <activity
70 android:name=".ui.conversationlist.ConversationListActivity"
71 android:configChanges="orientation|screenSize|keyboardHidden"
72 android:screenOrientation="user"
73 android:label="@string/app_name"
74 android:theme="@style/BugleTheme.ConversationListActivity">
75 <intent-filter>
76 <action android:name="android.intent.action.MAIN" />
77 <category android:name="android.intent.category.LAUNCHER" />
78 <category android:name="android.intent.category.DEFAULT" />
79 <category android:name="android.intent.category.APP_MESSAGING" />
80 </intent-filter>
81 </activity>
82
83 <activity
84 android:name=".ui.PermissionCheckActivity"
85 android:screenOrientation="portrait"
86 android:configChanges="orientation|screenSize|keyboardHidden" />
87
88 <!-- Launches a conversation (ensures correct app name shown in recents) -->
89 <activity
90 android:name=".ui.conversation.LaunchConversationActivity"
91 android:configChanges="orientation|screenSize|keyboardHidden"
92 android:screenOrientation="user"
93 android:theme="@style/Invisible"
94 android:noHistory="true"
95 android:documentLaunchMode="always">
96 <intent-filter>
97 <action android:name="android.intent.action.VIEW" />
98 <action android:name="android.intent.action.SENDTO" />
99 <category android:name="android.intent.category.DEFAULT" />
100 <category android:name="android.intent.category.BROWSABLE" />
101 <data android:scheme="sms" />
102 <data android:scheme="smsto" />
103 </intent-filter>
104 <intent-filter>
105 <action android:name="android.intent.action.VIEW" />
106 <action android:name="android.intent.action.SENDTO" />
107 <category android:name="android.intent.category.DEFAULT" />
108 <category android:name="android.intent.category.BROWSABLE" />
109 <data android:scheme="mms" />
110 <data android:scheme="mmsto" />
111 </intent-filter>
112 </activity>
113
114 <!-- Displays a list of archived conversations -->
115 <activity
116 android:name=".ui.conversationlist.ArchivedConversationListActivity"
117 android:configChanges="orientation|screenSize|keyboardHidden"
118 android:screenOrientation="user"
119 android:label="@string/archived_activity_title"
120 android:theme="@style/BugleTheme.ArchivedConversationListActivity"
121 android:parentActivityName="com.android.messaging.ui.conversationlist.ConversationListActivity">
122 <meta-data
123 android:name="android.support.PARENT_ACTIVITY"
124 android:value="com.android.messaging.ui.conversationlist.ConversationListActivity" />
125 </activity>
126
127 <!-- Displays the contents of a single conversation -->
128 <activity
129 android:name=".ui.conversation.ConversationActivity"
130 android:configChanges="orientation|screenSize|keyboardHidden"
131 android:screenOrientation="user"
132 android:windowSoftInputMode="stateHidden|adjustResize"
133 android:theme="@style/BugleTheme.ConversationActivity"
134 android:parentActivityName="com.android.messaging.ui.conversationlist.ConversationListActivity">
135 <meta-data
136 android:name="android.support.PARENT_ACTIVITY"
137 android:value="com.android.messaging.ui.conversationlist.ConversationListActivity" />
138 </activity>
139
140 <!-- Blocked Participants -->
141 <activity
142 android:name=".ui.BlockedParticipantsActivity"
143 android:configChanges="orientation|screenSize|keyboardHidden"
144 android:screenOrientation="user"
145 android:label="@string/blocked_contacts_title"
146 android:theme="@style/BugleTheme"
147 android:parentActivityName="com.android.messaging.ui.conversationlist.ConversationListActivity">
148 <meta-data
149 android:name="android.support.PARENT_ACTIVITY"
150 android:value="com.android.messaging.ui.conversationlist.ConversationListActivity" />
151 </activity>
152
153 <!-- Full-screen photo viewer -->
154 <activity
155 android:name=".ui.photoviewer.BuglePhotoViewActivity"
156 android:label="@string/photo_view_activity_title"
157 android:configChanges="orientation|screenSize|keyboardHidden"
158 android:screenOrientation="user"
159 android:theme="@style/BuglePhotoViewTheme"
160 />
161
162 <!-- Settings -->
163 <activity
164 android:name=".ui.appsettings.SettingsActivity"
165 android:label="@string/settings_activity_title"
166 android:theme="@style/BugleTheme.SettingsActivity"
167 android:configChanges="orientation|screenSize|keyboardHidden"
168 android:screenOrientation="user"
169 android:parentActivityName="com.android.messaging.ui.conversationlist.ConversationListActivity">
170 <meta-data
171 android:name="android.support.PARENT_ACTIVITY"
172 android:value="com.android.messaging.ui.conversationlist.ConversationListActivity" />
173 </activity>
174
175 <activity
176 android:name=".ui.appsettings.PerSubscriptionSettingsActivity"
177 android:label="@string/advanced_settings_activity_title"
178 android:theme="@style/BugleTheme.SettingsActivity"
179 android:configChanges="orientation|screenSize|keyboardHidden"
180 android:screenOrientation="user"
181 android:parentActivityName="com.android.messaging.ui.appsettings.SettingsActivity">
182 <meta-data
183 android:name="android.support.PARENT_ACTIVITY"
184 android:value="com.android.messaging.ui.appsettings.SettingsActivity" />
185 </activity>
186
187 <activity
188 android:name=".ui.appsettings.ApplicationSettingsActivity"
189 android:label="@string/general_settings_activity_title"
190 android:theme="@style/BugleTheme.SettingsActivity"
191 android:configChanges="orientation|screenSize|keyboardHidden"
192 android:screenOrientation="user"
193 android:parentActivityName="com.android.messaging.ui.appsettings.SettingsActivity">
194 <meta-data
195 android:name="android.support.PARENT_ACTIVITY"
196 android:value="com.android.messaging.ui.appsettings.SettingsActivity" />
197 <intent-filter>
198 <action android:name="android.intent.action.MAIN" />
199 <category android:name="android.intent.category.DEFAULT" />
200 <category android:name="android.intent.category.NOTIFICATION_PREFERENCES" />
201 </intent-filter>
202 </activity>
203
204 <!-- Handles sharing intent -->
205 <activity
206 android:name=".ui.conversationlist.ShareIntentActivity"
207 android:configChanges="orientation|screenSize|keyboardHidden"
208 android:screenOrientation="user"
209 android:theme="@style/BugleTheme.DialogActivity"
210 android:excludeFromRecents="true"
211 android:documentLaunchMode="always">
212 <intent-filter
213 android:label="@string/share_intent_label">
214 <action android:name="android.intent.action.SEND" />
215 <category android:name="android.intent.category.DEFAULT" />
216 <data android:mimeType="text/plain" />
217 <data android:mimeType="text/x-vCard" />
218 <data android:mimeType="text/x-vcard" />
219 <data android:mimeType="image/*" />
220 <data android:mimeType="audio/*" />
221 <data android:mimeType="application/ogg" />
222 </intent-filter>
223 <intent-filter
224 android:label="@string/share_intent_label">
225 <action android:name="android.intent.action.SEND_MULTIPLE" />
226 <category android:name="android.intent.category.DEFAULT" />
227 <data android:mimeType="image/*" />
228 </intent-filter>
229 </activity>
230
231 <!-- People & Options -->
232 <activity
233 android:name=".ui.conversationsettings.PeopleAndOptionsActivity"
234 android:configChanges="orientation|screenSize|keyboardHidden"
235 android:screenOrientation="user"
236 android:label="@string/people_and_options_activity_title"
237 android:theme="@style/BugleTheme"
238 android:parentActivityName="com.android.messaging.ui.conversation.ConversationActivity">
239 <meta-data
240 android:name="android.support.PARENT_ACTIVITY"
241 android:value="com.android.messaging.ui.conversation.ConversationActivity" />
242 </activity>
243
244 <!-- License -->
245 <activity android:name=".ui.LicenseActivity"
246 android:exported="true"
247 android:theme="@android:style/Theme.Holo.Light.Dialog"
248 android:label="@string/menu_license">
249 </activity>
250
251 <!-- Message Forwarding -->
252 <activity
253 android:name=".ui.conversationlist.ForwardMessageActivity"
254 android:configChanges="orientation|screenSize|keyboardHidden"
255 android:screenOrientation="user"
256 android:label="@string/forward_message_activity_title"
257 android:theme="@style/BugleTheme.DialogActivity">
258 </activity>
259
260 <!-- Entry point for handling remote input/actions. Currently, this is only used by Android
261 Wear to send voice replies. Since that uses PendingIntents, we don't need to export
262 this activity. If we want other apps to be able to use this activity at will,
263 we'll need to guard it with a signature-matching protected permission. We would also
264 need to add an intent filter and remove the android:exported attribute. -->
265 <activity
266 android:name=".ui.RemoteInputEntrypointActivity"
267 android:configChanges="orientation|screenSize|keyboardHidden"
268 android:screenOrientation="user"
269 android:exported="false"
270 android:theme="@style/Invisible">
271 </activity>
272
273 <!-- VCard details -->
274 <activity
275 android:name=".ui.VCardDetailActivity"
276 android:configChanges="orientation|screenSize|keyboardHidden"
277 android:screenOrientation="user"
278 android:label="@string/vcard_detail_activity_title"
279 android:theme="@style/BugleTheme">
280 <meta-data
281 android:name="android.support.PARENT_ACTIVITY"
282 android:value=".ui.conversation.ConversationActivity" />
283 </activity>
284
285 <!-- Attachment chooser -->
286 <activity
287 android:name=".ui.attachmentchooser.AttachmentChooserActivity"
288 android:configChanges="orientation|screenSize|keyboardHidden"
289 android:screenOrientation="user"
290 android:label="@string/attachment_chooser_activity_title"
291 android:theme="@style/BugleTheme"
292 android:parentActivityName="com.android.messaging.ui.conversation.ConversationActivity">
293 <meta-data
294 android:name="android.support.PARENT_ACTIVITY"
295 android:value="com.android.messaging.ui.conversation.ConversationActivity" />
296 </activity>
297
298 <!-- Test activity that we use to host fragments/views. Unfortunately, apparently necessary
299 because Android framework test cases want activity to be in the instrumented package.
300 See http://developer.android.com/reference/android/test/ActivityInstrumentationTestCase2.html
301 -->
302 <activity
303 android:name=".ui.TestActivity"
304 android:configChanges="orientation|screenSize|keyboardHidden">
305 </activity>
306
307 <activity
308 android:name=".ui.debug.DebugMmsConfigActivity"
309 android:configChanges="orientation|screenSize|keyboardHidden"
310 android:screenOrientation="user"
311 android:theme="@style/BugleTheme.DialogActivity"
312 android:exported="false">
313 </activity>
314
315 <provider android:name=".datamodel.MessagingContentProvider" android:label="@string/app_name"
316 android:authorities="com.android.messaging.datamodel.MessagingContentProvider"
317 android:exported="false" >
318 </provider>
319
320 <provider android:name=".datamodel.MmsFileProvider"
321 android:authorities="com.android.messaging.datamodel.MmsFileProvider"
Tom Taylora2aa53f2016-12-05 16:39:55 -0800322 android:grantUriPermissions="true"
323 android:exported="false" />
Mike Doddd3b009a2015-08-11 11:16:59 -0700324
325 <provider android:name=".datamodel.MediaScratchFileProvider"
326 android:authorities="com.android.messaging.datamodel.MediaScratchFileProvider"
Tom Taylora2aa53f2016-12-05 16:39:55 -0800327 android:grantUriPermissions="true"
328 android:exported="false" />
Mike Doddd3b009a2015-08-11 11:16:59 -0700329
330
331 <!-- Action Services -->
Raman Tenneticdf40bb2019-02-12 20:15:13 -0800332 <service android:name=".datamodel.action.ActionServiceImpl"
333 android:permission="android.permission.BIND_JOB_SERVICE"
334 android:exported="true"/>
335 <service android:name=".datamodel.action.BackgroundWorkerService"
336 android:permission="android.permission.BIND_JOB_SERVICE"
337 android:exported="true"/>
Mike Doddd3b009a2015-08-11 11:16:59 -0700338
339 <!-- Sms and Mms related items -->
340
341 <!-- Intents for Notification and Pre-KLP Delivery -->
342 <!-- Registered with the highest possible priority (max_int) -->
343 <receiver android:name=".receiver.MmsWapPushReceiver"
344 android:enabled="false"
345 android:permission="android.permission.BROADCAST_WAP_PUSH">
346 <intent-filter android:priority="2147483647">
347 <action android:name="android.provider.Telephony.WAP_PUSH_RECEIVED" />
348 <data android:mimeType="application/vnd.wap.mms-message" />
349 </intent-filter>
350 </receiver>
351 <receiver android:name=".receiver.SmsReceiver"
352 android:enabled="false"
353 android:permission="android.permission.BROADCAST_SMS">
354 <intent-filter android:priority="2147483647">
355 <action android:name="android.provider.Telephony.SMS_RECEIVED" />
356 </intent-filter>
357 <intent-filter android:priority="2147483647">
358 <action android:name="android.provider.Telephony.MMS_DOWNLOADED" />
359 </intent-filter>
360 </receiver>
361
362 <!-- Intents for aborting SMS/MMS broadcasts pre-KLP -->
363 <!-- Registered for a priority just ahead of inbox Messaging apps (2) -->
364 <receiver android:name=".receiver.AbortMmsWapPushReceiver"
365 android:enabled="false"
366 android:permission="android.permission.BROADCAST_WAP_PUSH">
367 <intent-filter android:priority="3">
368 <action android:name="android.provider.Telephony.WAP_PUSH_RECEIVED" />
369 <data android:mimeType="application/vnd.wap.mms-message" />
370 </intent-filter>
371 </receiver>
372 <receiver android:name=".receiver.AbortSmsReceiver"
373 android:enabled="false"
374 android:permission="android.permission.BROADCAST_SMS">
375 <intent-filter android:priority="3">
376 <action android:name="android.provider.Telephony.SMS_RECEIVED" />
377 </intent-filter>
378 </receiver>
379
380 <!-- Intents for KLP+ Delivery -->
381 <receiver android:name=".receiver.MmsWapPushDeliverReceiver"
382 android:permission="android.permission.BROADCAST_WAP_PUSH">
383 <intent-filter>
384 <action android:name="android.provider.Telephony.WAP_PUSH_DELIVER" />
385 <data android:mimeType="application/vnd.wap.mms-message" />
386 </intent-filter>
387 </receiver>
388 <receiver android:name=".receiver.SmsDeliverReceiver"
389 android:permission="android.permission.BROADCAST_SMS">
390 <intent-filter>
391 <action android:name="android.provider.Telephony.SMS_DELIVER" />
392 </intent-filter>
393 </receiver>
394
395 <receiver android:name=".receiver.SendStatusReceiver"
396 android:exported="false">
397 <intent-filter>
398 <action android:name="com.android.messaging.receiver.SendStatusReceiver.MESSAGE_SENT" />
399 <data android:scheme="content" />
400 </intent-filter>
401 <intent-filter>
402 <action android:name="com.android.messaging.receiver.SendStatusReceiver.MESSAGE_DELIVERED" />
403 </intent-filter>
404 <intent-filter>
405 <action android:name="com.android.messaging.receiver.SendStatusReceiver.MMS_SENT" />
406 <data android:scheme="content" />
407 </intent-filter>
408 <intent-filter>
409 <action android:name="com.android.messaging.receiver.SendStatusReceiver.MMS_DOWNLOADED" />
410 <data android:scheme="content" />
411 </intent-filter>
412 </receiver>
413
414 <service android:name=".datamodel.NoConfirmationSmsSendService"
415 android:permission="android.permission.SEND_RESPOND_VIA_MESSAGE"
416 android:exported="true" >
417 <intent-filter>
418 <action android:name="android.intent.action.RESPOND_VIA_MESSAGE" />
419 <category android:name="android.intent.category.DEFAULT" />
420 <data android:scheme="sms" />
421 <data android:scheme="smsto" />
422 </intent-filter>
423 </service>
424
425 <activity android:name=".ui.ClassZeroActivity"
426 android:configChanges="orientation|screenSize|keyboardHidden"
427 android:screenOrientation="user"
428 android:label="@string/class_0_message_activity"
429 android:theme="@style/BugleTheme.DialogActivity"
430 android:launchMode="singleTask"
431 android:excludeFromRecents="true">
432 </activity>
433
434 <activity android:name=".ui.SmsStorageLowWarningActivity"
435 android:theme="@style/Invisible"
436 android:configChanges="orientation|screenSize|keyboardHidden" />
437
438 <activity android:name=".ui.appsettings.ApnSettingsActivity"
439 android:configChanges="orientation|screenSize|keyboardHidden"
440 android:screenOrientation="user"
441 android:theme="@style/BugleTheme"
442 android:parentActivityName="com.android.messaging.ui.appsettings.SettingsActivity" />
443
444 <activity android:name=".ui.appsettings.ApnEditorActivity"
445 android:configChanges="orientation|screenSize|keyboardHidden"
446 android:screenOrientation="user"
447 android:theme="@style/BugleTheme"
448 android:parentActivityName="com.android.messaging.ui.appsettings.ApnSettingsActivity"/>
449
450 <receiver android:name=".receiver.StorageStatusReceiver">
451 <intent-filter>
452 <action android:name="android.intent.action.DEVICE_STORAGE_LOW" />
453 </intent-filter>
454 <intent-filter>
455 <action android:name="android.intent.action.DEVICE_STORAGE_OK" />
456 </intent-filter>
457 </receiver>
458
459 <receiver android:name=".receiver.BootAndPackageReplacedReceiver">
460 <intent-filter>
461 <action android:name="android.intent.action.BOOT_COMPLETED"/>
462 <action android:name="android.intent.action.MY_PACKAGE_REPLACED"/>
463 </intent-filter>
464 </receiver>
465
466 <!-- Broadcast receiver that will be notified to reset notifications -->
467 <receiver
468 android:name=".receiver.NotificationReceiver"
469 android:exported="false">
470 </receiver>
471
472 <!-- Broadcast receiver that will be notified for ActionService alarms. -->
473 <receiver
474 android:name=".datamodel.action.ActionServiceImpl$PendingActionReceiver"
475 android:exported="false">
476 <intent-filter>
477 <action android:name="com.android.messaging.datamodel.PENDING_ACTION" />
478 </intent-filter>
479 </receiver>
480
481 <receiver android:name=".receiver.DefaultSmsSubscriptionChangeReceiver">
482 <intent-filter>
Malcolm Chen5aa11872017-04-27 14:54:12 -0700483 <action android:name="android.telephony.action.DEFAULT_SMS_SUBSCRIPTION_CHANGED"/>
Mike Doddd3b009a2015-08-11 11:16:59 -0700484 </intent-filter>
485 </receiver>
486
487 <!-- Widget that displays the conversation list -->
488 <receiver android:name=".widget.BugleWidgetProvider"
489 android:label="@string/widget_conversation_name">
490 <intent-filter>
491 <action android:name="android.appwidget.action.APPWIDGET_UPDATE" />
492 </intent-filter>
493 <intent-filter>
494 <action android:name="com.android.Bugle.intent.action.ACTION_NOTIFY_CONVERSATIONS_CHANGED" />
495 </intent-filter>
496 <meta-data android:name="android.appwidget.provider"
497 android:resource="@xml/widget_conversation_list" />
498 </receiver>
499
500 <!-- Widget that displays the messages of a single conversation -->
501 <receiver android:name=".widget.WidgetConversationProvider"
502 android:label="@string/widget_conversation_name">
503 <intent-filter>
504 <action android:name="android.appwidget.action.APPWIDGET_UPDATE" />
505 </intent-filter>
506 <intent-filter>
507 <action android:name="com.android.Bugle.intent.action.ACTION_NOTIFY_MESSAGES_CHANGED" />
508 </intent-filter>
509 <meta-data android:name="android.appwidget.provider"
510 android:resource="@xml/widget_conversation" />
511 </receiver>
512
513 <service android:name=".widget.WidgetConversationListService"
514 android:permission="android.permission.BIND_REMOTEVIEWS"
515 android:exported="false" />
516
517 <service android:name=".widget.WidgetConversationService"
518 android:permission="android.permission.BIND_REMOTEVIEWS"
519 android:exported="false" />
520
521 <activity android:name=".ui.WidgetPickConversationActivity"
522 android:theme="@style/BugleTheme"
523 android:label="@string/app_name" >
524 <intent-filter>
525 <action android:name="android.appwidget.action.APPWIDGET_CONFIGURE" />
526 </intent-filter>
527 </activity>
528
Aurimas Liutikas1b693ea2018-04-09 17:17:41 -0700529 <service android:name="androidx.appcompat.mms.MmsService"/>
Mike Doddd3b009a2015-08-11 11:16:59 -0700530 </application>
531
532</manifest>