Android 11 and permission settings with a legacy script do not seem to work

HV
Henk, van Asselt
Reverse IT ( Retail Trading Business B.V.)

I am using a Honeywell CT60 with Android 11 with MobiControl 15.4.2.1020.
Supported APIs: RC Virtual Display, Work Managed Device, Advanced Android Plus 1.18, 1402


The latest version of Wavelink Velocity is installed, together with VelocityFileAssistant to have a workaround of the Android 11+ restriction to access /sdcard/Android/data/ folders.
This tool will copy files from the /sdcard/com.wavelink.velocity folder to the /sdcard/Android/data/com.wavelink.velocity/files folder.

Now, this tool requires external storage permissions which can succesfully set over ADB as follows:

adb shell appops set --uid com.wavelink.velocityfileassistant READ_EXTERNAL_STORAGE allow
adb shell appops set --uid com.wavelink.velocityfileassistant WRITE_EXTERNAL_STORAGE allow
adb shell appops set --uid com.wavelink.velocityfileassistant MANAGE_EXTERNAL_STORAGE allow

However, when using the following legacy script, the permissions are not as expected, and a user does still need to move a slider to grant permissions in the Velocity File Assistent when started for the first time.

afw_set_permission_grant_state com.wavelink.velocityfileassistant android.permission.READ_EXTERNAL_STORAGE allow
afw_set_permission_grant_state com.wavelink.velocityfileassistant android.permission.WRITE_EXTERNAL_STORAGE allow
afw_set_permission_grant_state com.wavelink.velocityfileassistant android.permission.MANAGE_EXTERNAL_STORAGE allow

What am I missing here?

Regards,
Henk

3 years ago
SOTI MobiControl
ANSWERS
MB

HI Henk,

Honeywell has a Solution.

That is installing a additional App and send then the command to set the MobiCOntrol Application with the Full Permission.

Can you get in touch with a Honeywell Soultion Architect?

HV
Henk, van Asselt
3 years ago

Thanks Marcus,

I appreciate your response.
I know a few Honeywell Solution Architects, so I will try it this way.

Have a nice day !
Henk

MD
Matt Dermody Diamond Contributor
3 years ago

MANAGE_EXTERNAL_STORAGE Permission can't be granted silently in the background via this concept. You do have to rely on a manufacturer specific solution in order to have that permission granted for an app. For Zebra devices its a little complicated, requiring the app signature, and some unique MX. I imagine Honeywell would have something similar. 

KW
Katie Williams
3 years ago

Hi Matt,

I am using a Zebra TC72 device and trying to grant all file access permissions and you are correct, none of those scripts listed are working. So I am now using StageNow AccessMgr and it is asking me for application signature. I assume this is the application signature from the Velocity File Assistant APK, is that correct? Would i need to reach out to Velocity to retrieve this signature file? or is this something that I get after building out the PCG in MobiControl Package Studio?

N
NTMOD@SOTI
3 years ago

Hi Henk, van Asselt,

Thank you for posting on SOTI Central.

Android 11 brings about some important changes related to the operating system’s restrictions on scoped storage. As a result, an app running on Android 11 or above will only have restricted access to external storage. Please find attached SOTI Central as per below to find the right resolution as per your requirement.

https://discussions.soti.net/articles/impact-of-android-11-scoped-storage-restrictions-on-android-agent

Hi Marcus Breitenthaler,

Thank you for your response on this post.

Kind Regards,

Technical Support | SOTI Inc. |1.905.624.9828 | support@soti.net | www.soti.net |

KW
Katie Williams
a year ago

Just an update on this one, i know it's been a while but i find myself scrolling through forums that were posted years ago trying to find solutions...

For scoped storage deal, i worked with Zebra where i stored my file in enterprise/usr folder (outside of the sd card) instead of the data folder where it had been previously stored until scoped storage removed the access to write to this folder. I created a file sync rule in SOTI with __chmod 777 enterprise/usr/file script to sync the file to this folder. Hope this helps!