//监听类
private phonestatelistener getphonestatelistener(final int sub) {
phonestatelistener sphonestatelistener = new phonestatelistener(sub) {
@override
public void onservicestatechanged(servicestate servicestate) {
// todo auto-generated method stub
if (servicestate != null) {
if (servicestate.getstate() == servicestate.state_in_service) {
hasservice = true;
} else {
hasservice = false;
}
} else {
if (debug) log.d(tag, "no service state...may be the balance is not enough" + sub);
}
super.onservicestatechanged(servicestate);
}
};
return sphonestatelistener;
}
//注册监听
private void registerphonelistener() {
//获取卡号数,msimtelephonymanager 这个类api没有开放,可以通过编译源码
//得到frameworks.jar包并导入你的工程, 然后import android.telephony.msimtelephonymanager;
msub = msimtelephonymanager.getdefault().getphonecount();
mphonestatelistener = new phonestatelistener[msub];
for (int i = 0; i < msub; i++) {
mphonestatelistener[i] = getphonestatelistener(i);
mphone.listen(mphonestatelistener[i], phonestatelistener.listen_service_state);
}
}
//取消监听
private void unregisterphonelistener() {
msub = msimtelephonymanager.getdefault().getphonecount();
for (int i = 0; i < msub; i++) {
if(mphonestatelistener[i] != null){
mphone.listen(mphonestatelistener[i], phonestatelistener.listen_none);
}
}
}
}
如对本文有疑问, 点击进行留言回复!!
LongClick原理、上下文菜单原理、EditText长按弹窗原理、WebView长按弹窗自定义、修复WebView全选重复bug ———————————————— 版权声明:本文为CSDN博主「
JobScheduler 实现 特定时间,特定条件(系统空闲,电池电量,磁盘空间 ……)下执行任务
温习Android基础知识——《第一行代码(第三版)》读书笔记 Chapter 10 Service
网友评论