0

ダイアログボックスに取り組んでいます。ボタンをクリックすると、Facebookのプロフィール画像を含むダイアログボックスが開きます。どうすればこれを達成できますか?以下は私のダイアログボックスです。

final Dialog dialog = new Dialog(context);
                        dialog.setContentView(R.layout.customdailog);



                        ImageView image = (ImageView) dialog.findViewById(R.id.imageView2);
                        image.setImageResource(R.drawable.fb);

                        Button dialogButton = (Button) dialog.findViewById(R.id.fbshare);

                        dialogButton.setOnClickListener(new OnClickListener() {

                            public void onClick(View v) {
                                dialog.dismiss();
                        }

                        });
                        dialog.show();
                        break;
                    }
4

4 に答える 4

1

githubで公式のAndroidFacebookSDKを見てください

また、ユーザープロフィール画像は公開されています。これは、認証が再調整されないことを意味し、ユーザーページのURLを読み込んで、応答の本文を解析し、画像を取得するだけです。

于 2012-12-07T14:20:51.993 に答える
1

これを行う:

ImageView image = (ImageView) dialog.findViewById(R.id.imageView2);
URL url = new URL("https://www.graph.facebook.com/jesselchen/picture");
Bitmap pic = BitmapFactory.decodeStream(url.openConnection().getInputStream());
image.setImageBitmap(pic);
于 2012-12-07T22:20:24.133 に答える
1

graphAPIは、プロフィール写真などの公開データを取得するための認証を必要としません。

次のようなURLを作成します。

String userID = "TheNameOrIDOfTheUserYouWant";
String urlConstruct = "https://www.graph.facebook.com/" + userID + "/picture";
URL url = new URL(urlConstruct);

次に、データを取得して、画像をImageViewにロードします。

ImageView profilePic = (ImageView) dialog.findViewById(R.id.profile_pic);
Bitmap imageFromURL = BitmapFactory.decodeStream(url.openConnection().getInputStream());
profilePic.setImageBitmap(imageFromURL);
于 2013-12-03T13:16:25.063 に答える
0

これを使って:

ImageView image = (ImageView) dialog.findViewById(R.id.imageView1);  
URL url = new URL("https://graph.facebook.com/"+fb_user_id+"/picture?type=large");
HttpURLConnection conn = (HttpURLConnection) url.openConnection();  
HttpURLConnection.setFollowRedirects(true);
conn.setInstanceFollowRedirects(true);  
Bitmap fbpicture = BitmapFactory.decodeStream(conn.getInputStream());
image.setImageBitmap(fbpicture);
于 2014-11-17T07:12:02.943 に答える