Tuf*_*fan 34 android facebook-login android-facebook react-native fbsdk
嘿,我知道以前曾经问过,但没有一个解决方案似乎有所帮助.我在我的应用程序中首次使用Facebook SDK.
我尝试过的:
我曾尝试过在互联网上发现的大部分内容,但没有得到任何关于此的内容.
这是我的MainActivity.java:
public class MainActivity extends Activity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
FacebookSdk.sdkInitialize(getApplicationContext());
}
}
Run Code Online (Sandbox Code Playgroud)
这是My Activitymain.xml:
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
xmlns:facebook="http://schemas.android.com/apk/res-auto"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical">
<com.facebook.login.widget.LoginButton
android:id="@+id/connectWithFbButton"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_centerInParent="true"
android:layout_gravity="center_horizontal"
android:text=" connect_with_facebook" />
</LinearLayout>
Run Code Online (Sandbox Code Playgroud)
看我的Logcat:
05-13 16:30:39.332: E/AndroidRuntime(10264): Caused by: The SDK has not been initialized, make sure to call FacebookSdk.sdkInitialize() first.
Run Code Online (Sandbox Code Playgroud)
小智 38
对于 SDK v13.+,您必须添加App ID和Client Token。
<string name="facebook_app_id">1234</string>
<string name="facebook_client_token">56789</string>
Run Code Online (Sandbox Code Playgroud)
<application android:label="@string/app_name" ...>
...
<meta-data android:name="com.facebook.sdk.ApplicationId" android:value="@string/facebook_app_id"/>
<meta-data android:name="com.facebook.sdk.ClientToken" android:value="@string/facebook_client_token"/>
...
</application>
Run Code Online (Sandbox Code Playgroud)
您可以在 FB 开发者帐户中找到您的客户端令牌:
应用程序 > 仪表板 > 设置 > 高级 > 安全性 > 客户端令牌。
Bea*_*ith 30
在为本机反应项目集成Android SDK时,我使用React Native v0.30 +项目配置指南完成了Android,然后运行react-native run-android然后获得了此屏幕:
我知道这FacebookSdk.sdkInitialize已被弃用了.看这里
经过一些搜索,我意识到该指南没有包含为我的应用添加Facebook App ID的步骤.
打开android/app/src/main/AndroidManifest.xml文件并查看<application>标记以确认此meta-data标记是否存在:
<meta-data android:name="com.facebook.sdk.ApplicationId"
android:value="@string/facebook_app_id"/>
Run Code Online (Sandbox Code Playgroud)打开android/app/src/main/res/values/strings.xml文件并确认这是一个"facebook_app_id"字符串标记,其中您的应用ID为值:
<string name="facebook_app_id">YOUR_APP_ID_HERE</string>
Run Code Online (Sandbox Code Playgroud)跑react-native run-android.
这些步骤对我有用.
Gui*_*uto 16
您不再需要使用FacebookSdk.sdkInitialize.检查你的:
<meta-data android:name="com.facebook.sdk.ApplicationId"
android:value="@string/facebook_app_id"/>
Run Code Online (Sandbox Code Playgroud)
在<application>标签里面.
sdkInitialize()被弃用是有原因的。
转到 android 文件夹中的清单文件并添加以下内容
<meta-data android:name="com.facebook.sdk.ApplicationId"
android:value="@string/facebook_app_id"/>
Run Code Online (Sandbox Code Playgroud)
在您的strings.xml文件 (res/values/strings.xml)中追加字符串条目之后:
<string name="facebook_app_id">APP_ID</string>
Run Code Online (Sandbox Code Playgroud)
关闭您的 Metro Builder 并使用 react-native run-android 重建您的项目
只需遵循 2 步骤,您的 Facebook Sdk iw 就可以在 React Native 中工作
<meta-data android:name="com.facebook.sdk.ApplicationId"
android:value="@string/facebook_app_id"/>
<string name="facebook_app_id">YOUR_APP_ID_HERE</string>
Run Code Online (Sandbox Code Playgroud)
不需要这个,因为它现在已被弃用
FacebookSdk.sdkInitialize(getApplicationContext());
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
36187 次 |
| 最近记录: |