我正在创建一个拥有LinkedIn登录信息的应用。我正在关注this文档。但是当我点击登录按钮时,应用程序会重定向到LinkedIn应用程序并要求登录。成功登录后,它会重定向到我的应用程序。但没有任何反应。 onActivityResult
上也没有任何事情发生。
以下是我的代码。在片段上实现登录
LISessionManager.getInstance(getActivity()).init(getActivity(), buildScope(), new AuthListener() {
@Override
public void onAuthSuccess() {
getLinkedInProfile();
Toast.makeText(getApplicationContext(), "success" , Toast.LENGTH_LONG).show();
}
@Override
public void onAuthError(LIAuthError error) {
Toast.makeText(getApplicationContext(), "failed " + error.toString(), Toast.LENGTH_LONG).show();
}
}, true);
//
private static Scope buildScope() {
return Scope.build(Scope.R_BASICPROFILE, Scope.R_EMAILADDRESS);
}
和onActivityResult如下:
@Override
public void onActivityResult(int requestCode, int resultCode, Intent data) {
super.onActivityResult(requestCode, resultCode, data);
LISessionManager.getInstance(getActivity()).onActivityResult(getActivity(), requestCode, resultCode, data);
}
已在LinkedIn开发者控制台上添加了哈希和包名称。我错过了什么吗?请帮忙
答案 0 :(得分:5)
发现LinkedIn sdk的onActivityResult
触发父活动而不是片段onActivityResult
。因此,您必须将以下代码写入您的父活动onActivityResult
以触发片段onActivityResult
。
@Override
protected void onActivityResult(int requestCode, int resultCode, Intent data) {
super.onActivityResult(requestCode, resultCode, data);
yourFragment.onActivityResult(requestCode, resultCode, data);
}
答案 1 :(得分:1)
尝试登录以确保是否调用函数。