SIM カードのシリアルをシリアルという文字列内の packagename.preferences.xml に保存できましたが、現在のシリアルを比較したいと思います。
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();
}