美文网首页Android Utils
Android 监听 SIM 卡状态

Android 监听 SIM 卡状态

作者: 几千里也 | 来源:发表于2015-04-27 10:36 被阅读1791次
    import android.app.Service;
    import android.content.BroadcastReceiver;
    import android.content.Context;
    import android.content.Intent;
    import android.telephony.TelephonyManager;
    
    public class SimStateReceiver extends BroadcastReceiver {
        private final static String ACTION_SIM_STATE_CHANGED = "android.intent.action.SIM_STATE_CHANGED";
        private final static int SIM_VALID = 0;
        private final static int SIM_INVALID = 1;
        private int simState = SIM_INVALID;
    
        public int getSimState() {
            return simState;
        }
    
        @Override
        public void onReceive(Context context, Intent intent) {
            // Sim state changed
            if (intent.getAction().equals(ACTION_SIM_STATE_CHANGED)) {
                TelephonyManager tm = (TelephonyManager)context.getSystemService(Service.TELEPHONY_SERVICE); 
                int state = tm.getSimState();
                switch (state) {
                    case TelephonyManager.SIM_STATE_READY :
                        simState = SIM_VALID;
                        break;
                    case TelephonyManager.SIM_STATE_UNKNOWN :
                    case TelephonyManager.SIM_STATE_ABSENT :
                    case TelephonyManager.SIM_STATE_PIN_REQUIRED :
                    case TelephonyManager.SIM_STATE_PUK_REQUIRED :
                    case TelephonyManager.SIM_STATE_NETWORK_LOCKED :
                    default:
                        simState = SIM_INVALID;
                        break;
                }
            }
        }
    }
    

    相关文章

      网友评论

        本文标题:Android 监听 SIM 卡状态

        本文链接:https://www.haomeiwen.com/subject/framfttx.html