我已经设法将我的 SIM 卡序列号保存到 packagename.preferences.xml 中的一个名为 serial 的字符串中,但现在我想比较我当前的序列号。
当我使用 android.intent.boot_completed 广播接收器启动手机时。String 里面的值 value = sp.getString("serial", ""); 我无法正确比较串行字符串的当前值。
TelephonyManager tMgr=(TelephonyManager)context.getSystemService(Context.TELEPHONY_SERVICE);
String currentSerial = tMgr.getSimSerialNumber();
Toast.makeText(context, "Current Serial Number: " + currentSerial, Toast.LENGTH_LONG).show();
SharedPreferences sp = PreferenceManager.getDefaultSharedPreferences(context);
String value = sp.getString("serial", "");
if (value == currentSerial)
{
Toast.makeText(context, "SIM Change detected!", Toast.LENGTH_SHORT).show();
}
else {
Toast.makeText(context, "No SIM Change detected!", Toast.LENGTH_SHORT).show();
}