<?xml version="1.0" encoding="utf-8"?>
<!--
- Copyright © 2021 Soren Stoutner <soren@stoutner.com>.
+ Copyright 2021-2022 Soren Stoutner <soren@stoutner.com>.
This file is part of Privacy Cell <https://www.stoutner.com/privacy-cell>.
<manifest
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
- package="com.stoutner.privacycell"
android:installLocation="auto" >
- <!-- Required to read cell network information. -->
+ <!-- Required to read cell network information. <Dangerous permission> -->
<uses-permission android:name="android.permission.READ_PHONE_STATE" />
- <!-- Required to display a realtime notification icon. -->
+ <!-- Required to display a notification. <Dangerous permission> -->
+ <uses-permission android:name="android.permission.POST_NOTIFICATIONS" />
+
+ <!-- Required to run a foreground service (which is the only type of service that can display notifications). -->
<uses-permission android:name="android.permission.FOREGROUND_SERVICE" />
<!-- Required to start the realtime notification icon at boot. -->
<!-- Support Chromebooks that don't have a touch screen. -->
<uses-feature android:name="android.hardware.touchscreen" android:required="false" />
- <!-- App data is automatically backed up to Google cloud servers unless `android:allowBackup="false"` and `android:fullBackupContent="false"` is set. -->
+ <!-- App data is automatically backed up to Google cloud servers unless `android:allowBackup="false"` and `android:fullBackupContent="false"` is set.
+ `tools:ignore="DataExtractionRules` removes the warning that backups can still transfer data device to device. -->
<application
android:label="@string/privacy_cell"
android:icon="@mipmap/privacy_cell"
android:allowBackup="false"
android:fullBackupContent="false"
android:supportsRtl="true"
- android:theme="@style/Theme.PrivacyCell" >
+ android:theme="@style/Theme.PrivacyCell"
+ android:localeConfig="@xml/locales_config"
+ tools:ignore="DataExtractionRules,UnusedAttribute" >
<!-- Privacy Cell Activity. The label uses the short name so that it isn't truncated under the icon in the launcher on most phones.
`android:launchMode="singleTask"` makes the app launch in a new task instead of inside the task of the program that sends it an intent.
<activity
android:name=".activities.SettingsActivity"
android:label="@string/settings"
- android:screenOrientation="fullUser"
- android:parentActivityName=".activities.PrivacyCellActivity" />
+ android:parentActivityName=".activities.PrivacyCellActivity"
+ android:screenOrientation="fullUser" />
+
+ <!-- Protocols Activity. The `parentActivityName` is used when navigating back. -->
+ <activity
+ android:name=".activities.ProtocolsActivity"
+ android:label="@string/protocols"
+ android:parentActivityName=".activities.PrivacyCellActivity"
+ android:screenOrientation="fullUser" />
<!-- Logcat Activity. The `parentActivityName` is used when navigating back. -->
<activity
</intent-filter>
</receiver>
</application>
-</manifest>
\ No newline at end of file
+</manifest>