AndroidでFacebookを使用してログイン/登録している間、Facebookがリクエストを送信するのにしばらく時間がかかります。したがって、登録しようとしているユーザーのFacebook ID /ユーザー名を取得するまで、アクティビティを一時停止(プロセスダイアログを表示)するにはどうすればよいですか?これはバックグラウンドプロセスであるため、ベースリスナーでは実行できません。
AsyncTaskを使用してみましたが、方法がわからないか、実行できません。主に前者。これは私がしました:
public class FacebookOperation extends AsyncTask<Void, Void, Void>
{
@Override
protected void onPreExecute()
{
super.onPreExecute();
mFacebook = new Facebook(APP_ID);
mAsyncRunner = new AsyncFacebookRunner(mFacebook);
reg = "facebook";
SessionStore.restore(mFacebook, Register.this);
SessionEvents.addAuthListener(new SampleAuthListener());
//SessionEvents.addLogoutListener(new SampleLogoutListener());
}
@Override
protected void onProgressUpdate(Void... values) {
super.onProgressUpdate(values);
}
@Override
protected void onPostExecute(Void result)
{
fillFormFb(); //Fills the form with the data from fb
}
@Override
protected Void doInBackground(Void... params) {
mLoginButton.init(Register.this, mFacebook,permissions);
return null;
}
}