Android 如何使用不同的手机号码阻止多个注册?

Android 如何使用不同的手机号码阻止多个注册?,android,Android,我正在开发一个android应用程序,其中也包含注册表格 这里我想让用户只能在设备中注册一次。如果使用不同的手机号码和电子邮件id再次注册(通过清除数据或重新安装),应用程序将显示错误消息。我认为您需要检查设备的IMEI号 如果sim卡发生变化,IMEI号码将不会发生变化。您可以通过以下方法来完成此操作 注册时,获取用户设备IMEI编号,并将其存储在服务器数据库中。(在此步骤中,请确保IMEI编号的用户不存在)仅在移动设备上无法实现这一点。您还需要维护服务器,该服务器将设备和用户手机号码的身份保

我正在开发一个android应用程序,其中也包含注册表格


这里我想让用户只能在设备中注册一次。如果使用不同的手机号码和电子邮件id再次注册(通过清除数据或重新安装),应用程序将显示错误消息。

我认为您需要检查设备的IMEI号


如果sim卡发生变化,IMEI号码将不会发生变化。

您可以通过以下方法来完成此操作


注册时,获取用户设备IMEI编号,并将其存储在服务器数据库中。(在此步骤中,请确保IMEI编号的用户不存在)

仅在移动设备上无法实现这一点。您还需要维护服务器,该服务器将
设备
和用户
手机号码
的身份保存在一起。设备标识可以是IMEI和设备id的组合

  • 当您尝试注册时,您在客户端上执行所有本地验证,但最终必须注册一个网络呼叫,用于此发送
    设备\u id
    和新注册的号码
  • 下次当一些用户试图从同一台设备注册新号码时,服务器上已经有了这些信息,服务器可以回复说,嘿,看起来这个移动设备已经和一个号码关联了。你想改用以前的号码吗
  • 如果用户拒绝,则必须允许他删除oldnumber与当前设备之间的旧关系
  • 在那里之后,他可以继续他最初开始注册的方式
  • 此外,这完全是业务需求,无论您是想要1设备->数字,还是想要1设备->数字。但我更愿意建议使用1设备->1数字来保持安全、简单和安全
  • 对于Android版本6和更高版本,WLAN MAC地址已更改

    对于设备的唯一标识,可以使用。 我们不需要任何额外的权限来检索Android ID

    您可以获得Android Id,如:

    public String getDeviceUniqueID(Activity activity){
        String device_unique_id = Secure.getString(activity.getContentResolver(),
                Secure.ANDROID_ID);
        return device_unique_id;
    }
    

    我可以知道你到目前为止尝试了什么吗?@androidOnHigh我用android设备Id尝试了。。。它很好用。。。但若我们请求设备身份许可,用户可能会卸载我们的应用程序(出于安全考虑),那个么有什么方法可以实现这一点…我知道这一点。。。但若我们请求设备身份许可,用户可能会卸载我们的应用程序(出于安全考虑),那个么有什么方法可以实现这一点…我知道这一点。。。但是,如果我们请求设备标识的许可,用户可能会卸载我们的应用程序(出于安全考虑),那么是否有任何方法可以实现这一点…是的,这是可能的,但您可以向用户发出指示,您需要此权限(出于IMIE目的),您将不会对此权限进行任何其他使用。我知道这一点。。。但是,如果我们请求设备标识的许可,用户可能会卸载我们的应用程序(出于安全考虑),那么是否有任何方法可以实现这一点…不,这不是必需的。是的,但在play store中,它将显示应用程序需要访问设备Id,此时用户可能会感到安全问题。我听说当用户重置(出厂重置)时,此Id可能会更改他们的电话。它可靠吗?你听对了。这是你建议的有效案例