Android - 获取实际用户的用户名

时间:2017-08-14 11:38:30

标签: android username

我有两个问题。我想获得实际的用户名并将其打印到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时。许可批准没有出现。为什么?

谢谢大家:)

0 个答案:

没有答案