FacebookConnectを使用してユーザーのFacebookブックの壁に投稿しようとしていますが、createOauth2()メソッドのメソッドが独自の権限でスコープをオーバーライドしています。Facebook Graph Apiスコープがcodenameoneを上書きする
EDIT
if (fb.isNativeLoginSupported()) { Dialog.show("native", "Yes", "Ok", null); if (!fb.hasPublishPermissions()) { Dialog.show("permission", " no publish permission", "ok", null); fb.askPublishPermissions(new LoginCallback() { @Override public void loginSuccessful() { Dialog.show("permission", "accessed: " + fb.hasPublishPermissions(), "Ok", null); System.out.println("permission: " + fb.hasPublishPermissions()); token = fb.getAccessToken().getToken(); PhotoShare share = new PhotoShare(); share.sendPhoto(token, id); } @Override public void loginFailed(String errorMessage) { System.out.println("failed permission: " + errorMessage); Dialog.show("permission error", errorMessage, "Ok", null); } }); } else { Dialog.show("permission", "publish permission", "ok", null); PhotoShare share = new PhotoShare(); share.sendPhoto(token, id); } } else { Dialog.show("permission", "No native support", "Ok", null); fb.setScope("publish_actions"); fb.setCallback(new LoginCallback() { @Override public void loginSuccessful() { token = fb.getAccessToken().getToken(); PhotoShare share = new PhotoShare(); share.sendPhoto(token, id); } }); fb.doLogin(); }
背中のAndroidデバイス上で呼ばれることは決してありませんaskPublishPermissions
のLogincall。 また、ログイン時に、アプリは私が一度も聞いたことのないフレンドリストと電子メールの許可を求めます。 FacebookConnectのソースコードでは、createOuth()
メソッドがそれらをスコープに追加していますが、これらのアクセス許可は必要ありません。
ソリューション:
これらは、私は同じ問題を持つ人のために、その後のステップがあります。 まず、エミュレータに許可を求める問題が見つかりました。だから私は許可を求める自分のOuthログインを作成しました。
アンドロイドビルドの場合。
- ビルドのヒント
android.facebook_permissions
キーに値を設定して、必要なアクセス許可を追加します。これは必須のステップです。アクセス許可またはその他の書き込み権限はpublish_action
ではなく、ここには読み取り権限のみを含めてください。書き込み許可以外の許可が必要ない場合は、Facebookのデフォルトの許可であるpublic_profile
を追加します。 publish_actions
の許可にはFacebookConenct.askPublishPermissions
を使用してください。doLogin()
を最初に使用した場合、何らかの理由でaskPublishPermission
は私の場合は何もしませんでした。だから私はaskPublishPermission
を使用して、doLogin()
を呼び出して自動的にログインページを呼び出しました。
私はコードと詳細で質問を更新しました – umuieme
私は私の答えにいくつかの詳細を追加しました。 –
android.facebook_permissionsと私は私の質問で更新される問題を解決いくつかの他のもの。しかし、私はまだログインのように私の範囲をオーバーライドエミュレータの問題があると思う。親切にfacebookConnect.createOuth()メソッドをチェックしてください。 – umuieme