Cordova の公式 Facebook プラグインを使用していて、奇妙な問題が発生しました...以前は問題なく機能していたログイン プロセスが、スタイリングなしでネイティブの Android の「ブラック スクリーン」ビューで開かれるようになりました。
機能は問題なく動作します。認証プロセスは成功するため、Facebook との一貫した接続が確立されます。問題は、スタイリングなしのテキスト コンテンツだけではなく、Facebook ビューを期待していることです。以下は、Facebook ネイティブ Hackbook アプリの例です。
- 2 つの異なるデバイスで実行しようとしましたが、問題は残ります。
- cordova 2.2.0 で試した後、2.5.0 で新しいプロジェクトを開始しました - 問題は残ります。
ご意見をお聞かせください。
アップデート:
さて、私はこの問題に多くの時間を費やしましたが、これは Android 用の新しい Facebook SDK のようです。
ここで間違っていたらよかったのですが、Android 向けの Facebook のフローの例を以下に示します: https://developers.facebook.com/docs/howtos/androidsdk/3.0/login-with-facebook/
また、SDK で他のサンプル アプリを確認すると、すべて同じように動作します。Facebook ページを表示する唯一のものは Hackbook です。これは、このアプリが古い API (バージョン 2) で実装されているためである可能性があります。
https://developers.facebook.com/docs/getting-started/facebook-sdk-for-android/3.0/
Hackbook: グラフ API 呼び出しの選択を示す別のサンプル アプリ。このサンプルは、SDK の v2.0 から変更されておらず、SDK の下位互換性を示していることに注意してください。
更新 2:
わかりました、もう少し掘り下げてみると、ここには iframe が含まれていないようです。通常の Android アクティビティ テーマをアクティビティに追加して、必要に応じて画面を変更できます。
Android のデフォルト テーマの 1 つを androidMenifest.xml に追加する例を次に示します (もちろん、独自の Faceboke のようなテーマを作成できます)。
<activity android:name="com.facebook.LoginActivity"
android:theme="@android:style/Theme.Black.NoTitleBar"
android:label="@string/facebook_login" />