0

私は問題があります。動作するさまざまなアクティビティに2つの更新ボタンがありますが、3回目にクリックすると、エラーが発生します。それを制御するためにカーソルを置く必要がありますか?

更新のコード:

refrescar.setOnClickListener(new OnClickListener(){
@Override
public void onClick(View arg0)              {
Intent anterior = getIntent();
anterior.setFlags(Intent.FLAG_ACTIVITY_CLEAR_WHEN_TASK_RESET | Intent.FLAG_ACTIVITY_RESET_TASK_IF_NEEDED);
View vista = getLocalActivityManager().startActivity("registratsi", anterior).getDecorView();
setContentView(vista);
  }
});

06-13 07:22:59.904:E / src(315):

06-13 07:23:01.384:D / dalvikvm(315):GC_EXTERNAL_ALLOCは60msで5105オブジェクト/356600バイトを解放しました06-1307:23:02.315:E / Bitmap(315):06-13 07:23:02.334を返しました:E / src(315):

06-13 07:23:02.694:E / Bitmap(315):返された06-13 07:23:02.704:E / src(315):

06-13 07:23:03.084:E / Bitmap(315):返された06-13 07:23:03.095:E / src(315):

06-13 07:23:03.424:E / dalvikvm-heap(315):531392バイトの外部割り当てがこのプロセスには大きすぎます。06-13 07:23:03.424:E / GraphicsJNI(315):VMは531392バイトを割り当てません06-13 07:23:03.424:D / skia(315):---デコーダー->デコードはfalseを返しました06-13 07:23:03.424:D / AndroidRuntime(315):VMをシャットダウンします06-13 07:23:03.424:W / dalvikvm(315):threadid = 1:スレッドがキャッチされない例外で終了します(group = 0x4001d800)06 -13 07:23:03.464:E / AndroidRuntime(315):致命的な例外:メイン06-13 07:23:03.464:E / AndroidRuntime(315):java.lang.OutOfMemoryError:ビットマップサイズがVMバジェットを超えています06-13 07 :23:03.464:E / AndroidRuntime(315):android.graphics.BitmapFactory.nativeDecodeStream(ネイティブメソッド)06-13 07:23:03.464:E / AndroidRuntime(315):android.graphics.BitmapFactory.decodeStream(BitmapFactory) .java:459)06-13 07:23:03.464:

他のボタン:

    btnReload.setOnClickListener(new OnClickListener()          {           @Override           public void onClick(View arg0)              { //                >Intent anterior = getIntent();
            Intent anterior = new Intent (webPushActivity.this, webPushActivity.class);
             View vista = getLocalActivityManager().startActivity("social",
                     anterior)
                        .getDecorView(); 
                   setContentView(vista);           }       });

その他のエラー:

06-13 09:50:13.493:E / AndroidRuntime(1274):致命的な例外:メイン06-13 09:50:13.493:E / AndroidRuntime(1274):java.lang.RuntimeException:アクティビティComponentInfo{comを開始できません。 nimbosolutions.projecte1 / com.nimbosolutions.projecte1.webPushActivity}:java.lang.NullPointerException 06-13 09:50:13.493:E / AndroidRuntime(1274):android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2663)06 -13 09:50:13.493:E / AndroidRuntime(1274):android.app.ActivityThread.startActivityNow(ActivityThread.java:2503)06-13 09:50:13.493:E / AndroidRuntime(1274):android.app .LocalActivityManager.moveToState(LocalActivityManager.java:127)06-13 09:50:13.493:E / AndroidRuntime(1274):android.app.LocalActivityManager.startActivity(LocalActivityManager.java:339)06-13 09:50:13.493 :E / AndroidRuntime(1274):comで。nimbosolutions.projecte1.webPushActivity $ 3.onClick(webPushActivity.java:177)06-13 09:50:13.493:E / AndroidRuntime(1274):android.view.View.performClick(View.java:2408)06-13 09 :50:13.493:E / AndroidRuntime(1274):android.view.View $ PerformClick.run(View.java:8816)06-13 09:50:13.493:E / AndroidRuntime(1274):android.os Handler.handleCallback(Handler.java:587)06-13 09:50:13.493:E / AndroidRuntime(1274):android.os.Handler.dispatchMessage(Handler.java:92)06-13 09:50:13.493: E / AndroidRuntime(1274):android.os.Looper.loop(Looper.java:123)06-13 09:50:13.493:E / AndroidRuntime(1274):android.app.ActivityThread.main(ActivityThread.java) :4627)06-13 09:50:13.493:E / AndroidRuntime(1274):java.lang.reflect.Method.invokeNative(ネイティブメソッド)06-13 09:50:13.493:E / AndroidRuntime(1274):at java.lang.reflect.Method.invoke(Method.java:521)06-13 09:50:13.493:E / AndroidRuntime(1274):at com.android.internal.os.ZygoteInit $ MethodAndArgsCaller.run(ZygoteInit。 java:868)06-13 09:50:13.493:E / AndroidRuntime(1274):com.android.internal.os.ZygoteInit.main(ZygoteInit.java:626)06-13 09:50:13.493:E / AndroidRuntime(1274):dalvik.system.NativeStart.main(ネイティブメソッド)06-13 09:50:13.493:E / AndroidRuntime(1274):原因:java.lang.NullPointerException 06-13 09:50:13.493: E / AndroidRuntime(1274):com.nimbosolutions.projecte1.webPushActivity.onCreate(webPushActivity.java:71)06-13 09:50:13.493:E / AndroidRuntime(1274):android.app.Instrumentation.callActivityOnCreate(Instrumentation .java:1047)06-13 09:50:13.493:E / AndroidRuntime(1274):android.app.ActivityThreadで。PerformLaunchActivity(ActivityThread.java:2627)06-13 09:50:13.493:E / AndroidRuntime(1274):...15詳細

前もって感謝します!

4

2 に答える 2

0

ビットマップを作成していて、次の行に何が問題なのかが示されています。

java.lang.OutOfMemoryError: bitmap size exceeds VM budget 06-13 07:23:03.464: 

作成しているビットマップが多すぎる可能性があります。または、ビットマップが大きすぎます。古いバージョンのAndroidでは、2番目のビットマップを作成した場合でもbitmapFactoryにこれらのメモリエラーがスローされるバグがあったため、すべてのビットマップをリサイクルする必要がありました。新しいバージョンのAndroidにはそのような問題はないようです。あるいは、メモリが増えたことが原因かもしれません。

ビットマップを1つだけ作成し、使用後にリサイクルしてみてください。複数のビットマップを使用する場合は、それらを必要なサイズに縮小してください。それはそれをする必要があります。

于 2012-06-13T07:31:07.767 に答える
0

この例外の場合:

java.lang.OutOfMemoryError: bitmap size exceeds VM budget 06-13 07:23:03.464: 

私の答えのビットマップサイズがVmバジェットエラーandroidを超えています。それを通過してください、それはあなたの問題を解決するはずです。

ありがとうございました :)

于 2012-06-13T07:40:23.613 に答える