gpt4 book ai didi

android - 如何获取安卓手机用户的谷歌账户名?

转载 作者:行者123 更新时间:2023-11-29 14:24:23 29 4
gpt4 key购买 nike

所以我正在用unity引擎做手游,想发布到android target。

现在我的游戏将有我自己的自定义排行榜,我认为当用户获得分数时,游戏应该将他的身份昵称、分数发送到服务器。

所以为了得到他的不同名字,我想得到他的谷歌账户名。 (当然我可以选择接收用户输入的昵称的选项,但是好吧,很烦人)

我只需要电子邮件格式的前半部分(即用户名)例如,如果用户的 google 帐户是 asdf@gmail.com,我只想提取“asdf”。

那么,怎么做呢?

这是获得他独特昵称的好方法吗?

谢谢。


所以我确实喜欢这个,但是不起作用。

public class MainActivity extends UnityPlayerActivity implements        AndroidInterface{
private String usergoogleName;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
GetUserName();
}
public void GetUserName(){
AccountManager manager = AccountManager.get(this);
Account[] accounts = manager.getAccountsByType("com.google");
List<String> username = new LinkedList<String>();

for (Account account : accounts) {
username.add(account.name);
}
usergoogleName = username.get(0);
sendMessage("Main Camera", "JavaMsg", usergoogleName);
}

@Override
public void sendMessage(String target, String method, String params) {
// TODO Auto-generated method stub
UnityPlayer.UnitySendMessage(target, method, params);
}

在统一方面,我将脚本附加到“主相机”对象并编写,

public string name;
public void JavaMsg(string str){
name = str;
}
void OnGUI(){
GUI.Label(new Rect(100, 200, 300, 100), "google account name is " + name);
}

但是当我在制作 .apk 文件后在我的手机上运行它时,没有读取帐户名。

怎么了?

最佳答案

试试这个

AccountManager manager = AccountManager.get(context);
Account[] accounts = manager.getAccountsByType("com.google");
List<String> username = new LinkedList<String>();

for (Account account : accounts) {
username.add(account.name);
}

并向android manifest 添加权限

<uses-permission android:name="android.permission.GET_ACCOUNTS" />

关于android - 如何获取安卓手机用户的谷歌账户名?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29689809/

29 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com