我已经为 Android 构建了一个小游戏,它已经获得了大量用户。
该应用程序将支持单人游戏(有高分,统计)和多人游戏,所以为了做到这一点,我需要用户使用用户名和电子邮件注册(在高分中显示用户名,通过邮件/用户名邀请)。
当用户第一次下载应用程序时,他们必须注册才能玩 - 这通常可以正常工作,但显然不是所有人。我有一个包含用户、分数等的数据库和一个在用户注册时调用的脚本,它检查用户名或邮件是否已经被占用。
对服务器的请求看起来有点像这样:
try {
HttpClient client = new DefaultHttpClient();
String postURL = "http://somepostaddress.com/Script?... (params)";
HttpPost post = new HttpPost(postURL);
HttpResponse responsePOST = client.execute(post);
HttpEntity resEntity = responsePOST.getEntity();
if (resEntity != null) {
//Read server response - if ok, save the username etc in shared prefs
//If not ok, read the error message, and notify the user (email / username taken)
}
} catch (Exception e) {
e.printStackTrace();
}
再次 - 这对几乎每个用户都非常有效......但显然很多荷兰用户遇到错误并且无法像其他人一样注册。如果代码中发生异常或者服务器响应不是脚本可以返回的响应之一,则会显示他们收到的错误消息。
问题是我无法调试它,或者使用当前版本获取更多关于哪里出了问题的详细信息。而且我真的不明白为什么这似乎只发生在荷兰用户身上——而不是所有人身上,但确实很多。尚未收到来自其他国家/地区的用户遇到这种情况的报告。
已经对用户名做了一个正则表达式,所以只允许 AZ、az 和 0-9,所以它不应该是任何带有特殊字符或任何东西的东西。
任何人都经历过这样的事情,并且知道出了什么问题或如何解决这个问题 - 也许该帖子应该以另一种方式完成?
提前致谢。