Imansible inizializzare LoginButton Facebook-sdk per android

im lavoro su un progetto android e voglio mettere una funzionalità di accesso di Facebook, ho aggiunto la sdk di Facebook Corretto ma non ho potuto inizializzare LoginButton

**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:57) at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45) at java.lang.reflect.Constructor.newInstance(Constructor.java:526) 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:471) at java.util.concurrent.FutureTask.run(FutureTask.java:262) at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145) at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615) at java.lang.Thread.run(Thread.java:745) 

qui è il mio AppManifest.xml:

  • Come utilizzare l'algorithm di riempimento delle alluvioni in Android?
  • Come creare un nuovo emulatore con dimensione dello schermo personalizzato?
  • Scrivere e leggere i dati json nell'archiviazione interna android
  • Come rendere un EditText non valido / disabilitato
  • Come ridimensionare AlertDialog sul display della tastiera
  • Andamento di cursore Android SQLite fuori limite sull'account SELECT (*) FROM tabella
  •  <?xml version="1.0" encoding="utf-8"?> 

     <uses-permission android:name="android.permission.INTERNET"/> <application android:allowBackup="true" android:icon="@mipmap/ic_launcher" android:label="@string/app_name" android:theme="@style/AppTheme" > <activity android:name=".helloActivity" android:label="@string/title_activity_hello" > </activity> <activity android:name="com.facebook.FacebookActivity" android:configChanges= "keyboard|keyboardHidden|screenLayout|screenSize|orientation" android:theme="@android:style/Theme.Translucent.NoTitleBar" android:label="@string/app_name" /> <meta-data android:name="com.facebook.sdk.ApplicationId" android:value="@string/app_id"/> </application> 

    Ho specificato l'App_id in Strings.xml. Grazie per l'aiuto

  • Android Studio - keystore di debug
  • Come fare image riempire il background di RelativeLayout senza allungare
  • Come vengono creati i titolari nell'elenco personalizzato?
  • Non get il file apk aggiornato, il progetto in esecuzione sul android studio
  • Android - non aggiornare Google Maps v2 in rotazione
  • La directory dei dati non dispone di authorization di lettura / scrittura in Android
  • 3 Solutions collect form web for “Imansible inizializzare LoginButton Facebook-sdk per android”

    Ciò è dovuto alla non initialization di FacebookSdk prima del suo utilizzo. Basta aggiungere sotto la linea:

    FacebookSdk.sdkInitialize(mContext);

    nel caso in cui l'host di LoginButton sia:
    1.Activity- prima di setContentView(R.layout.activity_main)
    2.Fragment prima di inflater.inflate(R.layout.fragment_main, container, false)

    Inoltre non dimenticare di ascoltare la callback in onActivityResult() nei casi sopra per aggiornare l'UI di LoginButton .

    Ho controllato l'ultima SDK4.0.1, in quel com.facebook.login.widget.LoginButton è disponibile. Ma questo non è stato trovato in facebook-android-sdk-3.17.1, ci abbiamo solo com.facebook.widget.LoginButton disponibile. Facebook non ha comunicato agli sviluppatori o ai loro changelog che la class LoginButton si è spostata nella sottocartella.

    Molto strano perché facebook non aggiorni correttamente .. Anche il documento per l'accesso Android è sbagliato !!

    Aggiungi questo a Manifest.xml

     <meta-data android:name="com.facebook.sdk.ApplicationId" android:value="@string/facebook_app_id" /> <meta-data android:name="com.facebook.sdk.ApplicationName" android:value="@string/app_name" /> 
    L'Android è un fan Android di Google, tutto su telefoni Android, Android Wear, Android Dev e applicazioni Android Games e così via.