私は Facebook Web アプリを開発しました (つまり、apps.facebook.com/myappname でロードしたときに iFrame 内に存在するアプリです)。
Facebook アプリの設定で、「Facebook のアプリ」セクションを設定して、キャンバス URL とセキュアなキャンバス URL を含めました。
「モバイル Web」セクションも確認し、モバイル サイト URL にセキュア キャンバス URL を入力すると、モバイル ブラウザー (iPhone、iPad など) からアプリをロードするたびに、次のエラーが表示されます。モバイル アクセス用に正しく設定されていないため、アプリ「APPNAME」の「APPNAME」は利用できません。」
Facebook iOS アプリからアプリにアクセスしようとすると、同じエラーが表示されます。
ただし、モバイル サイトの URL ではない場合、モバイル サファリではエラーは表示されませんが、Facebook iOS アプリ内からアプリにリンクしようとすると、別のエラーが表示されます。モバイル Web URL または URL がアプリケーションによって所有されていることを確認できませんでした。リダイレクトできません。」
私は多くの検索を行いましたが、設定の正しい組み合わせが何であるかについて明確な方向性を見つけることができません. モバイル URL を指定する必要がありますか? キャンバスの URL と同じにすることはできますか? 等
私は現在、アプリ設定の「アプリドメイン」フィールドに何も指定していません。これは、文書化されたバグがあると問題が発生する可能性があると思われるためです(そして、それが配置されているとエラーが発生します)。
アプリ自体のコードに関しては、複雑なことは何もしていません。コードのベースは、次のように PHP SDK を使用して認証を行っているだけです。
<?php
// get user from the facebook object
$facebook = new Facebook(array(
'appId' => $config['appId'],
'secret' => $config['secret'],
));
$user = $facebook->getUser();
// if user is not loggedin, redirect to loginpage
if(!$user){
$login_url = $facebook->getLoginUrl(array(
'redirect_uri' => 'MY_APP_URL_HERE'
));
echo "<script type='text/javascript'>top.location.href = '$login_url';</script>";
exit();
}
//get user from the facebook object
$user = $facebook->getUser();
?>
誰でもここで提供できる支援やリードは、非常に高く評価されます。
ありがとう!