2

Facebook SDK Java バインディング ( https://developers.facebook.com/docs/tutorials/androidsdk/3.0/scrumptious/authenticate/ )に Mondroid サンプルを使用しています。プロジェクトに facebook バインディングを追加し、セッション ベースのログイン アクティビティをセットアップするための facebook SDK の指示に従おうとしました。

注: Xamarin Web サイトで利用可能な xamarin facebook バインディングは不完全です。Facebook 認証の例に従うために必要なクラスがありません。SDKのV2をまだ使用していると思います。

Com.Faccebook.UiLifecycleHelper の初期化中に、「引数 applicationId を null にすることはできません」というエラーが表示されます

問題の原因となっている私のコードは、Facebook UILifecyleHelper を初期化しているときです。FBCallback は、facebook の StatusCallback インターフェイスを実装する私のクラスです。

uiHelper = new UiLifecycleHelper (this, new FBCallback (this));
uiHelper.OnCreate (bundle);

追加してみました:

<meta-data android:name="com.facebook.sdk.ApplicationId" android:value="@string/app_id" />

AndroidManifest.xml に追加し、以下を Strings.xml に追加します。

<string name="app_id">12471902489108</string>

ただし、アプリケーション ID はまだ読み取れません。

「com.facebook.sdk.ApplicationId」に 10 個の異なる大文字を使用しようとしましたが、それでも同じエラーが発生します。

例外のスタック トレースは次のとおりです。

Java.Lang.NullPointerException: Argument applicationId cannot be null
at Android.Runtime.JNIEnv.CallVoidMethod (intptr,intptr,Android.Runtime.JValue[ [0x00023] in /Users/builder/data/lanes/monodroid-mlion-master/294d4619/source/monodroid/src/Mono.Android/src/Runtime/JNIEnv.g.cs:368
at Com.Facebook.UiLifecycleHelper.OnCreate (Android.OS.Bundle) [0x00048] in c:\buddyup\monodroid-samples\monodroid-samples\Facebook\Mono.Facebook\obj\Debug\generated\src\Com.Facebook.UiLifecycleHelper.cs:158
at BuddyUp.FBLoginActivity.OnCreate (Android.OS.Bundle) [0x00027] in c:\buddyup\mobile\buddyup_mobile\BuddyUp\FBLoginActivity.cs:71
at Android.App.Activity.n_OnCreate_Landroid_os_Bundle_ (intptr,intptr,intptr) [0x00010] in /Users/builder/data/lanes/monodroid-mlion-master/294d4619/source/monodroid/src/Mono.Android/platforms/android-10/src/generated/Android.App.Activity.cs:1561
at (wrapper dynamic-method) object.0f7bec40-34dd-40a5-a892-0a3ffbf275a4 (intptr,intptr,intptr) <IL 0x00017, 0x00043>

--- End of managed exception stack trace ---
java.lang.NullPointerException: Argument applicationId cannot be null
at com.facebook.internal.Validate.notNull(Validate.java:29)
at com.facebook.Session.<init>(Session.java:224)
at com.facebook.Session.<init>(Session.java:209)
at com.facebook.UiLifecycleHelper.onCreate(UiLifecycleHelper.java:73)
at buddyup.FBLoginActivity.n_onCreate(Native Method)
at buddyup.FBLoginActivity.onCreate(FBLoginActivity.java:33)
at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1047)
at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:1611)
at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:1663)
at android.app.ActivityThread.access$1500(ActivityThread.java:117)
at android.app.ActivityThread$H.handleMessage(ActivityThread.java:931)
at android.os.Handler.dispatchMessage(Handler.java:99)
at android.os.Looper.loop(Looper.java:130)
at android.app.ActivityThread.main(ActivityThread.java:3683)
at java.lang.reflect.Method.invokeNative(Native Method)
at java.lang.reflect.Method.invoke(Method.java:507)
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:839)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:597)
at dalvik.system.NativeStart.main(Native Method)
4

0 に答える 0