关于android:维护用于注册我的应用帐户的单个设备

Maintain single device for registering account of my app

我正在为iOS和Android应用程序设计一个带有注册电话号码的聊天应用程序。

我想确保这个号码和应用程??序一次只能在一部手机上运行,??如下所示,我想确保应用程序一旦通过身份验证到具有相同帐户详细信息的其他设备,就会禁用之前的设备。

1)应用程序安装在一个iOS设备注册帐户上,并再次删除并重新安装在同一设备上
2)安装在iOS手机上的应用程序然后在Android应用程序上验证相同的帐户iOS手机应用程序应显示已禁用的帐户
3)应用程序安装在两个具有相同编号的Android手机上应自动禁用旧手机。

原因是我不希望运行相同数量的应用程序的多个副本以避免像whatsapp那样。

我正在考虑用于iOS和Android Mac Id使用的设备钥匙串,以便在Apple停止UDID广播到服务器之后解决这个问题。
关于这个供应商ID苹果提供的还有一个模糊的想法。

谁能就此提出建议。我怎么能实现这样的应用程序只在一部手机上运行相同的帐户,而其他只是停止。


如果您使用已注册的电话号码绑定应用程序,则它只能在一台设备上运行,因为您不能同时在1+设备上运行相同的ph值。 从用户的角度来看,如果他在多个手机之间改变相同的数字,按照你的情况,这个应用程序阻止用户的先前设备,它听起来像一个永无止境的循环。 每次用户以前的设备被阻止或者可能导致阻止所有用户的设备。 至少对我来说没有意义。


以下方法用于获取设备ID

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
public static String getDeviceID(Context p_context) throws Throwable
{
    String m_deviceID = null;
    TelephonyManager m_telephonyManager = null;
    m_telephonyManager = (TelephonyManager) p_context
            .getSystemService(Context.TELEPHONY_SERVICE);

    m_deviceID = m_telephonyManager.getDeviceId().toString();

    if (m_deviceID == null ||"00000000000000".equalsIgnoreCase(m_deviceID))
    {
        m_deviceID ="AAAAAAA";
    }

    return m_deviceID;
}

有关标识的更多信息,请参阅此处。