| 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 |
|
| 5 |
|
| 6 |
<uses-permission android:name="android.permission.USE_BIOMETRIC" /> |
| 7 |
<uses-permission android:name="android.permission.INTERNET" /> |
| 8 |
|
| 9 |
|
| 10 |
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" /> |
| 11 |
<uses-permission android:name="android.permission.FOREGROUND_SERVICE" /> |
| 12 |
<uses-permission android:name="android.permission.FOREGROUND_SERVICE_SPECIAL_USE" /> |
| 13 |
<uses-permission android:name="android.permission.POST_NOTIFICATIONS" /> |
| 14 |
|
| 15 |
<uses-permission android:name="android.permission.RECEIVE_BOOT_COMPLETED" /> |
| 16 |
|
| 17 |
<application |
| 18 |
android:name=".OxygenHubApp" |
| 19 |
android:allowBackup="true" |
| 20 |
android:dataExtractionRules="@xml/data_extraction_rules" |
| 21 |
android:fullBackupContent="@xml/backup_rules" |
| 22 |
android:icon="@mipmap/ic_launcher" |
| 23 |
android:label="@string/app_name" |
| 24 |
android:roundIcon="@mipmap/ic_launcher_round" |
| 25 |
android:supportsRtl="true" |
| 26 |
android:theme="@style/Theme.OxygenHub"> |
| 27 |
<activity |
| 28 |
android:name=".MainActivity" |
| 29 |
android:exported="true" |
| 30 |
android:theme="@style/Theme.OxygenHub" |
| 31 |
android:windowSoftInputMode="adjustResize"> |
| 32 |
<intent-filter> |
| 33 |
<action android:name="android.intent.action.MAIN" /> |
| 34 |
|
| 35 |
<category android:name="android.intent.category.LAUNCHER" /> |
| 36 |
</intent-filter> |
| 37 |
</activity> |
| 38 |
<service |
| 39 |
android:name=".runner.RunnerService" |
| 40 |
android:exported="false" |
| 41 |
android:foregroundServiceType="specialUse"> |
| 42 |
<property |
| 43 |
android:name="android.app.PROPERTY_SPECIAL_USE_FGS_SUBTYPE" |
| 44 |
android:value="Runs OxygenFlow CI jobs (WebAssembly) for the signed-in account while the phone is charging on Wi-Fi" /> |
| 45 |
</service> |
| 46 |
<receiver |
| 47 |
android:name=".runner.RunnerResume" |
| 48 |
android:exported="false"> |
| 49 |
<intent-filter> |
| 50 |
<action android:name="android.intent.action.BOOT_COMPLETED" /> |
| 51 |
<action android:name="android.intent.action.MY_PACKAGE_REPLACED" /> |
| 52 |
</intent-filter> |
| 53 |
</receiver> |
| 54 |
|
| 55 |
<receiver |
| 56 |
android:name=".widget.HubWidgetReceiver" |
| 57 |
android:exported="true" |
| 58 |
android:label="@string/widget_name"> |
| 59 |
<intent-filter> |
| 60 |
<action android:name="android.appwidget.action.APPWIDGET_UPDATE" /> |
| 61 |
</intent-filter> |
| 62 |
<meta-data |
| 63 |
android:name="android.appwidget.provider" |
| 64 |
android:resource="@xml/hub_widget_info" /> |
| 65 |
</receiver> |
| 66 |
|
| 67 |
<service |
| 68 |
android:name=".alerts.AlertService" |
| 69 |
android:exported="false"> |
| 70 |
<intent-filter> |
| 71 |
<action android:name="com.google.firebase.MESSAGING_EVENT" /> |
| 72 |
</intent-filter> |
| 73 |
</service> |
| 74 |
<service |
| 75 |
android:name=".alerts.LandCheckJob" |
| 76 |
android:exported="false" |
| 77 |
android:permission="android.permission.BIND_JOB_SERVICE" /> |
| 78 |
</application> |
| 79 |
|
| 80 |
</manifest> |