1<manifest package="host.exp.expoview"
2  xmlns:android="http://schemas.android.com/apk/res/android"
3  xmlns:tools="http://schemas.android.com/tools">
4
5  <!-- WHEN_VERSIONING_REMOVE_FROM_HERE -->
6  <supports-screens
7    android:anyDensity="true"
8    android:largeScreens="true"
9    android:normalScreens="true"
10    android:smallScreens="true"
11    android:xlargeScreens="true"></supports-screens>
12  <!-- WHEN_VERSIONING_REMOVE_TO_HERE -->
13
14  <uses-permission android:name="android.permission.INTERNET" />
15  <uses-permission android:name="android.permission.SYSTEM_ALERT_WINDOW" />
16  <uses-permission android:name="android.permission.WAKE_LOCK" />
17  <uses-permission android:name="host.exp.exponent.permission.C2D_MESSAGE" />
18  <uses-permission android:name="android.permission.READ_INTERNAL_STORAGE" />
19  <uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
20  <uses-permission android:name="android.permission.MANAGE_DOCUMENTS" />
21  <uses-permission android:name="android.permission.USE_FINGERPRINT" />
22  <uses-permission android:name="android.permission.MODIFY_AUDIO_SETTINGS" />
23
24  <!-- Used by react-native-netinfo module -->
25  <uses-permission android:name="android.permission.ACCESS_WIFI_STATE" />
26
27  <!-- These require runtime permissions on M -->
28  <!-- All of these must be in the blacklist in xdl/src/detach/AndroidShellApp.js as well -->
29  <uses-permission android:name="android.permission.READ_CONTACTS" />
30  <uses-permission android:name="android.permission.READ_CALENDAR" />
31  <uses-permission android:name="android.permission.WRITE_CALENDAR" />
32  <uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE" />
33  <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
34  <uses-permission android:name="android.permission.CAMERA" />
35  <uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION" />
36  <uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" />
37
38  <uses-feature
39    android:name="android.hardware.camera"
40    android:required="false" />
41  <uses-feature
42    android:name="android.hardware.camera.autofocus"
43    android:required="false" />
44  <uses-feature
45    android:name="android.hardware.location"
46    android:required="false" />
47  <uses-feature
48    android:name="android.hardware.location.gps"
49    android:required="false" />
50  <uses-feature
51    android:name="android.hardware.location.network"
52    android:required="false" />
53  <uses-feature
54    android:name="android.hardware.wifi"
55    android:required="false" />
56  <uses-feature
57    android:name="android.hardware.microphone"
58    android:required="false" />
59  <uses-feature
60    android:name="android.hardware.telephony"
61    android:required="false" />
62  <uses-feature
63    android:name="android.hardware.bluetooth"
64    android:required="false" />
65
66  <application>
67
68    <!-- WHEN_VERSIONING_REMOVE_FROM_HERE -->
69    <!-- Scheduled notifications -->
70    <receiver
71      android:name="host.exp.exponent.notifications.ScheduledNotificationReceiver"
72      android:exported="false" />
73
74    <receiver
75      android:name="host.exp.exponent.notifications.receivers.SchedulingTriggerReceiver"
76      android:exported="true">
77      <intent-filter>
78        <action android:name="android.intent.action.REBOOT" />
79        <action android:name="android.intent.action.BOOT_COMPLETED" />
80        <action android:name="android.intent.action.TIMEZONE_CHANGED" />
81        <action android:name="android.intent.action.TIME_CHANGED" />
82        <action android:name="android.intent.action.QUICKBOOT_POWERON" />
83      </intent-filter>
84    </receiver>
85
86    <!-- WHEN_VERSIONING_REMOVE_TO_HERE -->
87
88    <provider
89      android:name="androidx.core.content.FileProvider"
90      android:authorities="${applicationId}.provider"
91      android:exported="false"
92      android:grantUriPermissions="true">
93      <meta-data
94        android:name="android.support.FILE_PROVIDER_PATHS"
95        android:resource="@xml/provider_paths" />
96    </provider>
97
98    <provider
99      android:name="versioned.host.exp.exponent.modules.api.components.webview.RNCWebViewFileProvider"
100      android:authorities="${applicationId}.fileprovider"
101      android:exported="false"
102      android:grantUriPermissions="true">
103      <meta-data
104        android:name="android.support.FILE_PROVIDER_PATHS"
105        android:resource="@xml/provider_paths" />
106    </provider>
107
108    <meta-data
109      tools:replace="android:value"
110      android:name="org.unimodules.core.AppLoader#react-native-headless"
111      android:value="host.exp.exponent.taskManager.ExpoHeadlessAppLoader" />
112
113    <receiver
114      android:name="host.exp.exponent.notifications.ExpoNotificationsService"
115      android:enabled="true"
116      android:exported="false">
117      <intent-filter>
118        <action android:name="expo.modules.notifications.NOTIFICATION_EVENT" />
119
120        <action android:name="android.intent.action.BOOT_COMPLETED" />
121        <action android:name="android.intent.action.REBOOT" />
122        <action android:name="android.intent.action.QUICKBOOT_POWERON" />
123        <action android:name="com.htc.intent.action.QUICKBOOT_POWERON" />
124
125        <action android:name="android.intent.action.MY_PACKAGE_REPLACED" />
126      </intent-filter>
127    </receiver>
128  </application>
129
130</manifest>
131