2013-04-09 129 views
1

我在從谷歌Android應用程序有一個低於崩潰報告發揮的Android應用程序崩潰玩崩潰報告

android.util.AndroidRuntimeException: Calling startActivity() from outside of an Activity context requires the FLAG_ACTIVITY_NEW_TASK flag. Is this really what you want? 
at android.app.ContextImpl.startActivity(ContextImpl.java:625) 
at android.content.ContextWrapper.startActivity(ContextWrapper.java:258) 
at android.webkit.CallbackProxy.uiOverrideUrlLoading(CallbackProxy.java:229) 
at android.webkit.CallbackProxy.handleMessage(CallbackProxy.java:336) 
at android.os.Handler.dispatchMessage(Handler.java:99) 
at android.os.Looper.loop(Looper.java:123) 
at android.app.ActivityThread.main(ActivityThread.java:4633) 
at java.lang.reflect.Method.invokeNative(Native Method) 
at java.lang.reflect.Method.invoke(Method.java:521) 
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:858) 
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:616) 
at dalvik.system.NativeStart.main(Native Method) 

我不知道如果我的編碼錯誤或它的一款Android錯誤。 請幫我理解這個問題。

謝謝。

+0

根據我的知識「活動的上下文需要FLAG_ACTIVITY_NEW_TASK」這表明你從外部使用StartActivity()訪問上下文,所以你必須設置標誌FLAG_ACTIVITY_NEW_TASK – 2013-04-09 16:48:23

+0

@Arju看看堆棧跟蹤它看起來不存在OP的代碼在那裏。這就是所有的Android組件。 – 2013-04-09 16:49:56

+0

發佈您的代碼。 – 2013-04-09 17:01:01

回答

0

有一個標誌你的意圖丟失:

Intent intent = new Intent(this, SomeActivity.class); 
intent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK) 
startActivity(intent); 

希望這有助於....乾杯!

+0

好的...但是如果該標誌是必須的,爲什麼每次應用程序啓動時都不會崩潰。爲什麼它現在崩潰?,我的意思是有大約3500下載,並且崩潰現在發生了?..標誌的目的是什麼? – Santosh 2013-04-09 16:58:03

+0

你的'startActivity()'調用有什麼條件嗎?什麼是調用上下文?你是否始終從其他活動開始活動? – Trinimon 2013-04-09 17:06:15

+1

@Santosh它不同於其他設備。主要是「定製ROM」和中國手機將導致這樣的事情:D。我討厭android的東西是。沒有保險,您的應用程序將在每個Android設備上工作。所以很糟糕tho – k0sh 2013-04-09 17:16:49