我做了一个安卓应用程序。
现在在开始屏幕中,我只想检查用户是否已经注册的天气。如果他已注册,则应直接将其引导至联系屏幕,如果未注册,则应将其引导至注册屏幕。
主要问题是: -
当他/她打开他/她的应用程序时,无需从用户那里获取任何输入,我们就可以检查用户是否已经注册。
每部手机只能由 1 位用户使用应用程序。
类似的例子,比如 What'sApp 聊天,每部手机一个应用程序。所以请尽快指导我。
我做了一个安卓应用程序。
现在在开始屏幕中,我只想检查用户是否已经注册的天气。如果他已注册,则应直接将其引导至联系屏幕,如果未注册,则应将其引导至注册屏幕。
主要问题是: -
当他/她打开他/她的应用程序时,无需从用户那里获取任何输入,我们就可以检查用户是否已经注册。
每部手机只能由 1 位用户使用应用程序。
类似的例子,比如 What'sApp 聊天,每部手机一个应用程序。所以请尽快指导我。
首先获取设备唯一标识ID
final TelephonyManager tm = (TelephonyManager)getBaseContext().getSystemService(Context.TELEPHONY_SERVICE);
final String tmDevice, tmSerial, androidId;
tmDevice = "" + tm.getDeviceId();
tmSerial = "" + tm.getSimSerialNumber();
androidId = "" + android.provider.Settings.Secure.getString(getContentResolver(), android.provider.Settings.Secure.ANDROID_ID);
UUID deviceUuid = new UUID(androidId.hashCode(), ((long)tmDevice.hashCode() << 32) | tmSerial.hashCode());
String deviceId = deviceUuid.toString();
在清单文件中:
<uses-permission android:name="android.permission.READ_PHONE_STATE" />
在您的服务器数据库上注册它。
在启动时检查您的服务器数据库是否已经注册了唯一标识符 ID。
如果是,进入联系屏幕,如果不是,进入注册屏幕。
我无法完全回答您的问题,但根据我的理解有解决方案。
使用下面给定的android ID并将其发送到服务器,它将检查此ID并返回响应,如果未注册并重定向到注册屏幕。
private String android_id = Secure.getString(getContext().getContentResolver(),
Secure.ANDROID_ID);
我认为这是这样做的方法,因为如果您在注册页面上设置 sharedPreferences 将无法帮助您在另一台设备上跟踪这是新设备或用户。
希望这能解决您的问题...