Intereting Posts
Ошибка: запрошенный URL-адрес возвратил ошибку: 403 Запрещено во время доступа Как окрасить и выравнивать элемент spinner на Android? Управление переключателем не работает на Dialog в Android версии 5.0 Intermittent Connection Reset by Peer errors в Android, подключающемся к конечной точке .NET REST Как скрыть / показать скрытые компоненты в элементах списка при прокрутке в android? Элементы RecyclerView не меняются Кинжал 2 – Внедрение библиотек третьих сторон в службы и действия Android Как я могу получить как обратные, так и сделанные ключи в программной клавиатуре EditText? Обнаружение истинного размера экрана (в пикселях) для устройств Android, на которых есть панель навигации по программному обеспечению Firebase Permission denied Error Заголовок предпочтений Android / сводный текст Как прикрепить гибкий маркер на карте что-то вроде Uber и Lyft? Как бы вы описали текущее состояние платформы Android? Shared prefrence хранимое значение, не работающее с android onCreate () Как искать информацию о пользователе из идентификатора GAIA Google?

Ошибка раздувания класса com.facebook.login.widget.LoginButton с Android Studio и Facebook 4.6.0

В моем build.gradle я импортирую Facebook:

compile 'com.facebook.android:facebook-android-sdk:4.6.0' 

В моем классе приложения я инициализирую SDK для Facebook:

 FacebookSdk.sdkInitialize(getApplicationContext()); 

В моем AndroidManifest.xml:

  <activity android:name="com.facebook.FacebookActivity" android:configChanges="keyboard|keyboardHidden|screenLayout|screenSize|orientation" android:label="@string/app_name" android:theme="@android:style/Theme.Translucent.NoTitleBar" /> <receiver android:name="com.greenrobot.pirates.HelloFacebookBroadcastReceiver" /> <meta-data android:name="com.facebook.sdk.ApplicationId" android:value="@string/fb_app_id" /> Размер  <activity android:name="com.facebook.FacebookActivity" android:configChanges="keyboard|keyboardHidden|screenLayout|screenSize|orientation" android:label="@string/app_name" android:theme="@android:style/Theme.Translucent.NoTitleBar" /> <receiver android:name="com.greenrobot.pirates.HelloFacebookBroadcastReceiver" /> <meta-data android:name="com.facebook.sdk.ApplicationId" android:value="@string/fb_app_id" /> 

Это работает с Genymotion. На моем устройстве я получаю сообщение об ошибке, что он не может раздуть класс.

 01-01 19:30:02.207 5880-5880/? E/dalvikvm﹕ Could not find class 'com.greenrobot.pirates.Home$19$1', referenced from method com.greenrobot.pirates.Home$19.onCurrentProfileChanged 01-01 19:30:03.604 5880-5880/? E/AndroidRuntime﹕ FATAL EXCEPTION: main java.lang.RuntimeException: Unable to start activity ComponentInfo{com.greenrobot.pirates/com.greenrobot.pirates.Home}: android.view.InflateException: Binary XML file line #17: Error inflating class com.facebook.login.widget.LoginButton at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2343) at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2395) at android.app.ActivityThread.access$600(ActivityThread.java:162) at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1364) at android.os.Handler.dispatchMessage(Handler.java:107) at android.os.Looper.loop(Looper.java:194) at android.app.ActivityThread.main(ActivityThread.java:5371) at java.lang.reflect.Method.invokeNative(Native Method) at java.lang.reflect.Method.invoke(Method.java:525) at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:833) at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:600) at dalvik.system.NativeStart.main(Native Method) Caused by: android.view.InflateException: Binary XML file line #17: Error inflating class com.facebook.login.widget.LoginButton at android.view.LayoutInflater.createView(LayoutInflater.java:613) at android.view.LayoutInflater.createViewFromTag(LayoutInflater.java:687) at android.view.LayoutInflater.rInflate(LayoutInflater.java:746) at android.view.LayoutInflater.inflate(LayoutInflater.java:489) at android.view.LayoutInflater.inflate(LayoutInflater.java:396) at android.view.LayoutInflater.inflate(LayoutInflater.java:352) at com.android.internal.policy.impl.PhoneWindow.setContentView(PhoneWindow.java:281) at android.app.Activity.setContentView(Activity.java:1881) at com.greenrobot.pirates.Home.setupCreateNewAccount(Home.java:885) at com.greenrobot.pirates.Home.checkForUser(Home.java:826) at com.greenrobot.pirates.Home.onCreate(Home.java:1171) at android.app.Activity.performCreate(Activity.java:5122) at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1081) at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2307)            at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2395)            at android.app.ActivityThread.access$600(ActivityThread.java:162)            at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1364)            at android.os.Handler.dispatchMessage(Handler.java:107)            at android.os.Looper.loop(Looper.java:194)            at android.app.ActivityThread.main(ActivityThread.java:5371)            at java.lang.reflect.Method.invokeNative(Native Method)            at java.lang.reflect.Method.invoke(Method.java:525)            at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:833)            at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:600)            at dalvik.system.NativeStart.main(Native Method) Caused by: java.lang.reflect.InvocationTargetException at java.lang.reflect.Constructor.constructNative(Native Method) at java.lang.reflect.Constructor.newInstance(Constructor.java:417) at android.view.LayoutInflater.createView(LayoutInflater.java:587)            at android.view.LayoutInflater.createViewFromTag(LayoutInflater.java:687)            at android.view.LayoutInflater.rInflate(LayoutInflater.java:746)            at android.view.LayoutInflater.inflate(LayoutInflater.java:489)            at android.view.LayoutInflater.inflate(LayoutInflater.java:396)            at android.view.LayoutInflater.inflate(LayoutInflater.java:352)            at com.android.internal.policy.impl.PhoneWindow.setContentView(PhoneWindow.java:281)            at android.app.Activity.setContentView(Activity.java:1881)            at com.greenrobot.pirates.Home.setupCreateNewAccount(Home.java:885)            at com.greenrobot.pirates.Home.checkForUser(Home.java:826)            at com.greenrobot.pirates.Home.onCreate(Home.java:1171)            at android.app.Activity.performCreate(Activity.java:5122)            at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1081)            at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2307)            at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2395)            at android.app.ActivityThread.access$600(ActivityThread.java:162)            at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1364)            at android.os.Handler.dispatchMessage(Handler.java:107)            at android.os.Looper.loop(Looper.java:194)            at android.app.ActivityThread.main(ActivityThread.java:5371)            at java.lang.reflect.Method.invokeNative(Native Method)            at java.lang.reflect.Method.invoke(Method.java:525)            at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:833)            at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:600)            at dalvik.system.NativeStart.main(Native Method) Caused by: java.lang.NoClassDefFoundError: com.facebook.R$style at com.facebook.login.widget.LoginButton.getDefaultStyleResource(LoginButton.java:576) at com.facebook.FacebookButtonBase.<init>(FacebookButtonBase.java:64) at com.facebook.login.widget.LoginButton.<init>(LoginButton.java:200)            at java.lang.reflect.Constructor.constructNative(Native Method)            at java.lang.reflect.Constructor.newInstance(Constructor.java:417)            at android.view.LayoutInflater.createView(LayoutInflater.java:587)            at android.view.LayoutInflater.createViewFromTag(LayoutInflater.java:687)            at android.view.LayoutInflater.rInflate(LayoutInflater.java:746)            at android.view.LayoutInflater.inflate(LayoutInflater.java:489)            at android.view.LayoutInflater.inflate(LayoutInflater.java:396)            at android.view.LayoutInflater.inflate(LayoutInflater.java:352)            at com.android.internal.policy.impl.PhoneWindow.setContentView(PhoneWindow.java:281)            at android.app.Activity.setContentView(Activity.java:1881)            at com.greenrobot.pirates.Home.setupCreateNewAccount(Home.java:885)            at com.greenrobot.pirates.Home.checkForUser(Home.java:826)            at com.greenrobot.pirates.Home.onCreate(Home.java:1171)            at android.app.Activity.performCreate(Activity.java:5122)            at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1081)            at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2307)            at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2395)            at android.app.ActivityThread.access$600(ActivityThread.java:162)            at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1364)            at android.os.Handler.dispatchMessage(Handler.java:107)            at android.os.Looper.loop(Looper.java:194)            at android.app.ActivityThread.main(ActivityThread.java:5371)            at java.lang.reflect.Method.invokeNative(Native Method)            at java.lang.reflect.Method.invoke(Method.java:525)            at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:833)            at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:600)            at dalvik.system.NativeStart.main(Native Method) 

редактировать:

Файл xml с кнопкой входа:

 <?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="match_parent" android:layout_height="match_parent" android:orientation="vertical" > <com.facebook.login.widget.LoginButton xmlns:facebook="http://schemas.android.com/apk/res-auto" android:id="@+id/login_button" android:layout_width="400dp" android:layout_height="500dp" android:layout_marginBottom="30dp" android:layout_marginTop="30dp" android:src="@drawable/login_button" /> </LinearLayout> 

Оказывается, я включил multidex и работал на 5.x (эмулятор), но не на 4.x (мое устройство). Как только я добавил библиотеку поддержки multidex, он начал работать правильно.

Похоже, что вы забываете добавить атрибут android: name в тег приложения в файле манифеста.

  <application android:name="{your_app_class}" 

В FacebookSdk.sdkInitialize(getApplicationContext()); мы должны добавить FacebookSdk.sdkInitialize(getApplicationContext()); Перед setContentView(R.layout.YOUR_LAYOUT)