私は基本的にSIMカードの状態に依存しているAndroidの自動起動アプリで作業しています。私のアプリが起動すると、SIMカードがどこで変更されたかを確認する必要があります。その後、私は現在のSIMを過去のSIMと比較します。しかし、新しいSIMカードの値を取得すると、アプリはnullポインタ例外を返します。Androidを検出するための電話マネージャ
シム状態に反応したいです。
私はSIM_STATE_READY
状態を受け取ったときに、電話マネージャから新しいSIM状態を取得したいと考えています。
telMgr = (TelephonyManager)getSystemService(TELEPHONY_SERVICE);
int simState = telMgr.getSimState();
switch (simState)
{
case (TelephonyManager.SIM_STATE_ABSENT):
System.out.println("*******************************************Sim State absent******************************");
break;
case (TelephonyManager.SIM_STATE_NETWORK_LOCKED):
System.out.println("*******************************************SIM_STATE_NETWORK_LOCKED******************************"+sim);
break;
case (TelephonyManager.SIM_STATE_PIN_REQUIRED):
System.out.println("*******************************************SIM_STATE_PIN_REQUIRED******************************"+sim);
break;
case (TelephonyManager.SIM_STATE_PUK_REQUIRED):
System.out.println("*******************************************SIM_STATE_PUK_REQUIRED******************************"+sim);
break;
case (TelephonyManager.SIM_STATE_UNKNOWN):
System.out.println("*******************************************SIM_STATE_UNKNOWN******************************"+sim);
break;
case (TelephonyManager.SIM_STATE_READY):
{
}
break;
}
default: break;
}
私はこれをやってますが、私はその後、いくつかのコードを実行できるようにSIM用にSIMの準備ができたとき、私が欲しいの状態を監視する方法を知らないんです。デバイスが起動すると、常に "SIM_STATE_UNKNOWN"が返され、プログラムの実行が完了します。
これを達成するために手伝ってください。
コードの下
HI ..私は、SIMなし..私はシムの状態に反応するようにしたい取得しながら、すべての問題を持っていけません。.. –
getSimSerialNumber()はデュアルSIM携帯電話でどのように機能しますか? – gonzobrains