-
Notifications
You must be signed in to change notification settings - Fork 6
Expand file tree
/
Copy pathAndroidManifest.xml
More file actions
262 lines (205 loc) · 10.9 KB
/
Copy pathAndroidManifest.xml
File metadata and controls
262 lines (205 loc) · 10.9 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
package="edu.mit.mobile.android.locast.example"
android:versionCode="1"
android:versionName="0.1" >
<uses-sdk
android:minSdkVersion="8"
android:targetSdkVersion="17" />
<!-- for sensing location -->
<uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION" />
<uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" />
<!-- to store media -->
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
<!-- to talk with the server -->
<uses-permission android:name="android.permission.INTERNET" />
<!-- account system -->
<uses-permission android:name="android.permission.GET_ACCOUNTS" />
<uses-permission android:name="android.permission.USE_CREDENTIALS" />
<uses-permission android:name="android.permission.MANAGE_ACCOUNTS" />
<uses-permission android:name="android.permission.AUTHENTICATE_ACCOUNTS" />
<!-- sync -->
<uses-permission android:name="android.permission.READ_SYNC_STATS" />
<uses-permission android:name="android.permission.READ_SYNC_SETTINGS" />
<uses-permission android:name="android.permission.WRITE_SYNC_SETTINGS" />
<uses-permission android:name="android.permission.BROADCAST_STICKY" />
<!-- to show more useful error messages if there's a loss of connectivity -->
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
<uses-feature android:name="android.hardware.camera" />
<!-- Google Maps API v2 -->
<permission
android:name="edu.mit.mobile.android.locast.example.permission.MAPS_RECEIVE"
android:protectionLevel="signature" />
<uses-permission android:name="edu.mit.mobile.android.locast.example.permission.MAPS_RECEIVE" />
<!-- Needed? -->
<uses-permission android:name="com.google.android.providers.gsf.permission.READ_GSERVICES" />
<!-- Maps API needs OpenGL ES 2.0. -->
<uses-feature
android:glEsVersion="0x00020000"
android:required="true" />
<!-- end Google Maps API -->
<application
android:name="edu.mit.mobile.android.locast.app.LocastApplication"
android:allowBackup="true"
android:hardwareAccelerated="true"
android:icon="@drawable/ic_launcher"
android:label="@string/app_name"
android:theme="@style/AppTheme" >
<!-- specify the URL of the site here. Make sure to update the URLs below too. -->
<meta-data
android:name="edu.mit.mobile.android.locast.base_url"
android:value="https://locast.mit.edu/openlocast/api/" />
<!-- Google Maps API v2 -->
<meta-data
android:name="com.google.android.maps.v2.API_KEY"
android:value="" />
<!-- end Google Maps API v2 -->
<meta-data
android:name="edu.mit.mobile.android.maps.GOOGLE_STATIC_MAPS_API_KEY"
android:value="" />
<activity
android:name=".ExampleActivity"
android:label="@string/title_activity_example" >
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
<!-- casts -->
<activity
android:name=".app.CastViewEditActivity"
android:uiOptions="splitActionBarWhenNarrow" >
<intent-filter>
<action android:name="android.intent.action.VIEW" />
<category android:name="android.intent.category.DEFAULT" />
<data android:mimeType="vnd.android.cursor.item/vnd.edu.mit.mobile.android.locast.example.cast" />
</intent-filter>
<intent-filter>
<action android:name="android.intent.action.EDIT" />
<category android:name="android.intent.category.DEFAULT" />
<data android:mimeType="vnd.android.cursor.item/vnd.edu.mit.mobile.android.locast.example.cast" />
</intent-filter>
<intent-filter>
<action android:name="android.intent.action.INSERT" />
<category android:name="android.intent.category.DEFAULT" />
<data android:mimeType="vnd.android.cursor.dir/vnd.edu.mit.mobile.android.locast.example.cast" />
</intent-filter>
</activity>
<activity android:name=".app.CastListActivity" >
<intent-filter>
<action android:name="android.intent.action.VIEW" />
<category android:name="android.intent.category.DEFAULT" />
<data android:mimeType="vnd.android.cursor.dir/vnd.edu.mit.mobile.android.locast.example.cast" />
</intent-filter>
</activity>
<!-- collections -->
<activity android:name=".app.CollectionDetailActivity" >
<intent-filter>
<action android:name="android.intent.action.VIEW" />
<category android:name="android.intent.category.DEFAULT" />
<data android:mimeType="vnd.android.cursor.item/vnd.edu.mit.mobile.android.locast.example.collection" />
</intent-filter>
</activity>
<!-- auth -->
<activity android:name=".accounts.AuthenticatorActivity" />
<activity android:name=".accounts.RegisterActivity" />
<service
android:name=".accounts.AuthenticationService"
android:exported="true"
android:permission="android.permission.AUTHENTICATE_ACCOUNTS" >
<intent-filter>
<action android:name="android.accounts.AccountAuthenticator" />
</intent-filter>
<!-- ensure the XML document in res/xml/authenticator matches the other values specified in this manifest -->
<meta-data
android:name="android.accounts.AccountAuthenticator"
android:resource="@xml/authenticator" />
</service>
<!--
Synchronization
Ensure that the process below matches the process of the MediaSync and ContentProvider, otherwise they may not work properly.
-->
<service
android:name=".sync.SyncService"
android:exported="true"
android:process="edu.mit.mobile.android.locast.example.Sync"
tools:ignore="ExportedService" >
<intent-filter>
<action android:name="android.content.SyncAdapter" />
</intent-filter>
<!--
The Locast sync framework will often request synchronizing content based on its public address.
Due to this, the intent filter below needs to be configured to match the server that will be used for this site.
If an address is incorrect, it should be removed, as it could break sync for another Locast app.
-->
<intent-filter>
<action android:name="android.intent.action.SYNC" />
<!-- http[s]://mel-pydev.mit.edu/openlocast/api/ -->
<data
android:host="mel-pydev.mit.edu"
android:pathPrefix="/openlocast/api/"
android:scheme="http" />
<data
android:host="mel-pydev.mit.edu"
android:pathPrefix="/openlocast/api/"
android:scheme="https" />
<!-- http[s]://locast.mit.edu/openlocast/api/ -->
<data
android:host="locast.mit.edu"
android:pathPrefix="/openlocast/api/"
android:scheme="http" />
<data
android:host="locast.mit.edu"
android:pathPrefix="/openlocast/api/"
android:scheme="https" />
</intent-filter>
<!--
More often, syncs will be requested based on the local MIME type. These need to be configured based on the authority
being used. See the README for details.
-->
<intent-filter>
<action android:name="android.intent.action.SYNC" />
<category android:name="android.intent.category.DEFAULT" />
<!-- MIME type for a cast -->
<data android:mimeType="vnd.android.cursor.item/vnd.edu.mit.mobile.android.locast.example.cast" />
<data android:mimeType="vnd.android.cursor.dir/vnd.edu.mit.mobile.android.locast.example.cast" />
<!-- MIME type for cast media -->
<data android:mimeType="vnd.android.cursor.item/vnd.edu.mit.mobile.android.locast.example.castmedia" />
<data android:mimeType="vnd.android.cursor.dir/vnd.edu.mit.mobile.android.locast.example.castmedia" />
<!-- MIME type for a collection -->
<data android:mimeType="vnd.android.cursor.item/vnd.edu.mit.mobile.android.locast.example.collection" />
<data android:mimeType="vnd.android.cursor.dir/vnd.edu.mit.mobile.android.locast.example.collection" />
</intent-filter>
<!-- make sure the the associated syncadapter XML file matches the items here -->
<meta-data
android:name="android.content.SyncAdapter"
android:resource="@xml/syncadapter" />
</service>
<!--
The below service definition is for synchronizing media (pictures, videos). This is
the service responsible for uploading/downloading content from the server.
Make sure the process here matches the content provider process below, or it will not work properly.
Additionally, make sure the MIME types match that of the other MIME type definitions. See the README for details.
-->
<service
android:name=".sync.MediaSyncService"
android:exported="false"
android:process="edu.mit.mobile.android.locast.example.Sync" >
<intent-filter>
<action android:name="edu.mit.mobile.android.locast.ACTION_SYNC_RESOURCES" />
<category android:name="android.intent.category.DEFAULT" />
<data android:mimeType="vnd.android.cursor.item/vnd.edu.mit.mobile.android.locast.example.castmedia" />
<data android:mimeType="vnd.android.cursor.dir/vnd.edu.mit.mobile.android.locast.example.castmedia" />
</intent-filter>
</service>
<!--
This defines the content provider. Make sure the authority here matches the one defined in the provider.
Additionally, make sure the process here uses the same namespace as the authority before publishing the app.
-->
<provider
android:name=".data.LocastProvider"
android:authorities="edu.mit.mobile.android.locast.example"
android:exported="false"
android:process="edu.mit.mobile.android.locast.example.Sync" />
</application>
</manifest>