APhotoManager
APhotoManager copied to clipboard
Met with ActivityNotFoundException and crashed
Describe the bug Accidentally met with an ActivityNotFoundException and the app crashed.
To Reproduce Tried to reproduce but didn't success. Hope the logcat ouput could help.
Smartphone (please complete the following information):
- Android version [e.g. Android-7.1] : Android 9.0
- A Photo Manager Version (i.e. 0.4.6.160304) : 0.8.3.200315
Logcat 01-01 06:16:52.161 18321 18321 E AndroidRuntime: FATAL EXCEPTION: main 01-01 06:16:52.161 18321 18321 E AndroidRuntime: Process: de.k3b.android.androFotoFinder.debug, PID: 18321 01-01 06:16:52.161 18321 18321 E AndroidRuntime: android.content.ActivityNotFoundException: No Activity found to handle Intent { act=android.intent.action.EDIT dat=file:///storage/emulated/0/Android/data/com.google.android.apps.maps/testdata/performance.album typ=text/plain (has extras) } 01-01 06:16:52.161 18321 18321 E AndroidRuntime: at android.app.Instrumentation.checkStartActivityResult(Instrumentation.java:2007) 01-01 06:16:52.161 18321 18321 E AndroidRuntime: at android.app.Instrumentation.execStartActivity(Instrumentation.java:1673) 01-01 06:16:52.161 18321 18321 E AndroidRuntime: at android.app.Activity.startActivityForResult(Activity.java:4586) 01-01 06:16:52.161 18321 18321 E AndroidRuntime: at de.k3b.android.widget.ActivityWithCallContext.startActivityForResultImpl(ActivityWithCallContext.java:146) 01-01 06:16:52.161 18321 18321 E AndroidRuntime: at de.k3b.android.widget.ActivityWithCallContext.startActivity(ActivityWithCallContext.java:136) 01-01 06:16:52.161 18321 18321 E AndroidRuntime: at de.k3b.android.androFotoFinder.directory.DirectoryPickerFragment.onEdit(DirectoryPickerFragment.java:515) 01-01 06:16:52.161 18321 18321 E AndroidRuntime: at de.k3b.android.androFotoFinder.directory.DirectoryPickerFragment.onPopUpClick(DirectoryPickerFragment.java:431) 01-01 06:16:52.161 18321 18321 E AndroidRuntime: at de.k3b.android.androFotoFinder.directory.DirectoryPickerFragment$10.onMenuItemClick(DirectoryPickerFragment.java:407) 01-01 06:16:52.161 18321 18321 E AndroidRuntime: at android.widget.PopupMenu$1.onMenuItemSelected(PopupMenu.java:105) 01-01 06:16:52.161 18321 18321 E AndroidRuntime: at com.android.internal.view.menu.MenuBuilder.dispatchMenuItemSelected(MenuBuilder.java:776) 01-01 06:16:52.161 18321 18321 E AndroidRuntime: at com.android.internal.view.menu.MenuItemImpl.invoke(MenuItemImpl.java:148) 01-01 06:16:52.161 18321 18321 E AndroidRuntime: at com.android.internal.view.menu.MenuBuilder.performItemAction(MenuBuilder.java:923) 01-01 06:16:52.161 18321 18321 E AndroidRuntime: at com.android.internal.view.menu.MenuBuilder.performItemAction(MenuBuilder.java:913) 01-01 06:16:52.161 18321 18321 E AndroidRuntime: at com.android.internal.view.menu.MenuPopup.onItemClick(MenuPopup.java:128) 01-01 06:16:52.161 18321 18321 E AndroidRuntime: at android.widget.AdapterView.performItemClick(AdapterView.java:318) 01-01 06:16:52.161 18321 18321 E AndroidRuntime: at android.widget.AbsListView.performItemClick(AbsListView.java:1159) 01-01 06:16:52.161 18321 18321 E AndroidRuntime: at android.widget.AbsListView$PerformClick.run(AbsListView.java:3136) 01-01 06:16:52.161 18321 18321 E AndroidRuntime: at android.widget.AbsListView.onTouchUp(AbsListView.java:4064) 01-01 06:16:52.161 18321 18321 E AndroidRuntime: at android.widget.AbsListView.onTouchEvent(AbsListView.java:3822) 01-01 06:16:52.161 18321 18321 E AndroidRuntime: at android.widget.DropDownListView.onTouchEvent(DropDownListView.java:116) 01-01 06:16:52.161 18321 18321 E AndroidRuntime: at android.view.View.dispatchTouchEvent(View.java:12513) 01-01 06:16:52.161 18321 18321 E AndroidRuntime: at android.view.ViewGroup.dispatchTransformedTouchEvent(ViewGroup.java:3024) 01-01 06:16:52.161 18321 18321 E AndroidRuntime: at android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:2705) 01-01 06:16:52.161 18321 18321 E AndroidRuntime: at android.view.ViewGroup.dispatchTransformedTouchEvent(ViewGroup.java:3030) 01-01 06:16:52.161 18321 18321 E AndroidRuntime: at android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:2719) 01-01 06:16:52.161 18321 18321 E AndroidRuntime: at android.view.ViewGroup.dispatchTransformedTouchEvent(ViewGroup.java:3030) 01-01 06:16:52.161 18321 18321 E AndroidRuntime: at android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:2719) 01-01 06:16:52.161 18321 18321 E AndroidRuntime: at android.widget.PopupWindow$PopupDecorView.dispatchTouchEvent(PopupWindow.java:2407) 01-01 06:16:52.161 18321 18321 E AndroidRuntime: at android.view.View.dispatchPointerEvent(View.java:12752) 01-01 06:16:52.161 18321 18321 E AndroidRuntime: at android.view.ViewRootImpl$ViewPostImeInputStage.processPointerEvent(ViewRootImpl.java:5106) 01-01 06:16:52.161 18321 18321 E AndroidRuntime: at android.view.ViewRootImpl$ViewPostImeInputStage.onProcess(ViewRootImpl.java:4909) 01-01 06:16:52.161 18321 18321 E AndroidRuntime: at android.view.ViewRootImpl$InputStage.deliver(ViewRootImpl.java:4426) 01-01 06:16:52.161 18321 18321 E AndroidRuntime: at android.view.ViewRootImpl$InputStage.onDeliverToNext(ViewRootImpl.java:4479) 01-01 06:16:52.161 18321 18321 E AndroidRuntime: at android.view.ViewRootImpl$InputStage.forward(ViewRootImpl.java:4445) 01-01 06:16:52.161 18321 18321 E AndroidRuntime: at android.view.ViewRootImpl$AsyncInputStage.forward(ViewRootImpl.java:4585) 01-01 06:16:52.161 18321 18321 E AndroidRuntime: at android.view.ViewRootImpl$InputStage.apply(ViewRootImpl.java:4453) 01-01 06:16:52.161 18321 18321 E AndroidRuntime: at android.view.ViewRootImpl$AsyncInputStage.apply(ViewRootImpl.java:4642) 01-01 06:16:52.161 18321 18321 E AndroidRuntime: at android.view.ViewRootImpl$InputStage.deliver(ViewRootImpl.java:4426) 01-01 06:16:52.161 18321 18321 E AndroidRuntime: at android.view.ViewRootImpl$InputStage.onDeliverToNext(ViewRootImpl.java:4479) 01-01 06:16:52.161 18321 18321 E AndroidRuntime: at android.view.ViewRootImpl$InputStage.forward(ViewRootImpl.java:4445) 01-01 06:16:52.161 18321 18321 E AndroidRuntime: at android.view.ViewRootImpl$InputStage.apply(ViewRootImpl.java:4453) 01-01 06:16:52.161 18321 18321 E AndroidRuntime: at android.view.ViewRootImpl$InputStage.deliver(ViewRootImpl.java:4426) 01-01 06:16:52.161 18321 18321 E AndroidRuntime: at android.view.ViewRootImpl.deliverInputEvent(ViewRootImpl.java:7092) 01-01 06:16:52.161 18321 18321 E AndroidRuntime: at android.view.ViewRootImpl.doProcessInputEvents(ViewRootImpl.java:7061) 01-01 06:16:52.161 18321 18321 E AndroidRuntime: at android.view.ViewRootImpl.enqueueInputEvent(ViewRootImpl.java:7022) 01-01 06:16:52.161 18321 18321 E AndroidRuntime: at android.view.ViewRootImpl$WindowInputEventReceiver.onInputEvent(ViewRootImpl.java:7195) 01-01 06:16:52.161 18321 18321 E AndroidRuntime: at android.view.InputEventReceiver.dispatchInputEvent(InputEventReceiver.java:186) 01-01 06:16:52.161 18321 18321 E AndroidRuntime: at android.os.MessageQueue.nativePollOnce(Native Method) 01-01 06:16:52.161 18321 18321 E AndroidRuntime: at android.os.MessageQueue.next(MessageQueue.java:326) 01-01 06:16:52.161 18321 18321 E AndroidRuntime: at android.os.Looper.loop(Looper.java:160) 01-01 06:16:52.161 18321 18321 E AndroidRuntime: at android.app.ActivityThread.main(ActivityThread.java:6669) 01-01 06:16:52.161 18321 18321 E AndroidRuntime: at java.lang.reflect.Method.invoke(Native Method) 01-01 06:16:52.161 18321 18321 E AndroidRuntime: at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:493) 01-01 06:16:52.161 18321 18321 E AndroidRuntime: at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:858)
ActivityNotFoundException: No Activity found to handle Intent { act=android.intent.action.EDIT dat=
file:///storage/emulated/0/Android/data/com.google.android.apps.maps/testdata/performance.album
typ=text/plain
this looks like a permission problem: The directory com.google.android.apps.maps
is probably a private directory where other non root apps like apm are not allowed to read.
@k3b Oh, thanks for your quick reply! Indeed, that makes sense. Maybe some logic could be added to avoid this directly crashing?