Xcode を使用せずに、Windows で Phonegap Build 用の FacebookConnect プラグインを正常に実装しました。
Phonegap Build Plugins ページの指示に従い、 GitHub ページの指示を無視することをお勧めします(Xcode や、Build プラグインに必要のないものについて説明しています)。彼らは現在、GitHub ページの手順を更新して、Phonegap Build ユーザーを GitHub の手順から離れて Phonegap Build Plugins ページに誘導するようにしました。
ステップ 1 (Facebook でアプリをセットアップする) では、ネイティブ iOS アプリを選択します。バンドル ID は、config.xml の「id」と同じ (つまり、com.company.appname) であり、App Store ID を次のように設定できます。テスト中は「0」。
ステップ 2では、必ず を使用してくださいfacebook-js-sdk.js
。一度タイプミスがありました。
物事をテストする良い方法は、GitHub のサンプル Simple アプリのコンテンツを新しい index.html ファイルに貼り付け、通常の config.xml ファイルと一緒に Phonegap Build にアップロードすることです。アプリの 1 つのビルドでこれを行い、テストした後、通常の index.html ファイルをアップロードしました。Example アプリの index.html で行う必要がある唯一の変更は、Facebook アプリ ID を FB.init 関数の一番下に置くことです。また、Facebook JS SDK に合わせて変更response.session
しresponse.authResponse
ましたが、それが必要かどうかはわかりません。
ステップ 3config.xml
で説明したすべての内容でファイルを更新してください。次のコードも追加しました。
<access origin="http://m.facebook.com" />
<access origin="http://graph.facebook.com" />
<access origin="http://api.facebook.com" />
<access origin="http://fbcdn.net" subdomains="true" />
<access origin="http://akamaihd.net" subdomains="true" />
config.xml
ファイルに次のものがある場合、上記のコードは必要ありません。
<access origin="*" />
FacebookConnect プラグインは Facebook JS SDK を使用しています。詳細については、https ://developers.facebook.com/docs/reference/javascript/ を参照してください。
scope
また、Phonegap ビルド チームが取り組んでいるもう 1 つの問題は、アクセス許可を要求するときに、オプションをオフにして基本アクセス許可を要求することはできないということです。scope
今のところ、ログイン機能を機能させるには、少なくとも 1 つのオプションを含める必要があります。
function fbLogin () {
FB.login(function(response) {
if (response.authResponse) {
alert('User Login Success!');
} else {
alert('User cancelled login or did not fully authorize.');
}
}, { scope: "email" });
}
ほとんどの開発者はおそらく基本的なアクセス許可以上のものを要求したいと考えているため、これはそれほど大きな問題ではないはずです。
上記の私の回答は、 Phonegap Build Support Siteでの Facebook プラグインに関する議論からのものです。プラグインと現在の問題と解決策について詳しく知ることができます。
このことを理解するのに少し時間がかかったので、他の人が時間を節約するのに役立つことを願っています.