2015-04-08 2 views
3

Я работаю над тем, чтобы работать с приложениями в Facebook, и я не могу понять, почему я не могу ссылаться на LoginButton, найденный в SDK для Facebook. Ниже приведена ошибка, с которой я сталкиваюсь, когда смотрю макет, который определяет LoginButton.Следующие классы не могут быть созданы: - com.facebook.widget.LoginButton

<com.facebook.login.widget.LoginButton 
     android:id="@+id/login_button" 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:layout_gravity="center_horizontal" 
     android:layout_marginTop="30dp" 
     android:layout_marginBottom="30dp" /> 
java.lang.NoClassDefFoundError: Could not initialize class 
com.facebook.login.widget.LoginButton at 
sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method) 
     at 
sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:62) 
     at 
sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45) 
     at java.lang.reflect.Constructor.newInstance(Constructor.java:408) 
     at 
org.jetbrains.android.uipreview.ViewLoader.createNewInstance(ViewLoader.java:413) 
     at 
org.jetbrains.android.uipreview.ViewLoader.loadView(ViewLoader.java:105) 
     at 
com.android.tools.idea.rendering.LayoutlibCallback.loadView(LayoutlibCallback.java:176) 
     at 
android.view.BridgeInflater.loadCustomView(BridgeInflater.java:207) 
     at 
android.view.BridgeInflater.createViewFromTag(BridgeInflater.java:132) 
     at 
android.view.LayoutInflater.rInflate_Original(LayoutInflater.java:806) 
     at 
android.view.LayoutInflater_Delegate.rInflate(LayoutInflater_Delegate.java:64) 
     at android.view.LayoutInflater.rInflate(LayoutInflater.java:782) at 
android.view.LayoutInflater.inflate(LayoutInflater.java:504) at 
android.view.LayoutInflater.inflate(LayoutInflater.java:385) at 
com.android.layoutlib.bridge.impl.RenderSessionImpl.inflate(RenderSessionImpl.java:400) 
     at com.android.layoutlib.bridge.Bridge.createSession(Bridge.java:332) 
     at 
com.android.ide.common.rendering.LayoutLibrary.createSession(LayoutLibrary.java:350) 
     at 
com.android.tools.idea.rendering.RenderService$5.compute(RenderService.java:708) 
     at 
com.android.tools.idea.rendering.RenderService$5.compute(RenderService.java:697) 
     at 
com.intellij.openapi.application.impl.ApplicationImpl.runReadAction(ApplicationImpl.java:932) 
     at 
com.android.tools.idea.rendering.RenderService.createRenderSession(RenderService.java:697) 
     at 
com.android.tools.idea.rendering.RenderService.render(RenderService.java:816) 
     at 
com.intellij.android.designer.designSurface.AndroidDesignerEditorPanel$6.run(AndroidDesignerEditorPanel.java:480) 
     at 
com.intellij.util.ui.update.MergingUpdateQueue.execute(MergingUpdateQueue.java:320) 
     at 
com.intellij.util.ui.update.MergingUpdateQueue.execute(MergingUpdateQueue.java:310) 
     at 
com.intellij.util.ui.update.MergingUpdateQueue$2.run(MergingUpdateQueue.java:254) 
     at 
com.intellij.util.ui.update.MergingUpdateQueue.flush(MergingUpdateQueue.java:269) 
     at 
com.intellij.util.ui.update.MergingUpdateQueue.flush(MergingUpdateQueue.java:227) 
     at 
com.intellij.util.ui.update.MergingUpdateQueue.run(MergingUpdateQueue.java:217) 
     at 
com.intellij.util.concurrency.QueueProcessor.runSafely(QueueProcessor.java:238) 
     at com.intellij.util.Alarm$Request$1.run(Alarm.java:327) at 
java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511) 
     at java.util.concurrent.FutureTask.run(FutureTask.java:266)  at 
java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142) 
     at 
java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617) 
     at java.lang.Thread.run(Thread.java:745) 
+1

Какую версию Facebook SDK вы используете? –

+0

'com.facebook.android:facebook-android-sdk:4.0.0' –

+0

Можете ли вы попробовать очистить свой проект, а затем использовать Gradle Sync для синхронизации проекта? –

ответ

0

если вы используете Android Studio, то по этой ссылке: Could not initialize LoginButton Facebook-sdk for android.

Если вы используете Eclipse, перекрестно проверьте, что вы добавили проект библиотеки и метаданные вместе с активностью входа в манифест.

Кроме того, это может произойти из-за использования неподдерживаемого api из android sdk. Повторите попытку, используя более высокий уровень api.

Смежные вопросы