2

Unity プロジェクトに最新の facebook SDK for unity (パッケージ 4.3.6) を使用しています。ログインしようとするたびに、これが LogCat からの詳細で得られるものです。

12-09 22:54:05.911: V/FBUnitySDK(19876): Unity に送信 OnLoginComplete({"cancelled":true})

そして、logcat を深く掘り下げようとすると、これらのエラーが表示されます。

12-09 22:53:52.298: E/fb4a(:):VaultDeviceSetup(19890): com.facebook.http.protocol.ApiException: アクセス トークンの検証エラー: セッションが現在保存されているセッションと一致しません。これは、セッションが作成されてからユーザーがパスワードを変更したか、Facebook がセキュリティ上の理由でセッションを変更したことが原因である可能性があります。12-09 22:53:52.298: E/fb4a(:):VaultDeviceSetup(19890): com.facebook.http.protocol.ApiResponseChecker.b(ApiResponseChecker.java:103) 12-09 22:53:52.298: E /fb4a(:):VaultDeviceSetup(19890): com.facebook.http.protocol.ApiResponseChecker.a(ApiResponseChecker.java:136) 12-09 22:53:52.298: E/fb4a(:):VaultDeviceSetup(19890) : com.facebook.http.protocol.StringResponseHandler.a(StringResponseHandler.java:31) 12-09 22:53:52.298: E/fb4a(:):VaultDeviceSetup(19890): com.facebook.http.protocol.

また、Facebook の設定で debug.keystore を見つけることができず、debug.keystore が見つからないという警告が表示されました。.android フォルダーに debug.keystore ファイルが既にありましたが、まだ検出されていませんでした。したがって、キーハッシュをこのように FacebookAndroidUtil.cs ファイルに直接入れます。

private static string debugKeyHash="MY_KEY_HASH";

また、Facebook アプリの設定にも同じキー ハッシュを設定しました。そのため、ログインの問題の原因はわかりません。ログに示されているように、それがキー ハッシュの問題であるか、アクセス トークンの問題であるか。私は2日以来それに立ち往生しています。:(

4

2 に答える 2

1

Android を使用してログインできるようにするには、「ネイティブ Android アプリ」のすべての「基本」アプリ設定が Facebook で正しく入力されていることを確認する必要があります。これらの設定は、次の場所にあります。

http://developers.facebook.com/apps/YOUR_FB_APP/summary

入力する必要がある設定は、unity エディター (Facebook > 設定の編集 > Android ビルド Facebook 設定) で見つけることができ
ます。「Android キー ハッシュのデバッグ」が見つからず、「Android デバッグ キーストア ファイルが見つかりません!」というエラー メッセージが表示される場合。Eclipse で空の Android プロジェクトを作成してビルドすることで、新しいプロジェクトを作成できます。ファイルが存在することは確かですが、おそらく Unity プロジェクトが Windows インストール ドライブにないためです。

これを解決するには、元の Facebook プラグイン (私のバージョンは 4.3.4) からいくつかのコードを変更する必要があります。YOUR_UNITY_PROJECT\Assets\Facebook\Editor\android\FacebookAndroidUtil.csの62
行目を置き換えます。

System.Environment.GetEnvironmentVariable("HOMEPATH") + @"\.android\debug.keystore" : 

System.Environment.GetEnvironmentVariable("HOMEDRIVE") + System.Environment.GetEnvironmentVariable("HOMEPATH") + @"\.android\debug.keystore" : 

また、Windows のPATH環境変数に、Java インストールに付属する「keytool」の場所が含まれていることを確認してください。例えば:

C:\Program Files\Java\jre6\bin

環境変数を変更する必要があった場合は、必ず Unity を再起動してください。

「Android ビルド Facebook 設定」を使用して、Facebook の「ネイティブ Android アプリ」設定を入力できるようになりました。

お役に立てれば!

于 2013-12-16T13:43:23.633 に答える