Reduce permissions set
Google Play describes the app as needing:
This app has access to:
Photos/Media/Files
read the contents of your USB storage
modify or delete the contents of your USB storage
Location
precise location (GPS and network-based)
approximate location (network-based)
Microphone
record audio
Storage
read the contents of your USB storage
modify or delete the contents of your USB storage
Wi-Fi connection information
view Wi-Fi connections
Camera
take pictures and videos
Other
download files without notification
receive data from Internet
prevent device from sleeping
run at startup
change your audio settings
view network connections
control vibration
full network access
install shortcuts
uninstall shortcuts
$ aapt d xmltree tor-browser-10.0.4-android-aarch64-multi.apk AndroidManifest.xml | grep android.permission
A: android:name(0x01010003)="android.permission.INTERNET" (Raw: "android.permission.INTERNET")
A: android:name(0x01010003)="android.permission.ACCESS_NETWORK_STATE" (Raw: "android.permission.ACCESS_NETWORK_STATE")
A: android:name(0x01010003)="android.permission.READ_EXTERNAL_STORAGE" (Raw: "android.permission.READ_EXTERNAL_STORAGE")
A: android:name(0x01010003)="android.permission.WRITE_EXTERNAL_STORAGE" (Raw: "android.permission.WRITE_EXTERNAL_STORAGE")
A: android:name(0x01010003)="android.permission.ACCESS_COARSE_LOCATION" (Raw: "android.permission.ACCESS_COARSE_LOCATION")
A: android:name(0x01010003)="android.permission.ACCESS_FINE_LOCATION" (Raw: "android.permission.ACCESS_FINE_LOCATION")
A: android:name(0x01010003)="android.permission.CAMERA" (Raw: "android.permission.CAMERA")
A: android:name(0x01010003)="android.permission.RECORD_AUDIO" (Raw: "android.permission.RECORD_AUDIO")
A: android:name(0x01010003)="android.permission.VIBRATE" (Raw: "android.permission.VIBRATE")
A: android:name(0x01010003)="android.permission.USE_BIOMETRIC" (Raw: "android.permission.USE_BIOMETRIC")
A: android:name(0x01010003)="android.permission.REQUEST_INSTALL_PACKAGES" (Raw: "android.permission.REQUEST_INSTALL_PACKAGES")
A: android:name(0x01010003)="android.permission.FOREGROUND_SERVICE" (Raw: "android.permission.FOREGROUND_SERVICE")
A: android:name(0x01010003)="android.permission.DOWNLOAD_WITHOUT_NOTIFICATION" (Raw: "android.permission.DOWNLOAD_WITHOUT_NOTIFICATION")
A: android:name(0x01010003)="android.permission.ACCESS_WIFI_STATE" (Raw: "android.permission.ACCESS_WIFI_STATE")
A: android:name(0x01010003)="android.permission.USE_FINGERPRINT" (Raw: "android.permission.USE_FINGERPRINT")
A: android:name(0x01010003)="android.permission.WAKE_LOCK" (Raw: "android.permission.WAKE_LOCK")
A: android:name(0x01010003)="android.permission.MODIFY_AUDIO_SETTINGS" (Raw: "android.permission.MODIFY_AUDIO_SETTINGS")
A: android:name(0x01010003)="android.permission.RECEIVE_BOOT_COMPLETED" (Raw: "android.permission.RECEIVE_BOOT_COMPLETED")
A: android:permission(0x01010006)="android.permission.BIND_JOB_SERVICE" (Raw: "android.permission.BIND_JOB_SERVICE")
A: android:permission(0x01010006)="com.google.android.c2dm.permission.SEND" (Raw: "com.google.android.c2dm.permission.SEND")
A: android:permission(0x01010006)="android.permission.BIND_JOB_SERVICE" (Raw: "android.permission.BIND_JOB_SERVICE")
We need:
- android.permission.INTERNET
- android.permission.READ_EXTERNAL_STORAGE
- android.permission.WRITE_EXTERNAL_STORAGE
- android.permission.FOREGROUND_SERVICE
- android.permission.BIND_JOB_SERVICE
We should keep and/or we probably need:
- android.permission.CAMERA
- android.permission.RECORD_AUDIO
- android.permission.REQUEST_INSTALL_PACKAGES
- android.permission.DOWNLOAD_WITHOUT_NOTIFICATION
- android.permission.USE_FINGERPRINT
- android.permission.USE_BIOMETRIC
- android.permission.VIBRATE
- android.permission.MODIFY_AUDIO_SETTINGS
- android.permission.WAKE_LOCK
We can probably delete:
- android.permission.ACCESS_NETWORK_STATE
- android.permission.ACCESS_COARSE_LOCATION
- android.permission.ACCESS_FINE_LOCATION
- android.permission.ACCESS_WIFI_STATE
- com.google.android.c2dm.permission.SEND