Android + Facebook SDK:"由于应用名称不匹配而未能对应用进行身份验证。"

时间:2014-05-14 16:19:50

标签: java android facebook facebook-sdk-3.14.x

在我的Android App上尝试使用Facebook SDK时,我收到了这个错误:

“由于应用名称不匹配而无法对应用程序进行身份验证。请检查对话框配置的应用程序名称。”

在阅读了很多关于这个主题的帖子后,从其他人那里得到同样的问题并成功纠正它,我仍然不可能让Facebook SDK工作......我想Facebook上的应用程序配置和我的应用程序配置有问题Android项目,但我不明白。

这是我在Facebook上的应用程序配置:

  • 应用ID:752068304844308
  • 显示名称:TestFSdk
  • 命名空间:lbptestfsdk

Facebook上的Android配置:

  • 包名:fr.laposte.testfsdk
  • 班级名称:fr.laposte.testfsdk.MainActivity
  • 密钥哈希:我用密钥工具+ openssl(android调试密钥)
  • 获得的密钥
  • 单点登录:是
  • 深层链接:否

我的Android项目:

  • Eclipse项目名称:TestFSdk(重要吗?)
  • 使用FB SDK的活动类:fr.laposte.testfsdk.MainActivity
  • strings.xml包含:

    <string name="app_id">752068304844308</string>
    <string name="app_name">TestFSdk</string>     --> is it usefull ?
    
  • AndroidManifest.xml:

    <?xml version="1.0" encoding="utf-8"?>
    <manifest xmlns:android="http://schemas.android.com/apk/res/android"
        package="fr.laposte.testfsdk"
        android:versionCode="1"
        android:versionName="1.0" >
        <uses-sdk
            android:minSdkVersion="8"
            android:targetSdkVersion="19" />
        <uses-permission android:name="android.permission.INTERNET" />
        <application
            android:allowBackup="true"
            android:icon="@drawable/ic_launcher"
            android:label="@string/app_name"
            android:theme="@style/AppTheme">
            <meta-data android:name="com.facebook.sdk.ApplicationId" android:value="@string/app_id"/>
            <activity
                android:name="fr.laposte.testfsdk.MainActivity"
                android:label="@string/app_name" >
                <intent-filter>
                    <action android:name="android.intent.action.MAIN" />
                    <category android:name="android.intent.category.LAUNCHER" />
                </intent-filter>
            </activity>
            <activity
                android:name="com.facebook.LoginActivity"
                android:theme="@android:style/Theme.Translucent.NoTitleBar"
                android:label="@string/app_name" />
        </application>
    </manifest>
    

你看错了吗?

感谢您的帮助。

3 个答案:

答案 0 :(得分:2)

请检查应用程序中的名称(在您的清单文件中)和Facebook上的应用程序名称()。

答案 1 :(得分:2)

我有类似的问题。我在 ShareDialogBu​​ilder 中使用SetApplicationName()来设置与Facebook显示名称不同的名称。他们必须匹配!

答案 2 :(得分:1)

根据文件 https://developers.facebook.com/docs/android/share?locale=es_ES

并添加

.setApplicationName("Display Name")