Android WRITE_EXTERNAL_STORAGE permission requires app restart - EACCES (Permission denied)
Currently working to implement new Android 6.0 (Marshmallow) run-time permission model for one my apps. During testing on the emulator I found quite annoying bug. When user grants WRITE_EXTERNAL_STORAGE on-demand permission, the app still cannot write (nor read) from external storage. For permission changes to take affect you have to kill and restart the app.
Found a related bug reported on android-developer-preview. It was for a Developer Preview release and the case was closed since Marshmallow has been released publicly....
Uploading existing Android Studio project to SVN (Subversion)
I develop few Android apps during my spare time and until now I have been syncing project folders between my Synology NAS and PCs/Laptops using excellent Beyond Compare. Finally, I decided to get a bit more sophisticated and started using Subversion (SVN) to sync and track my dev projects.
It's been quite some time since I last used SVN, so this may not be the most efficient way to set everything up, but here it is:
- Install SVN Server. You can choose any flavour you want. In my particular case I used Synology NAS version.
Android Studio automatically adds Contacts permission
After updating my Fuel Log app to take advantage of Android 6.0 (Marshmallow) run-time permissions, I noticed that app's permission page (Settings > Apps > [app name] > Permissions) contains Contacts permission that is not present AndroidManifest.xml (nor anywhere else within my app).
Unable to find optional library - org.apache.http.legacy
Android Studio suddenly (and for no apparent reason) started complaining that it could not find org.apache.http.legacy (which was added to build.gradle as a legacy library).
Warning: Unable to find optional library: org.apache.http.legacy
The issue was caused by a missing optional.json file that was supposed to be located in Android SDK folder ...AndroidSDK\platforms\android-23\optional