use*_*779 7 android google-plus
我想在我的应用程序中登录Google Plus.我可以连接但无法获取当前用户的个人资料信息
@Override
public void onConnected() {
String accountName = mPlusClient.getAccountName();
mPlusClient.loadPerson(this, "me");
}
@Override
public void onPersonLoaded(ConnectionResult status, Person person) {
Log.d("onPersonLoaded - ConnectionResult", "" + status);
Log.d("onPersonLoaded - person", "" + person);
if (status.getErrorCode() == ConnectionResult.SUCCESS) {
Log.d(TAG, "Display Name: " + person.getDisplayName());
}
}
Run Code Online (Sandbox Code Playgroud)
我能得到帐户名onConnected,但onPersonLoaded给null的person
日志显示:
onPersonLoaded - ConnectionResult(29861): ConnectionResult{statusCode=NETWORK_ERROR, resolution=null}
onPersonLoaded - person(29861): null
Run Code Online (Sandbox Code Playgroud)
来自这里的文档
public static final int NETWORK_ERROR
发生网络错误.重试应解决问题.
常数值:7(0x00000007)
但无论我重试多少次,我都会得到同样的错误.这些是我使用的权限:
<uses-permission android:name="android.permission.GET_ACCOUNTS" />
<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.AUTHENTICATE_ACCOUNTS" />
<uses-permission android:name="android.permission.READ_PROFILE" />
Run Code Online (Sandbox Code Playgroud)
我不知道如何解决这个问题并且一直在搜索过去2个小时.非常感谢任何帮助,谢谢.
Sha*_*wat 13
最后我找到了答案.:)
loadPerson()并且loadPeople()只会在使用有效密钥签名的导出APK中返回预期数据.在这里有效我的意思是它应该与SHAI和您的API密钥控制台的其他规范相匹配.
在下面的示例代码中,您可能会错过的另一件事是在PlusClient构造函数中定义范围,例如
mPlusClient = new PlusClient.Builder(this, this, this).setScopes(Scopes.PLUS_LOGIN)
.setVisibleActivities("http://schemas.google.com/AddActivity").build();
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
6762 次 |
| 最近记录: |