OpenNoteScanner icon indicating copy to clipboard operation
OpenNoteScanner copied to clipboard

App Crashed when "Storage" permission is revoked.

Open arsadeghi opened this issue 8 years ago • 0 comments

When the "Storage" permission is revoked ("Camera" permission is granted) the app crashes. (see the gif below).

(Android 5, Nexus 5, API 23) ezgif com-optimize

IMHO, the APIs for checking(checkSelfPermission) Storage permission should get called just before saving the picture.

The stack trace:

02-13 10:55:11.210  3301  3323 E AndroidRuntime: FATAL EXCEPTION: Worker Thread
02-13 10:55:11.210  3301  3323 E AndroidRuntime: Process: com.todobom.opennotescanner, PID: 3301
02-13 10:55:11.210  3301  3323 E AndroidRuntime: java.lang.SecurityException: Permission Denial: writing com.android.providers.media.MediaProvider uri content://media/external/images/media from pid=3301, uid=10058 requires android.permission.WRITE_EXTERNAL_STORAGE, or grantUriPermission()
02-13 10:55:11.210  3301  3323 E AndroidRuntime: 	at android.os.Parcel.readException(Parcel.java:1599)
02-13 10:55:11.210  3301  3323 E AndroidRuntime: 	at android.database.DatabaseUtils.readExceptionFromParcel(DatabaseUtils.java:183)
02-13 10:55:11.210  3301  3323 E AndroidRuntime: 	at android.database.DatabaseUtils.readExceptionFromParcel(DatabaseUtils.java:135)
02-13 10:55:11.210  3301  3323 E AndroidRuntime: 	at android.content.ContentProviderProxy.insert(ContentProviderNative.java:476)
02-13 10:55:11.210  3301  3323 E AndroidRuntime: 	at android.content.ContentResolver.insert(ContentResolver.java:1231)
02-13 10:55:11.210  3301  3323 E AndroidRuntime: 	at com.todobom.opennotescanner.helpers.Utils.addImageToGallery(Utils.java:215)
02-13 10:55:11.210  3301  3323 E AndroidRuntime: 	at com.todobom.opennotescanner.OpenNoteScannerActivity.saveDocument(OpenNoteScannerActivity.java:972)
02-13 10:55:11.210  3301  3323 E AndroidRuntime: 	at com.todobom.opennotescanner.ImageProcessor.processPicture(ImageProcessor.java:162)
02-13 10:55:11.210  3301  3323 E AndroidRuntime: 	at com.todobom.opennotescanner.ImageProcessor.handleMessage(ImageProcessor.java:91)
02-13 10:55:11.210  3301  3323 E AndroidRuntime: 	at android.os.Handler.dispatchMessage(Handler.java:102)
02-13 10:55:11.210  3301  3323 E AndroidRuntime: 	at android.os.Looper.loop(Looper.java:148)
02-13 10:55:11.210  3301  3323 E AndroidRuntime: 	at android.os.HandlerThread.run(HandlerThread.java:61)

arsadeghi avatar Feb 13 '17 19:02 arsadeghi