在 Android Studio 中加载 Facebook 登录按钮时出现异常

Exception loading Facebook Login Button in Android Studio

我想制作一个与 facebook 集成的应用程序。我正在使用 Android Studio 1.1.0。我能够在 build.gradle(模块:应用程序)中导入 facebook skd 4.0.0 并在 Java 代码中使用它:

apply plugin: 'com.android.application'

android {
    compileSdkVersion 21
    buildToolsVersion "22.0.1"

    defaultConfig {
        applicationId "package.test"
        minSdkVersion 15
        targetSdkVersion 21
        versionCode 1
        versionName "1.0"
    }
    buildTypes {
        release {
            minifyEnabled false
            proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
        }
    }
}

repositories {
    mavenCentral()
}

dependencies {
    compile fileTree(dir: 'libs', include: ['*.jar'])
    compile 'com.android.support:appcompat-v7:22.0.0'
    compile 'com.facebook.android:facebook-android-sdk:4.0.0'
}

我还把 LoginButton 放到布局文件中 activity:

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools"
    ...
    tools:context=".MainActivity">

    <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_marginBottom="30dp"
        android:layout_marginTop="30dp" />

</RelativeLayout>

这个 exceptionsetContentView(layoutfile) 处被抛出。

我已经在 github 上检查了 facebook sdk 中的示例,但它并没有帮助我解决这个问题。 facebook sdk导入是否正确?

提前致谢!

您需要在 Activity 或应用程序 onCreate 中调用 FacebookSdk.sdkInitialize。

检查 menifest.xml 我使用了 facebookSDK 3.x 并升级了 4.x。 我有你类似的情况。我在 menifest.xml 处更改了此 "provider.."。 我解决了这个问题。 "provider .."4.x 的来源不同。此更改位于 developers.facebook.com(升级 3.x -> 4.x 页面)。