我在GooglePlay上有3个相同的崩溃报告,其中堆栈跟踪看起来好像用户直接启动了内部活动(它没有针对在清单中设置的类别LAUNCHER的意图过滤器)。用户如何启动内部活动
有没有办法做到这一点,我错过了迄今为止?是否可以从当前活动创建一种快捷方式,并稍后使用它来直接启动该活动?
这里是堆栈跟踪从GOOGLEPLAY:
java.lang.RuntimeException: Unable to start activity ComponentInfo{com.eb.ohrh.parawind.free/eb.wind.activity.logbook.LogBookSingleDispActivity}: java.lang.NullPointerException at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:1728) at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:1747) at android.app.ActivityThread.access$1500(ActivityThread.java:155) at android.app.ActivityThread$H.handleMessage(ActivityThread.java:993) at android.os.Handler.dispatchMessage(Handler.java:130) at android.os.Looper.loop(SourceFile:351) at android.app.ActivityThread.main(ActivityThread.java:3814) at java.lang.reflect.Method.invokeNative(Native Method) at java.lang.reflect.Method.invoke(Method.java:538) at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:901) at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:659) at dalvik.system.NativeStart.main(Native Method) Caused by: java.lang.NullPointerException at eb.wind.views.mapv2.MapWithOverlay.isFlightMode(MapWithOverlay.java:599) at eb.wind.views.mapv2.MapWithOverlay.bindToModel(MapWithOverlay.java:335) at eb.wind.activity.logbook.LogBookSingleDispActivity$MyPagerAdapter.<init>(LogBookSingleDispActivity.java:189) at eb.wind.activity.logbook.LogBookSingleDispActivity.onCreate(LogBookSingleDispActivity.java:39) at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1082) at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:1692) ... 11 more
LogBookSingleDispActivity是内部活动。没有其他活动的准备步骤就无法启动。
任何想法,如何发生。
我刚刚尝试以下操作:导航到“内部”活动。使用主页按钮关闭应用程序(这意味着它仍在后台运行,并将从内部活动重新启动),然后使用应用程序管理器强制停止应用程序。如果我从最近的任务列表重新启动应用程序,它将打开默认启动活动。这正是我所期望的。如果应用程序仍处于活动状态,或者启动程序活动打开,如果应用程序已被操作系统停止,则最后一个活动会打开。是否有另一种方法来模拟您描述的操作系统行为? – user2808624 2014-09-28 13:33:05
@ user2808624:“然后使用应用程序管理器强制停止应用程序” - Android没有“应用程序管理器”。如果你的意思是“强制停止”,通常通过设置中的“强制停止”按钮来完成,这不是用户通常会做的事情。 “有没有另一种方法来模拟你描述的操作系统行为?” - 通过DDMS终止进程。 – CommonsWare 2014-09-28 14:07:58
“Android没有'应用程序管理器'”?现在,这正是应用程序可以停止的设置的标题。但是你是对的,使用DDMS来停止所描述行为的过程结果。 – user2808624 2014-09-28 19:17:27