を拡張するクラスがありますThread
。このクラスは を介して数バイトを読み取りbluetooth
、終了または最後のバイトが読み取られると、event listener
すべてのリスニング クラスを更新するために を呼び出します。
bluetooth クラスでは次のようにします。
fileCompleteInitiator.fileCompleted(fileName);
実装されたメソッドは、AsyncTask
このファイルを処理するために を作成します。
public class Home extends Activity {
//other methods like onCreate..
@Override
public void fileComplete(String fileName) {
if(fileName.endsWith(".zip")) {
CaseGenerator generator = new CaseGenerator(Home.this, fileName, lastCases, nist);
generator.execute("");
}
}
}
この asynctask 内で を表示したいのですがprogressdialog
、それほどオリジナルではない例外が発生します。
Cant create handler inside thread that has not called looper.prepare
そのためのコードは通常のものです。 で作成し、progressdialog
でonPreExecute()
閉じonPostExecute()
ます。いくつかのコード
@Override
protected void onPreExecute() {
super.onPreExecute();
pd = new ProgressDialog(context);
pd.setTitle("Please Wait..");
pd.setMessage("Generating file");
pd.show();
}
.....................
@Override
protected void onPostExecute(Integer result) {
super.onPostExecute(result);
if(pd != null)
pd.dismiss();
}
私は何が欠けていますか?