so I've been using this free security app called Sophos Intercept X for mobile
which is an endpoint security product, on an app that I had been working on. The security app tells me my app can ask android to install another app (Trigger installation) and also starts the app when the device starts (Start at device start). Problem is, I've never specified any kind of those permissions in the AndroidManifest.xml
Below is the list of user permission in my AndroidManifest.xml
:
<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
<uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" />
<uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION" />
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
<uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE" />
<uses-permission android:name="android.permission.CAMERA" />
<uses-permission android:name="android.permission.WAKE_LOCK" />
<uses-permission android:name="com.android.vending.BILLING" />
<uses-permission android:name="android.permission.ACCESS_MEDIA_LOCATION"/>
Am I missing something here? Based on my research I would need to have
<uses-permission android:name="android.permission.REQUEST_INSTALL_PACKAGES/>
and/or
<uses-permission android:name="android.permission.INSTALL_PACKAGES/>
in order to install another app within the app.
As for starting the app on boot requires the permission:
<uses-permission android:name="android.permission.RECEIVE_BOOT_COMPLETED" />
So my question is, is this security app Sophos Intercept X
simply not 100% reliable or are there actually other ways that can cause my app to:
- Install another app
- Start the app once the device starts
Below contains some resources that I've been looking at:
Install Application programmatically on Android
How can I start android application on device boot?
After looking at the merged version I see:
<uses-permission android:name="android.permission.RECEIVE_BOOT_COMPLETED" />
<uses-permission android:name="android.permission.BIND_GET_INSTALL_REFERRER_SERVICE" />