新しいFacebook SDKでユーザーのプロフィール画像を取得できません。ここでのすべての答えは、もはや動作しなくなった古いSDKのメソッドを使用します。3.0 SDKを使用してFacebookの写真を入手しよう
Facebookのチュートリアルで推奨されているFBProfilePictureViewを使用しようとしましたが、この画像はキャッシュされず、UIImageに変換することはできません。
誰でも助けてもらえますか?ありがとう!
新しいFacebook SDKでユーザーのプロフィール画像を取得できません。ここでのすべての答えは、もはや動作しなくなった古いSDKのメソッドを使用します。3.0 SDKを使用してFacebookの写真を入手しよう
Facebookのチュートリアルで推奨されているFBProfilePictureViewを使用しようとしましたが、この画像はキャッシュされず、UIImageに変換することはできません。
誰でも助けてもらえますか?ありがとう!
OK、私は最終的に以下のものを使用して、これを得た:
imageData = [[NSMutableData alloc] init]; // the image will be loaded in here
NSString *urlString = [NSString stringWithFormat:@"http://graph.facebook.com/%@/picture?type=large", user.id];
NSMutableURLRequest *urlRequest =
[NSMutableURLRequest requestWithURL:[NSURL URLWithString:urlString]
cachePolicy:NSURLRequestUseProtocolCachePolicy
timeoutInterval:2];
// Run request asynchronously
NSURLConnection *urlConnection = [[NSURLConnection alloc] initWithRequest:urlRequest
delegate:self];
if (!urlConnection)
NSLog(@"Failed to download picture");
その後、私は一緒に画像を配置する-(void)connection:(NSURLConnection *)connection didReceiveData:(NSData *)data
と-(void)connectionDidFinishLoading:(NSURLConnection *)connection
を使用しました。
使用リンク:
https://graph.facebook.com/me?fields=picture
は、現在のユーザーのプロフィール画像を取得します。
FacebookはGraph API explorer toolを提供しています。これは、クエリを試したり、返された出力をチェックしたいときに便利です。
ここにはUser API Referenceへのリンクがあります。
どうすればそのリンクからアプリにキャッシュされるのですか? – bmueller
https://github.com/rs/SDWebImageを使用して画像をキャッシュします。あなたの問題が関連する場合は、画像を要求するURLは
NSString *string = [NSString stringWithFormat:@"https://graph.facebook.com/%@?fields=picture", userid];
URLを変更した後、私のために働いた: NSString * string = [NSString stringWithFormat:@ "https://グラフ.facebook.com /%@/picture "、userid]; ' – smek
でなければなりません「self.userPofilePicture.profileID = user.id;」。
次に、self.userProfilePictureはUIViewを返します。そのため、表示して表示するだけです。
忘れてはなりません。IDインスペクタのFBProfilePictureViewと[FBProfilePictureViewクラス]をAppDelegate実装ファイルに追加してください。
私はこれが役に立ちそうです。
これはFBLoginView –
私が見つけたベストソリューション: 私はAFNetworking https://github.com/AFNetworking/AFNetworkingのUIImageを使用しました。これはリダイレクトとキャッシングを処理するので、あなたが持っているすべてのユーザーIDのプロフィール画像を取得できます。
NSString *imageUrl = [NSString stringWithFormat:@"http://graph.facebook.com/%@/picture", ((NSDictionary<FBGraphUser> *) [self.friends objectAtIndex: indexPath.row]).id];
[friendCell.imageView setImageWithURL:[NSURL URLWithString:imageUrl] placeholderImage:[UIImage imageNamed:@"profile.jpg"]];
+1と組み合わせて使用することを前提としています。 AFNetworkingはそれを10倍に簡単にしました –
何がself.friendsですか? –
fbユーザーの配列 – trickster77777
私はNSURLConnection * urlConnectionを介してFBプロファイル画像を取得しますが、私はUIImageviewでこれを実装する方法を教えてください – nivritgupta