テキストを入力するユーザーオプションとともに、FacebookダイアログからFacebookに投稿するには、URLの代わりにuiimage(アプリから取得したスクリーンショット)を投稿する必要があります。どのようにそれを達成することができます。いくつかの助けをいただければ幸いです。
質問する
245 次
2 に答える
0
fbconnect を介して Facebook に画像を投稿するには、fbconnect API を使用していくつかの手順を実行する必要があります。
Facebookにログインする必要があり、アクセスキーと有効期限について確認します。
それらがnilでない場合、そこに画像を投稿します。
NSData *imageData = UIImagePNGRepresentation(cellImageView.image); NSMutableDictionary *params = [[NSMutableDictionary alloc]initWithObjectsAndKeys:@"app name",@"message",imageData,@"source", nil]; [facebook requestWithGraphPath:@"me/photos" andParams:params andHttpMethod:@"POST" andDelegate:self];
そうでない場合は、アクセス キーと有効期限キーを取得してから、上記のイメージ ポスト コードに移動します。
詳細については、fbconnect api をダウンロードしてログインを確認し、ブレーキポイントを含むコードを確認してください。
このユーザーには、ログイン デリゲートと fb リクエスト デリゲートが必要です。
また、facebook obj を app id で初期化し、デリゲート self を設定することも忘れないでください。
于 2012-12-11T05:35:01.500 に答える
0
写真の部分を投稿するには、このようなことを試すことができます。テキストは単なる別のフィールドだと確信しています。
@try {
// make sure your permissions are set
NSArray *permissions = [[NSArray alloc] initWithObjects:
@"publish_stream",
nil];
[FBSession openActiveSessionWithPublishPermissions:permissions
defaultAudience:FBSessionDefaultAudienceOnlyMe
allowLoginUI:NO
completionHandler:^(FBSession *session, FBSessionState state, NSError *error){
NSLog(@"completion handler.");
}];
[FBRequestConnection startForUploadPhoto:imageToUpload
completionHandler:^(FBRequestConnection *connection, id result, NSError *error) {
if (!error) {
UIAlertView *tmp = [[UIAlertView alloc]
initWithTitle:@"Success"
message:@"Photo Uploaded!"
delegate:self
cancelButtonTitle:nil
otherButtonTitles:@"Ok", nil];
[tmp show];
} else {
UIAlertView *tmp = [[UIAlertView alloc]
initWithTitle:@"Error"
message:@"Error uploading image to Facebook."
delegate:self
cancelButtonTitle:nil
otherButtonTitles:@"Ok", nil];
[tmp show];
}
}];
}
@catch (NSException *exception) {
NSLog(@"-----> !! ERROR UPLOADING IMAGE TO FACEBOOK !!");
}
于 2012-12-11T05:40:33.217 に答える