2012-07-03 19 views
6

これは数時間を費やしても動作しません。基本的には、自分のアプリに「Facebook」のような「好き」のボタンが欲しいだけです。 私はdevのFacebook上でアプリを作成し、関連するApp Pageを持っています。私のコードで 私はこれらの権限を要求します。iOSでFacebookのpublish_action権限を取得できません。

_permissions = [NSArray arrayWithObjects:@"publish_stream", @"publish_actions", @"user_birthday", nil]; 

私は細かいプロフィール画像を取得することができますが、私はこのコードを使用して「のように」にしようとすると:

NSMutableDictionary* params = [NSMutableDictionary dictionaryWithObjectsAndKeys: 
             _facebook.accessToken, @"access_token", 
             nil]; 
     [_facebook requestWithGraphPath:@"329756493773381/og.likes" andParams:params andHttpMethod:@"POST" andDelegate:self]; 

私は、このエラー応答を取得:

(facebookErrDomain error 10000.)" UserInfo=0x20090590 {error={ 
    code = 200; 
    message = "(#200) Requires extended permission: publish_actions"; 
    type = OAuthException; 
}} 

アプリにログインすると、Facebookは自分の誕生日を見る許可を求めてきますが、私の代わりに投稿しますが、publish_actionsの許可を得ていないようです。

私は行方不明のものがありますか?

テンプル・ランにはFacebook Likeボタンがあり、それを押すためのボーナス・コインが用意されています。これが私が達成したいものです。

EDIT -------は

は、私が "user_birthday" @ "publish_actions" @だけに私の権限を変更しましたし、今で認証ダイアログが

「このアプリは、投稿することが語りますしかし、私はまだエラー

を得ていたあなたが言っていたオブジェクトと より」publish_actions許可であるように思わ

、を含むあなたに代わっ、上

message = "(#200)拡張アクセス許可が必要です:publish_actions";これに

[_facebook requestWithGraphPath:@"329756493773381/og.likes" andParams:params andHttpMethod:@"POST" andDelegate:selrf]; 

私はこの行を変更した

[_facebook requestWithGraphPath:@"329756493773381/og.likes" andDelegate:self]; 

、それは

'のような' 投稿はありませんが、私は今、戻って応答を得るのですか

これは応答結果です。

{ 
    data =  (
    ); 
    paging =  { 
     next = "https://graph.facebook.com/329756493773381/og.likes?sdk=ios&sdk_version=2&access_token=BAAGeAp3ZBGwoBAPICjlgB5zK0YECyP8yElf8hJoMrx8Qs4vjeZAK5PlXFAVbGM1JyXHE0wZBvU0aBeCzCUTZBejQgoJ44CAIQsrG64TfrHdxjMqWD&format=json&offset=25&limit=25"; 
    }; 
} 

次に何を試していいですか?

EDIT 2 --------------- 私はこれを進歩させています。 私はこの

NSString *graphPath = [NSString stringWithFormat:@"%@/og.likes",facebookID]; 

のようなグラフ要求にユーザーIDを追加し、これらのパラメータ

NSMutableDictionary* params = [NSMutableDictionary dictionaryWithObjectsAndKeys: 
             @"AAAGeAp3ZBGwoBABvKjsPZAoQQNG9cDPJI2v2TI8acyyPSNtm9ZBkfydHqVZAjSKWSbLuvFwxyxSrCts7kFZCnh7Y6f5PFNlWb6smF8XF33wlRZBgfLyhT1", @"access_token", 
             @"http://samples.ogp.me/329756493773381", @"object", 
             nil]; 

、今私が使っていた :-)私のタイムライン上に表示のように取得を使用しましたFacebookのログインによって提供されるアクセストークンですが、グラフオブジェクトによって提供されるものとは異なるようです。

ダレンは

myappの

上のオブジェクトを好きなことはダレンが好き

としてそれを持っていることさえ可能です:今

、私が見ていることなどが、このパターンを持っていますMyAPP それはアプリのFacebookページにリンクしていますか?

おかげ

+0

FBアプリの設定 - >詳細 - >認証でアプリの種類が「ネイティブ/デスクトップ」に設定されていますか? – borisdiakur

+0

はい、そうです。私は今これが可能だとは思わない。レシピアプリのレシピなど、アプリ内のものは好きですが、ファンページなどは好きではありません。 – Darren

+0

あなたは正しいです。 [docs](https://developers.facebook。com/docs/opengraph/actions/builtin/likes /)は、組込みのようなアクションを公開するためには、以下の条件が真でなければならないと言っています:アプリケーション内コンテンツには、Open Graphオブジェクトページがあり、 Open Graphメタタグであり、視聴者はアプリ内コンテンツ**に関連付けられたカスタムアプリ内の「likeボタン」**を意図的にクリックしています。しかし、いつでもあなたのFacebookページにリダイレクトすることができます。 – borisdiakur

答えて

5

チェックあなたは、以下の手順で行われている場合:

https://developers.facebook.com/docs/opengraph/tutorial/

「注:この許可のためのユーザー・プロンプトが強化された認証の最初の画面に表示されますダイアログと認証フローの一部として取り消すことはできません。 - リンク

すでにhaventは場合は、これを試してみてください:

認証ダイアログ - >設定はどのようにFacebookのアプリにユーザーを参照 - > publish_actionsの権限を追加します。

https://developers.facebook.com/docs/opengraph/authentication/

「アプリのダッシュボードに行き、新しい認証ダイアログを有効にする、および拡張認証ダイアログアプリの詳細設定]セクションで設定できるようにします。」 -link

これが役に立ちます。

+1

私はシミュレータをリセットしようとしました。私はFacebookのアカウント設定からアプリを削除しました。これにより、再度許可を求めるよう強制されます。それは私に尋ねて、それが私のために投稿されると私に伝えますが、まだpublish_actionsの許可を得ていません! – Darren

+0

SOの他の場所でこれを見つけました: "fbは近い将来この動作を変更すると思いますが、現在、 'publish_actions'の許可を求めるには、アプリがカテゴリ 'ゲーム'に属している必要があります。サンドボックスモード) " –

+0

私のアプリはゲームカテゴリにありますが、publish_actionsがベータテストのときに参照されたと思います。それは今完全にリリースされています。 – Darren

0

これは私がこのSO疑問に持っていた同じ問題のようです: Facebook iOS SDK 3.0, implement like action on a url?

しかし、あなたはアプリであなたのFacebookのページを好きにしたい場合は、唯一のObjective Cでそれをする方法はありませんあなたがここに生成することができますボタンのようにJavaScriptを使用して: https://developers.facebook.com/docs/reference/plugins/like/

寺ランが行う方法は、それが彼らのようなボタンが自分のサーバー上に実際にあるので、ウェブ・ビューのようにボタンを表示することで、これはおそらく醜いですハックが好きです。

関連する問題