1

Facebook にアクセスして、iOS アプリからページに画像を投稿しようとしています。しかし、これまでのところ、必要な権限を与えることさえできません。

iOS 6 の Facebook 投稿手順で「remote_app_id が保存された ID と一致しません」というエラーが発生し、Facebook Graph Api ファンページの写真のアップロード (IOS)が発生するなど、多くの検索を行いましたが、これらまたは他の投稿でこの問題を解決しているものはありません。

コードの認証ビットは次のとおりです。

ACAccountType *accountType = [accountStore accountTypeWithAccountTypeIdentifier:ACAccountTypeIdentifierFacebook];

NSDictionary *options = @{
                          ACFacebookAppIdKey: @"xxxxxxxxxxxxxx",
                         ACFacebookPermissionsKey: @[@"manage_pages"],
                          ACFacebookAudienceKey: ACFacebookAudienceEveryone
                          };

[accountStore requestAccessToAccountsWithType:accountType options:options completion:^(BOOL granted, NSError *error)
 {
     if (granted)
     {
         NSDictionary *options = @{
                                   ACFacebookAppIdKey: @"xxxxxxxxxxxxxx",
                                   ACFacebookPermissionsKey: @[@"photo_upload"],
                                   ACFacebookAudienceKey: ACFacebookAudienceEveryone
                                   };

         [accountStore requestAccessToAccountsWithType:accountType options:options completion:^(BOOL granted, NSError *error)
          {
              if (granted)
              {
                   // then do the upload - but it never gets here
              }
              else
              {
                   // handle error - this is where it ends up
              }
          }];
     }
     else
     {
          // handle error
     }
 }];

これに関する他の投稿のいくつかで提案されているように、書き込み権限の前に最初に読み取り権限を要求しています。これは、manage_pages パーミッションを正常に取得します。

photo_upload パーミッションを要求すると、Facebook パーミッション アラートがポップアップ表示され、自分に代わって投稿できることを確認するよう求められ、[OK] をクリックしますが、そのパーミッション リクエスト ブロックは付与されたセットが FALSE に返されます。

その時点で表示される完全なエラー メッセージは、「Facebook サーバーはこのアクセス リクエストを実行できませんでした: 無効な権限: photo_upload」です。

Facebook アプリ サイトで、必要なことはすべて完了したと思います。アプリを作成して AppId を取得し、プラットフォームとして iOS を追加し、BundleId を iOS アプリが使用しているものと同じものに設定し、詳細タブでネイティブ アプリに設定します。

私が間違っていることを誰かが知っていますか?

4

1 に答える 1

0

publish_actionsあなたの許可として使用します。新しい Facebook API は、該当する場合publish_actionsは代わりに使用することを提案していますpublish_streampublish_stream友達のフィードへの投稿、質問の投稿、メモの作成、イベントやグループへのコンテンツの投稿などの機能を追加する場合は、これを含める必要があります。

于 2014-08-05T15:13:21.640 に答える