メイン アクティビティの onCreate メソッドには、wifi 接続が有効かどうかをチェックするコードがいくつかあります。そうでない場合は、自動的に有効にしようとしています(今は非常に重要です)。その後、他のものを作成したいと思います(サービスの開始など)。実行に進む前に有効にする必要があることは非常に重要です!
私はすでに AsyncTask を試しましたが、うまくいきませんでした。( AsyncTask のタスクが完了する前に、コードはまだ下で実行されています)。
特定のタスクが完了した後に一部のコードが実行されるようにするにはどうすればよいですか?
編集:
メインアクティビティでの私の onCreate
wifiManager = (WifiManager) getSystemService(WIFI_SERVICE);
if(!wifiManager.isWifiEnabled()) {
new Asyn(this, progress, wifiManager);
}
startService(new Intent(intentt));
非同期クラス
public class Asyn extends AsyncTask<Context, Integer, Long> {
private Context context;
private ProgressDialog pd;
private WifiManager wm;
public Asyn(Context context, ProgressDialog pd, WifiManager wm) {
this.context = context;
this.pd = pd;
this.wm = wm;
}
@Override
protected void onPreExecute() {
// TODO Auto-generated method stub
super.onPreExecute();
pd = ProgressDialog.show(context, "", "Enabling wifi");
}
@Override
protected Long doInBackground(Context... params) {
wm.setWifiEnabled(true);
return null;
}
@Override
protected void onPostExecute(Long result) {
// TODO Auto-generated method stub
super.onPostExecute(result);
pd.dismiss();
}
}
wifiが完全に有効になるまで「startService」を実行したくありません!