super(context);
executorService = Executors.newSingleThreadExecutor();
contentResolver = mContext.getContentResolver();
- //监听各种状态
- //需要初始化一次,然后进行监听
- getWifiState();
- getGpsState();
- getBtState();
- //需要监听的
- getUnReadMsgState();
- getAlarmState();
- getWarningMsgReadState();
- getSilentState();
- checkIcTalkMsg();
- checkHasMissCall();
- getShakeState();
- getPlaneMode();
- checkAlarmState();
- observerContentChange();
+ executorService.execute(() -> {
+ //监听各种状态
+ //需要初始化一次,然后进行监听
+ getWifiState();
+ getGpsState();
+ getBtState();
+ //需要监听的
+ getUnReadMsgState();
+ getAlarmState();
+ getWarningMsgReadState();
+ getSilentState();
+ checkIcTalkMsg();
+ checkHasMissCall();
+ getShakeState();
+ getPlaneMode();
+ checkAlarmState();
+ observerContentChange();
+ });
}
private void observerContentChange() {
getShakeState();
}
});
+ contentResolver.registerContentObserver(Uri.parse(SETTINGS + ".has_missed_phone"),
+ true,
+ new ContentObserver(null) {
+ @Override
+ public void onChange(boolean selfChange) {
+ checkHasMissCall();
+ }
+ });
}
private void checkAlarmState() {
}
private void checkHasMissCall() {
- // missCallState.postValue(true);
+ String hasMissedPhone = getContent("has_missed_phone");
+ ICLogger.d("hasMissedPhone == > " + hasMissedPhone);
+ if ("1".equals(hasMissedPhone)) {
+ missCallState.postValue(Boolean.TRUE);
+ } else {
+ missCallState.postValue(Boolean.FALSE);
+ }
}
private void getSilentState() {