簡體   English   中英

Google Play崩潰報告中的AndroidRuntimeException

[英]AndroidRuntimeException from Google Play Crash Report

我在Google Play商店中有一個應用,對大多數人來說都可以正常運行。 但是,通過Google故障報告報告了90起崩潰,其中包括:

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:847)
at android.content.ContextWrapper.startActivity(ContextWrapper.java:276)
at android.webkit.CallbackProxy.uiOverrideUrlLoading(CallbackProxy.java:242)
at android.webkit.CallbackProxy.handleMessage(CallbackProxy.java:330)
at android.os.Handler.dispatchMessage(Handler.java:99)
at android.os.Looper.loop(Looper.java:137)
at android.app.ActivityThread.main(ActivityThread.java:4429)
at java.lang.reflect.Method.invokeNative(Native Method)
at java.lang.reflect.Method.invoke(Method.java:511)
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:3151)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:2918)
at dalvik.system.NativeStart.main(Native Method)

我在網上瀏覽了一下,但是我所能找到的只是添加intent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);

但這對我不起作用,因為我沒有在代碼中調用startActivity() 我確實調用了startActivityForResult()但指定FLAG_ACTIVITY_NEW_TASK標志將停止在onActivityResult()返回結果。

這是在我的主要活動中唯一具有從onCreate()調用startActivityForResult()的代碼:

private void load()
{
    Intent loadBeats = new Intent(this, BeatListActivity.class);
    startActivityForResult(loadBeats, SELECT_BEAT_ACTIVITY);
}

在我的任何設備或虛擬設備上,我從未真正發生過此錯誤! 這一切都很難解決。

有任何想法嗎?

在提出有用的評論之后,@ ReubenScratton,在我提出問題之后,我想我已經找到了問題/解決方案!

在我的代碼中,我不使用startActivity() ,這使我感到困惑。 但是我確實使用了AdView(admob廣告)4.1.1版,它似乎確實調用了startActivity() 我在搜索Google后發現了這一點。 根據我的問題,其他人使用該版本的AdView(GoogleAdMobAdsSdk-4-1-1.jar)報告了相同的錯誤。

我已經用較新的版本更新了我的應用程序,到目前為止,沒有更多錯誤了!

如果不是這種情況,我將報告。

只是加起來

插頁式廣告也會發生這種情況

您必須傳遞活動上下文而不是應用程序上下文

InterstitialAd interstitial = new InterstitialAd(this);

如果有碎片

InterstitialAd interstitial = new InterstitialAd(getActivity());

並不是

InterstitialAd interstitial = new InterstitialAd(getActivity().getApplicationContext());

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM