2011-06-20 8 views
4

最近、私はAsyncTaskの使用を開始しました。AsyncTask(doInBackgroundメソッド)の再開時のアクティビティ

私はこれをListActivity(CatalogActivity)としました。それは何らかの種類のツリーロジックであるため、AsyncTaskを使ってリロードしました。リスト内の項目を選択するたびに、onPostExecuteの中でいくつかの計算を行い、進捗ダイアログをdoInBackgroundに表示していますが、リストをリロードして処理を終了します。すべて正常に動作します。

私が最後のレベルに達した後、別のアクティビティ(LoginActivity)を開始します。この新しいアクティビティには、前述のリストアクティビティを開始する「戻る」メニューボタンがあります。それはアクティビティを開始し、doInBackgroundメソッドでロード部分にヒットしたとき、私はこのファンキーな例外を取得します。本当に面白いのは、ロードメソッドでブレークポイントを設定して、すべての作業をうまくやっていけばいいのです!

私は行方不明ですか?ここで

は私CatalogActivityのdoInBackground方法は、(エラーが発生した場合)である:ここでは

protected String doInBackground(String... params) { 
     catalogAdapter.mappingServicesCatalog.loadFromRml(new RIoConnectionManagerImpl(currentActivity.getApplicationContext()), params[0], null, 120000, 500000); 
     if (catalogAdapter.urlMapping.size() == 0) 
     { 
      catalogAdapter.urlMapping.add(params[0]); 
     } 
     else 
     { 
      if (catalogAdapter.urlMapping.get(catalogAdapter.urlMapping.size() - 1) != params[0]) 
      { 
       catalogAdapter.urlMapping.add(params[0]); 
      } 
     } 
     return ""; 
    } 

はLogCatレコードは、次のとおりです。

06-20 11:38:21.109: ERROR/AndroidRuntime(22789): FATAL EXCEPTION: AsyncTask #4 
06-20 11:38:21.109: ERROR/AndroidRuntime(22789): java.lang.RuntimeException: An error occured while executing doInBackground() 
06-20 11:38:21.109: ERROR/AndroidRuntime(22789):  at android.os.AsyncTask$3.done(AsyncTask.java:200) 
06-20 11:38:21.109: ERROR/AndroidRuntime(22789):  at java.util.concurrent.FutureTask$Sync.innerSetException(FutureTask.java:273) 
06-20 11:38:21.109: ERROR/AndroidRuntime(22789):  at java.util.concurrent.FutureTask.setException(FutureTask.java:124) 
06-20 11:38:21.109: ERROR/AndroidRuntime(22789):  at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:307) 
06-20 11:38:21.109: ERROR/AndroidRuntime(22789):  at java.util.concurrent.FutureTask.run(FutureTask.java:137) 
06-20 11:38:21.109: ERROR/AndroidRuntime(22789):  at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1068) 
06-20 11:38:21.109: ERROR/AndroidRuntime(22789):  at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:561) 
06-20 11:38:21.109: ERROR/AndroidRuntime(22789):  at java.lang.Thread.run(Thread.java:1096) 
06-20 11:38:21.109: ERROR/AndroidRuntime(22789): Caused by: java.lang.NullPointerException 
06-20 11:38:21.109: ERROR/AndroidRuntime(22789):  at si.realis.rmap.android.CatalogActivity$CatalogAdapter.access$1(CatalogActivity.java:35) 
06-20 11:38:21.109: ERROR/AndroidRuntime(22789):  at si.realis.rmap.android.CatalogActivity$LoadRMLCatalog.doInBackground(CatalogActivity.java:197) 
06-20 11:38:21.109: ERROR/AndroidRuntime(22789):  at si.realis.rmap.android.CatalogActivity$LoadRMLCatalog.doInBackground(CatalogActivity.java:1) 
06-20 11:38:21.109: ERROR/AndroidRuntime(22789):  at android.os.AsyncTask$2.call(AsyncTask.java:185) 
06-20 11:38:21.109: ERROR/AndroidRuntime(22789):  at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:305) 
06-20 11:38:21.109: ERROR/AndroidRuntime(22789):  ... 4 more 
06-20 11:38:44.086: ERROR/WindowManager(22789): Activity si.realis.rmap.android.CatalogActivity has leaked window [email protected] that was originally added here 
06-20 11:38:44.086: ERROR/WindowManager(22789): android.view.WindowLeaked: Activity si.realis.rmap.android.CatalogActivity has leaked window [email protected] that was originally added here 
06-20 11:38:44.086: ERROR/WindowManager(22789):  at android.view.ViewRoot.<init>(ViewRoot.java:247) 
06-20 11:38:44.086: ERROR/WindowManager(22789):  at android.view.WindowManagerImpl.addView(WindowManagerImpl.java:148) 
06-20 11:38:44.086: ERROR/WindowManager(22789):  at android.view.WindowManagerImpl.addView(WindowManagerImpl.java:91) 
06-20 11:38:44.086: ERROR/WindowManager(22789):  at android.view.Window$LocalWindowManager.addView(Window.java:424) 
06-20 11:38:44.086: ERROR/WindowManager(22789):  at android.app.Dialog.show(Dialog.java:241) 
06-20 11:38:44.086: ERROR/WindowManager(22789):  at android.app.ProgressDialog.show(ProgressDialog.java:107) 
06-20 11:38:44.086: ERROR/WindowManager(22789):  at android.app.ProgressDialog.show(ProgressDialog.java:90) 
06-20 11:38:44.086: ERROR/WindowManager(22789):  at si.realis.rmap.android.CatalogActivity.loadRMLCatalog(CatalogActivity.java:135) 
06-20 11:38:44.086: ERROR/WindowManager(22789):  at si.realis.rmap.android.CatalogActivity$CatalogAdapter.Initialize(CatalogActivity.java:60) 
06-20 11:38:44.086: ERROR/WindowManager(22789):  at si.realis.rmap.android.CatalogActivity$CatalogAdapter.<init>(CatalogActivity.java:45) 
06-20 11:38:44.086: ERROR/WindowManager(22789):  at si.realis.rmap.android.CatalogActivity.onCreate(CatalogActivity.java:119) 
06-20 11:38:44.086: ERROR/WindowManager(22789):  at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1047) 
06-20 11:38:44.086: ERROR/WindowManager(22789):  at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2627) 
06-20 11:38:44.086: ERROR/WindowManager(22789):  at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2679) 
06-20 11:38:44.086: ERROR/WindowManager(22789):  at android.app.ActivityThread.access$2300(ActivityThread.java:125) 
06-20 11:38:44.086: ERROR/WindowManager(22789):  at android.app.ActivityThread$H.handleMessage(ActivityThread.java:2033) 
06-20 11:38:44.086: ERROR/WindowManager(22789):  at android.os.Handler.dispatchMessage(Handler.java:99) 
06-20 11:38:44.086: ERROR/WindowManager(22789):  at android.os.Looper.loop(Looper.java:123) 
06-20 11:38:44.086: ERROR/WindowManager(22789):  at android.app.ActivityThread.main(ActivityThread.java:4627) 
06-20 11:38:44.086: ERROR/WindowManager(22789):  at java.lang.reflect.Method.invokeNative(Native Method) 
06-20 11:38:44.086: ERROR/WindowManager(22789):  at java.lang.reflect.Method.invoke(Method.java:521) 
06-20 11:38:44.086: ERROR/WindowManager(22789):  at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:871) 
06-20 11:38:44.086: ERROR/WindowManager(22789):  at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:629) 
06-20 11:38:44.086: ERROR/WindowManager(22789):  at dalvik.system.NativeStart.main(Native Method) 
06-20 11:49:00.402: ERROR/WifiManager(22835): showApDialog 
06-20 11:49:04.699: ERROR/HierarchicalStateMachine(2475): TetherMaster - unhandledMessage: msg.what=3 
06-20 11:49:07.511: ERROR/WifiManager(22835): showApDialog 
06-20 11:49:14.648: ERROR/WifiManager(22835): showApDialog 
06-20 11:49:23.109: ERROR/libnetutils(2475): dhcp start cmd 11 : [dhcpcd:-ABK] 
06-20 11:49:23.597: ERROR/HierarchicalStateMachine(2475): TetherMaster - unhandledMessage: msg.what=3 
06-20 11:49:23.965: ERROR/gps_BRCM(2475): BrcmLbs_sync() return error. 
+0

NPEスタックトレースと整列するために、コード抜粋の行番号が必要です。si.realis.rmap.android.CatalogActivity $ CatalogAdapter.access $ 1(CatalogActivity.java:35) - どの行iあなたのスニペットは35行ですか? '.access $ 1()'は、合成アクセサメソッドを使ってプライベートメンバーをリクエストしていることを意味し、そのメンバーはnullと思われます。以前の活動を「開始」していると言いましたが、なぜBACKキーを押して、トップアクティビティを終了して前のアクティビティを再開させるのではないのですか? – Joe

+0

あなたは正しいです。典型的なノブの間違い。私は活動とアダプターを持っています。アダプタコンストラクタでは、私はこの非同期タスクを開始したいくつかのコードを持っていました。同期時にアダプタをデバッグしたときに、実行時にエラーが発生しました。私はメソッドの中でアダプターコンストラクターからコードを削除しています。あなたの時間をありがとう!私の側で卑劣な作品... – no9

答えて

0

私は私のコード(ずさんな仕事を)固定することにより、この問題を解決してきました

関連する問題