I wrote a program back in 2017 that was originally for the Zebra TC8000 Mobile Computer and the only thing that it was used for was taking inventory in our stores. The program was able to connect to the back office computer using TCP/IP and transfer a file using a SMB share from the back office to the external storage directory on the hand held. After the inventory was completed, the hand held would then connect back to the back office and transfer the data file from the external storage to the back office computer to 'finalize' the inventory. The issue I am running into is that the TC8300 device will not let me have access to the external storage directory. I try and run Environment.getExternalStorage().canWrite() and it returns false. Anyone else having this issue?
By the way, I realize that the Android version is different and that we may be fighting some issues with Scoped Storage but I have looked into opting out using the requestLegacyStorage inside the android manifest since the API version is 29 and not 30 (this doesn't work in API 30 as they are forcing scoped storage). Theoretically this should work but it doesn't. Any info would be helpful!
2 Replies
Hi,
If you're running on A11, even if you target API 29 you'll still be subject to Scoped Storage Restrictions. Please refer to this guide for more info: https://developer.zebra.com/blog/scoped-storage-enterprise-applications
We also have some migration guides available here: https://techdocs.zebra.com/bestpractices/migration/
Thanks,
James
Scoped Storage Restrictions will persist on A11 installations, regardless of whether you aim for API 29 or not. You can learn more at https://developer.zebra.com/blog/scoped-storage-enterprise-applications survivor io