React-native Log in with Facebook App 刷新应用
Posted
技术标签:
【中文标题】React-native Log in with Facebook App 刷新应用【英文标题】:React-native Log in with Facebook App refreshes app 【发布时间】:2017-11-01 22:17:17 【问题描述】:我正在使用 react-native-fbsdk 并且在 ios 上。当用户使用 Facebook 登录时,他们可以按下两个按钮。 使用 Facebook 应用登录或使用电话号码或电子邮件地址登录。使用电话号码或电子邮件地址登录非常有效,我获取了用户对象并为他们创建了一个用户帐户。但是当用户按下 使用 Facebook 应用程序登录 时,我不会收到用户对象,整个应用程序都会刷新,他们被推送到登录页面并且 Facebook 按钮已变为 退出。我不太确定如何解决这个问题,因为当用户使用 Facebook 应用程序登录时,我的 console.logs 或警报都没有被调用,整个应用程序只是刷新。任何帮助将不胜感激。
<LoginButton
readPermissions=["email","public_profile"]
onLoginFinished=
(error, result) =>
console.log("onLoginFinished: ", result);
if (error)
console.log("login has error: ", result.error);
else if (result.isCancelled)
console.log("login is cancelled.");
else
AccessToken.getCurrentAccessToken().then(
(data) =>
let accessToken = data.accessToken
console.log("accessToken.toString(): ", accessToken.toString())
const responseInfoCallback = (error, result) =>
if (error)
console.log('Error fetching data: ', error)
//lert('Error fetching data: ' + error.toString());
else
console.log("responseInfoCallback:", result)
this.state.fbobj = result;
this.sendAjax();
//alert('Success fetching data: ' + result.toString());
const infoRequest = new GraphRequest(
'/me',
accessToken: accessToken,
parameters:
fields:
string: 'email,name'
,
responseInfoCallback
);
// Start the graph request.
new GraphRequestManager().addRequest(infoRequest).start()
)
onLogoutFinished=() => console.log("Logout")
【问题讨论】:
【参考方案1】:在你的按钮动作中,你需要这样的东西:
import LoginManager, AccessToken from 'react-native-fbsdk'
handlePressFacebookLogin = () =>
LoginManager.logInWithReadPermissions(['public_profile', 'email']).then(
(result) =>
if (!result.isCancelled)
AccessToken.getCurrentAccessToken().then((data) =>
console.log(data)
)
)
【讨论】:
您好,感谢您的回复,我已经在上面添加了我的代码,我假设我的代码是错误的,因为我没有 LoginManager? 你能用 Github 文档中的代码做一个测试吗? github.com/facebook/react-native-fbsdk 在使用中,它说登录按钮+访问令牌,只需复制登录按钮中的代码并测试会发生什么 页面仍然只是令人遗憾地刷新 对于 android 似乎可以工作,但对于 IOS 我相信不行,我会仔细检查我的 appdelegate.m 代码以上是关于React-native Log in with Facebook App 刷新应用的主要内容,如果未能解决你的问题,请参考以下文章
iOS 14.5 App Tracking Transparency for firebase log in react-native app
Fabric Log in with twitter 按钮显示为灰色
Can't locate Log/Dispatch.pm in @INC /Makefile out-of-date with respect to Makefile.PL
Appcenter Android Build for React-Native with Unity