Facebook Javascript SDKを使用するモバイルWebアプリケーションの場合、ユーザーのログインステータスを確認し、必要に応じてFacebookログインダイアログを表示します。次のコードは、Webアプリの特定のボタンのクリックハンドラー内で実行されます。
$('#button').click(function() {
FB.getLoginStatus(function(response) {
if (response.status === 'connected') {
// do something with the logged in and authorized user
} else if (response.status === 'not authorized') {
// logged in but has not authorized our app
} else {
// not logged in
FB.login();
}
});
});
ユーザーがFacebookにログインしていないことを確認すると、これは正常に機能し、ボタンが押されたときにデスクトップWebブラウザーのログインダイアログを表示しますが、モバイルWebの場合は表示されません(少なくともさまざまなブラウザーのAndroidの場合は、私はしません現在iPhoneにアクセスできます)。モバイルWebアプリには何も表示されません。ポップアップブロッカーを無効にすると、このポップアップを許可するかどうかを尋ねるプロンプトが表示されます。これは機能します。
動作が異なる理由や、既知の/標準的な回避策を知っている人はいますか?ありがとう!