0

まず、Facebookでサインインしたいと思います。そのために私はAndroidFacebookSDKを使用しました。そのためのコード

            facebook.authorize(ac, PERMISSIONS, new LoginDialogListener());

うまくいきませんでした。したがって、Looper.prepare()とLooper.loop()を配置する必要があります。

            Looper.prepare();
            facebook.authorize(ac, PERMISSIONS, new LoginDialogListener());
            Looper.loop();

ログイン後、別のボタンをクリックして、友達の壁に投稿したいと思います。だから私は使用しました

        Looper.prepare();
    AsyncFacebookRunner as=new AsyncFacebookRunner(facebook);
    as.request(userId+"/feed", paramss, "POST",  new WallPostRequestListener(), null);
   Looper.loop();

これはエラーを示しており、

スレッドごとに作成できるルーパーは1つだけです

ルーパー行のないコードを使用する場合、

    AsyncFacebookRunner as=new AsyncFacebookRunner(facebook);
    as.request(userId+"/feed", paramss, "POST",  new WallPostRequestListener(), null);

次に、エラーが表示され、

Looper.prepare()を呼び出していないスレッド内にハンドラーを作成できません

ネットで解決策を検索しましたが、見つかりません。同じアクティビティで両方の関数を使用する必要があります。だから、誰かが私のコードの何が悪いのか知っているなら助けてください........そして私をAndroidの初心者と見なしてください。スレッドの知識はほとんどありません........

4

1 に答える 1

0
new Thread(new Runnable() {

        public void run() {


                AsyncFacebookRunner as=new AsyncFacebookRunner(facebook);
                as.request(userId+"/feed", paramss, "POST",  new WallPostRequestListener(), null);

        }

これは私の問題の解決策です。または別の方法は、Jesse Chen のコメントに記載されているとおりです。

于 2012-08-29T06:14:31.603 に答える