我有两个问题。我想获得实际的用户名并将其打印到TextView
,但没有显示任何内容。我还创建了apk文件,并直接在我的手机上测试了它,但同样的问题。
这是获取用户名的方法:
public String getUsername() {
AccountManager manager = AccountManager.get(getContext());
Account[] accounts = manager.getAccountsByType("com.google");
List<String> possibleEmails = new LinkedList<>();
for (Account account : accounts) {
possibleEmails.add(account.name);
}
if (!possibleEmails.isEmpty() && possibleEmails.get(0) != null) {
String email = possibleEmails.get(0);
String[] parts = email.split("@");
if (parts.length > 1) return parts[0];
}
return null;
}
我在Android清单文件中添加了此权限:
<uses-permission android:name="android.permission.GET_ACCOUNTS" />
在TextView
我在Fragment类方法onCreate中调用get方法:
TextView user = view.findViewById(R.id.certificateUser);
user.setText(getUsername());
所以第一个问题:为什么用户名没有显示在TextView
中,我该如何修复它。
第二个问题:当我安装apk时。许可批准没有出现。为什么?
谢谢大家:)