我已经拍下了下面的Facebook说明。这有什么问题?我的应用程序不断崩溃,有关ApplicationId的异常不应为null。但我已在清单中将我的应用ID添加为<meta-data android:name="com.facebook.sdk.ApplicationId" android:value="@string/facebook_app_id"/>
;将其作为strings.xml
资源中的字符串添加为<string name="facebook_app_id">0000000000</string>
所以我认为说明是错误的,因为它没有说明要添加哪个uses-permission
,而是说要调用值为com.facebook.sdk.ApplicationId
的字符串资源键Facebook_app_id
。这是链接https://developers.facebook.com/docs/android/getting-started#eclipse
答案 0 :(得分:1)
我遇到了同样的问题。这就是我如何解决它 - 我想。至少在做完这些事情之后,问题就消失了。
在strings.xml中
<?xml version="1.0" encoding="utf-8"?>
<resources>
….
<string name="com.facebook.sdk.ApplicationId">facebook_app_id</string>
<string name="facebook_app_id">111111111</string>
….
</resources>
清单中的
<application
… >
<meta-data
android:name="com.facebook.sdk.ApplicationId"
android:value="@string/facebook_app_id" />
</application>
</manifest>
请注意strings.xml
文件中有两个条目。
答案 1 :(得分:0)
非常简单
1。)在Facebook上创建应用程序,获取随后用于附加到应用程序的app_id。
2.。)在AndroidManifest.xml中定义你的applicationId,如下所示:
<meta-data android:name="com.facebook.sdk.ApplicationId" android:value="@string/app_id"/>
<application android:label="@string/app_name"....
标记下的
其中app_id
是strings.xml中的字符串。
示例(Facebook示例应用程序):
<application android:label="@string/app_name"
android:icon="@drawable/icon"
android:theme="@android:style/Theme.NoTitleBar"
>
<activity android:name=".HelloFacebookSampleActivity"
android:label="@string/app_name"
android:windowSoftInputMode="adjustResize">
<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" />
<meta-data android:name="com.facebook.sdk.ApplicationId" android:value="@string/app_id"/>
</application>
请注意<application>
标记下添加的值
并在strings.xml中(确认这样做)
<string name="app_id">xxxxxxxxxxxx</string>
3.。)在清单
中设置权限<uses-permission android:name="android.permission.INTERNET"/>
这是一个Android要求,因此应用程序可以访问互联网。
因此,使用权限,上面的清单看起来像
<uses-permission android:name="android.permission.INTERNET" />
<application android:label="@string/app_name"
android:icon="@drawable/icon"
android:theme="@android:style/Theme.NoTitleBar"
>
<activity android:name=".HelloFacebookSampleActivity"
android:label="@string/app_name"
android:windowSoftInputMode="adjustResize">
<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" />
<meta-data android:name="com.facebook.sdk.ApplicationId" android:value="@string/app_id"/>
</application>