デバイス認証を処理するために完全に動作するAsyncTaskを構築しましたが、唯一の原因は、Bundle
をインスタンス化変数に戻してしまうことです。ここではAsyncTaskのインスタンスは、次のとおりです。AsyncTaskの結果をインスタンシエーション変数に戻す
Bundle taskResult = new AuthorizeDevice(this).execute(passToAuthroization).get();
私は、件名に、いくつかの文献を読み、ここにある念頭に置いたものとなるようonPostExecute()
方法は、それとは何かを持っていることを発見しました:
protected void onPostExecute(Bundle result){
dialog.dismiss();
Toast.makeText(context, "background process finished: "+result.getString("UDID"), Toast.LENGTH_SHORT).show();
}
どうすればそのバンドルをメインアクティビティに戻すことができますか?
なぜバンドル。よく分かりません。 ** doInBackground **の**例外**を当てれば、** onPostExecute **のヌルを取得するでしょう。 – Samuel
トーストは 'UDID'にアクセスしようとすると、デバッグのためだけです。私は例外を捕まえてバンドルに送るための事前定義された方法をレイアウトしました。私は問題をユーザーに知らせることができます。 – nkcmr
check PravinCGの答え。彼は正しいです。待っているメカニズムを思いついたり、バンドルをonPostExecuteから何とか投げたりする必要があります。 – Samuel