当前位置: 首页 > news >正文

做的网站没有手机版好用的网站建设工具

做的网站没有手机版,好用的网站建设工具,定制网站 多少钱,建设工程质量安全监督站官方网站一、功能简介 需求:开机自动开始搜网并显示网络列表 那么就不能将相关类做成单例,不能将subId、phoneId等卡相关的属性作为UI、服务的全局变量。 二、流程设计 NetworkSelectReceiver:监听开机广播,触发拉起搜网服务 NetworkOperatorService:搜网服务,完成后调起用户…

一、功能简介

需求:开机自动开始搜网并显示网络列表

那么就不能将相关类做成单例,不能将subId、phoneId等卡相关的属性作为UI、服务的全局变量。

二、流程设计

NetworkSelectReceiver:监听开机广播,触发拉起搜网服务

NetworkOperatorService:搜网服务,完成后调起用户界面

NetworkOperatorList:网络模式列表,显示搜网结果

三、开发代码

(一)NetworkSelectReceiver

接收器配置 AndroidManifest.xml

        <receiverandroid:name=".settings.network.NetworkSelectReceiver"android:exported="true"><intent-filter><action android:name="android.intent.action.BOOT_COMPLETED" /><action android:name="android.intent.action.SIM_STATE_CHANGED" /></intent-filter></receiver>

内部逻辑

onReceive => checkAndUpdateKeyWhenFirstBoot => getNetworkSelectionModeForPhone

public class NetworkSelectReceiver extends BroadcastReceiver {private Context mContext;private SubscriptionManager mSubscriptionManager;private static final int EVENT_GET_NETWORK_SELECTION_MODE_DONE = 300;private static final String DATA_PHONE_ID = "phone_id";private final static String TAG = "NetworkSelectReceiver ";//1、监听开机广播@Overridepublic void onReceive(Context context, Intent intent) {mcontext = context;if (TelephonyManager.getDefault().isMultiSimEnabled()) { //双卡设备mSubscriptionManager = (SubscriptionManager) context.getSystemService(Context.TELEPHONY_SUBSCRIPTION_SERVICE);List<SubscriptionInfo> mSubscriptionInfoList = mSubscriptionManager.getActiveSubscriptionInfoList();int phoneCount = TelephonyManager.getDefault().getPhoneCount();if (mSubscriptionInfoList == null) {Log.d(TAG, "onReceive, no ActiveSubscriptionInfoList, phoneCount = " + phoneCount);return ;} else {Log.d(TAG, "onReceive, mSubscriptionInfoList = " + mSubscriptionInfoList + ", phoneCount = " + phoneCount);}//遍历并操作每一张卡。for (int i = 0; i < phoneCount; i++) {if (SubscriptionManager.isValidPhoneId(i)) {Log.d(TAG,"onReceive, isValidPhoneId = " + i);checkAndUpdateKeyWhenFirstBoot(context, i);}}} else {}//单卡逻辑}  //onReceive//2、场景校验(根据需求添加)private boolean checkAndUpdateKeyWhenFirstBoot(Context context, int phoneId) {Log.d(TAG,"checkAndUpdateKeyWhenFirstBoot, phoneId = " + phoneId);SharedPreferences prefs = ShowNetworkUtils.getSharedPreferences(context);String simKey = NetworkUtils.KEY_FIRST_BOOT + phoneId;//没有用到卡信息,此处用于debug,确认双卡是否正常TelephonyManager tm = (TelephonyManager) context.getSystemService(Context.TELEPHONY_SERVICE);String mccmnc = "";if (tm == null) {return false;} else {mccmnc = tm.getSimOperatorNumericForPhone(phoneId);}int simState = tm.getSimState(phoneId);Log.d(TAG,"checkAndUpdateKeyWhenFirstBoot, simState = " + simState + ", mccmnc =" + mccmnc);//卡没加载好以及飞行模式下不发起搜网boolean isEnabled = (Settings.Glob
http://www.yayakq.cn/news/733757/

相关文章:

  • 产品销售网站模板企业数字化转型
  • 外贸推广网站公司瑞丽企业网站建设
  • 为什么自己做的网站打开是乱码互联网保险理赔到底有多难
  • 东莞网页设计教程谷歌seo什么意思
  • 网站建好了怎么做淘宝客百度网站链接提交页面
  • 用电脑做兼职的网站比较好古典 网站 模板
  • 网站图标 psd邯郸教育网站建设
  • 成都青羊建设厅官方网站代码优化网站排名
  • 注册公司代理费用沧州网站建设制作设计优化
  • 部门网站的开发 意义怎么做自己的html网站
  • 哪些是+joomla做的网站商务电商网站建设
  • 电子网站建贵州网络推广介绍
  • 电子商务网站规划做设计的地图网站有哪些
  • 苏宁网站优化与推广天津网站推广优化
  • 介绍在家里做的点心的网站wordpress页面分析插件
  • 上海建站价格树莓派怎么打开 wordpress
  • 网站建设邀标比选国家信息公示网查营业执照
  • 合肥模板建站多少钱做网站cookie传值
  • 亳州有做网站的吗购物商城起名
  • 乐山网站建设流程苏州网站建设情况
  • 网站的图片怎么制作天津市房地产官网
  • 百顺网站建设做一个软件要多少钱
  • 杭州网站建设杭州手机网站建设营销推广费用包括哪些
  • app网站开发成功案例创建公司网站需要注意什么
  • 有什么展厅设计做的好的网站wordpress api文章列表接口
  • 网站开发时建立有效的()
  • 上住房和城乡建设部网站网站建设岗位工作职责
  • 小米路由HD可以做网站吗网站建设技术外包
  • 设计网站pc版想学电商从什么学起
  • 网站管理机制建设情况网站开发怎么拉客户