1

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;
        }

          }
4

1 に答える 1

4

AsyncTaskを使用して、プロセスをバックグラウンドで実行します。操作のロード中に進行状況バーを表示できます。

public class FacebookOperation extends AsyncTask<Void, Void, Void>
{  
@Override
protected void onPreExecute()
{  
    super.onPreExecute();
    dialog.setMessage("Please wait...");
    dialog.setCancelable(false);
    dialog.show();

} 
@Override 
protected void onProgressUpdate(Void... values) {
    super.onProgressUpdate(values);
    // Things to be done while execution of long running operation is in progress. For example updating ProgessDialog
 }

@Override 
protected void onPostExecute(Void result)

{ 
      //Post Execute
       dialog.cancel();
}
@Override
protected Void doInBackground(Void... params) {

  // Your operation..Dont Edit Any Views here

    return null;
}

}

編集

このリンクをたどって、Facebookをアプリに統合できると思います。それはあなたに役立ちます。

それが役に立てば幸い

于 2012-07-21T08:37:12.040 に答える