summaryrefslogtreecommitdiffhomepage
path: root/android
diff options
context:
space:
mode:
authorAlbin <albin@mullvad.net>2022-09-02 14:20:22 +0200
committerAlbin <albin@mullvad.net>2022-09-03 14:12:50 +0200
commit73343d5c4cf18aa3d48c0cdab6c828d9a683b955 (patch)
treeb5e8642b6d935061e53f5967e5740d004aae2146 /android
parentf5929efafee477ac8fbaaac5f201bc57e05f953c (diff)
downloadmullvadvpn-73343d5c4cf18aa3d48c0cdab6c828d9a683b955.tar.xz
mullvadvpn-73343d5c4cf18aa3d48c0cdab6c828d9a683b955.zip
Explicitly export activity and services
This commit also adds brief documentation in the manifest to motivate the export configuration.
Diffstat (limited to 'android')
-rw-r--r--android/app/src/main/AndroidManifest.xml20
1 files changed, 19 insertions, 1 deletions
diff --git a/android/app/src/main/AndroidManifest.xml b/android/app/src/main/AndroidManifest.xml
index 2cb2809891..59d85b30d4 100644
--- a/android/app/src/main/AndroidManifest.xml
+++ b/android/app/src/main/AndroidManifest.xml
@@ -24,7 +24,12 @@
android:banner="@drawable/banner"
android:name=".MullvadApplication"
tools:ignore="GoogleAppIndexingWarning">
+ <!--
+ MainActivity
+ Must be exported in order to be launchable.
+ -->
<activity android:name="net.mullvad.mullvadvpn.ui.MainActivity"
+ android:exported="true"
android:label="@string/app_name"
android:launchMode="singleTask"
android:configChanges="orientation|screenSize|screenLayout"
@@ -39,7 +44,14 @@
<action android:name="android.service.quicksettings.action.QS_TILE_PREFERENCES" />
</intent-filter>
</activity>
+ <!--
+ MullvadVpnService
+ It's unclear in the documentation whether the service must/should be exported or not,
+ however as it's protected by the bind vpn permission
+ (android.permission.BIND_VPN_SERVICE) it's protected against third party apps/services.
+ -->
<service android:name="net.mullvad.mullvadvpn.service.MullvadVpnService"
+ android:exported="true"
android:permission="android.permission.BIND_VPN_SERVICE"
android:process=":mullvadvpn_daemon"
android:stopWithTask="false">
@@ -56,10 +68,16 @@
<action android:name="net.mullvad.mullvadvpn.quit_action" />
</intent-filter>
</service>
+ <!--
+ MullvadTileService
+ Tile services must be exported and protected by the bind tile permission
+ (android.permission.BIND_QUICK_SETTINGS_TILE).
+ -->
<service android:name="net.mullvad.mullvadvpn.service.MullvadTileService"
+ android:exported="true"
+ android:permission="android.permission.BIND_QUICK_SETTINGS_TILE"
android:label="@string/toggle_vpn"
android:icon="@drawable/small_logo_black"
- android:permission="android.permission.BIND_QUICK_SETTINGS_TILE"
android:process=":mullvadvpn_tile">
<intent-filter>
<action android:name="android.service.quicksettings.action.QS_TILE" />