react-native中facebook登录配置

455 阅读2分钟

开启掘金成长之旅!这是我参与「掘金日新计划 · 12 月更文挑战」的第1天

一、准备资料

facebook开发者账号,以备后续使用,官方网址:<https://www.facebook.com/login>

二、开发顺序

1、生成密钥 debug和release

debug对应命令

Keytool -exportcert -alias androiddebugkey -keystore D:\项目实际地址\android\app\debug.keystore | openssl sha1 -binary | openssl base64

生成demo: Xo8WBi6jzSxKDVR4drqm84yr9iU=  (以实际生成为准)

release对应命令

keytool -exportcert -alias MYAPP_RELEASE_KEY_ALIAS -keystore D:\项目实际地址\android\app\my-release-key.keystore | openssl sha1 -binary | openssl base64

keytool -exportcert -alias MYAPP_RELEASE_KEY_ALIAS -keystore F:\applist\babasiba\android\app\my-release-key.keystore | openssl sha1 -binary | openssl base64

生成demo: oewPhpG5+wtnrcy49jHdJnPvw9E=  (以实际生成为准)

生成Facebook Key Hash需要使用到OpenSSL這個工具,下载地址是<https://code.google.com/archive/p/openssl-for-windows/downloads>

image.png 下载完成之后解压 终端进入到/bin目录下 执行上述命令,生成的密钥记录在共享的APP资料里,把密钥发送给业务,业务填完资料后会得到一个appid, 这个是我们需要的,

2、应用创建之后生成测试账号,用测试账号登录facebook,

测试通过以后按照以下方法生成正式密钥

1. 生成 .apk 文件

2. 打开一个存在 .apk 文件的终端

3. 请记住,您必须为发布和调试生成两个单独的 SHA1 密钥。例如,只需使用 bedug.apk 和 release.apk 运行以下命令

4. 跑 keytool -list -printcert -jarfile yourapkname.apk

5. 你会得到

MD500:00:A0:00:00:00:72:00:00:B9:00:00:00:3D:00:00

SHA1: 00:00:94:00:67:00:FA:00:4E:00:CE:80:00:1A:00:00:00:00:00:00

SHA256: 00:00:00:34:00:00:00:00:00:00:00:00:00:00:00:00:56:00:F5:00:00:49:00:4A: 00:00:00:00:00:00:00:001. 复制SHA1打开

[http://tomeko.net/online_tools/hex_to_base64.php](<http:// http//tomeko.net/online_tools/hex_to_base64.php>)

2. 过去在十六进制字符串中,您的密钥哈希将在输出中(base64)3. 复制您的密钥散列并在

[developers.facebook.com](http://developers.facebook.com/)上添加您的应用设置

3APP端按照

<https://github.com/thebergamo/react-native-fbsdk-next> 进行配置

3、错误调试,Android上架以后facebook无法登陆发生以下错误

image.png

1,登陆到客户的google play中找到以下页面,2、粘贴应用签名密钥证书的SHA-1 到tomeko.net/online_tool…生成key值,

3、复制您的密钥散列并在developers.facebook.com上添加您的应用设置

image.png