2011-02-08 102 views
1

HI全部android sim卡聽衆

我想在我的服務類中實現getSimstate()偵聽器。我無法做到這一點。

我知道它可以在Telephony類中的sim偵聽器的幫助下完成。但我沒有得到任何代碼來實現它。

如果有人是有碼聽SIM枯萎準備好或不...請給我...

+0

我不知道這會幫助你或不這樣張貼評論。 「看看這裏:http://marakana.com/forums/android/examples/62.html和http://www.krvarma.com/posts/android/using-android-telephonymanager/」 – 2011-02-08 09:15:09

+0

你需要立即結果或者想要監視手機上的狀態變化? – Zelimir 2011-02-08 09:58:44

回答

2
final TelephonyManager tm = (TelephonyManager) getSystemService(TELEPHONY_SERVICE); 

     tm.listen(new PhoneStateListener() { 
      @Override 
      public void onServiceStateChanged(ServiceState serviceState) { 
       //Code in here executed when the sim state has changed 
      } 

      @Override 
      public void onDataConnectionStateChanged(int state) { 

      } 
}); 
1

清單文件

<receiver 
     android:name=".SimChangedReceiver" 
     android:enabled="true" 
     android:process=":remote" > 
     <intent-filter> 
      <action android:name="android.intent.action.SIM_STATE_CHANGED" /> 
     </intent-filter> 
     <intent-filter> 
      <action android:name="android.intent.action.BOOT_COMPLETED" /> 
     </intent-filter> 
    </receiver> 

SimChangedReceiver類

public class SimChangedReceiver extends BroadcastReceiver { 

    public void onReceive(Context context, Intent intent) { 
     String action = intent.getAction(); 
     if (action.equalsIgnoreCase("android.intent.action.SIM_STATE_CHANGED")) { 
      Log.d("SimChangedReceiver", "--> SIM state changed <--"); 
     } 
    } 
}