必威体育Betway必威体育官网
当前位置:首页 > IT技术

解决:更改短信中心号码不能及时更新显示

时间:2019-08-17 01:11:03来源:IT技术作者:seo实验室小编阅读:62次「手机版」
 

短信中心号码

【测试步骤】:

1、进入短信界面

2、菜单-设置

3、修改短信中心号码(Set the SIM's smsc number) 保存

【测试结果】:提示保存成功,但是号码没有改变,退出重新进入设置才会看到号码更新

【预期结果】:提示保存成功,号码变为修改过的号码

相关Activity:通过Logcat中I/activitymanager(  896):我们可以定位到该类-MessagingPreferenceActivity;

相关控件:mSmscPrefList.add(pref);

根据分析我们发现在MessagingPreferenceActivity的registerreceiver()方法中动态注册了广播接收器对设置短信中心号码的写卡操作进行监听,但是在写卡成功后并没有对页面中短信中心号码进行更新,因此我们添加以下代码(红色+加粗部分)为添加代码。

private void registerReceiver() {

   if (mReceiver != null) return;

   mReceiver = new BroadcastReceiver() {

   @Override

   public void onreceive(context context, intent intent) {

   String action = intent.getAction();

   if (Intent.ACTION_aiRPLANE_MODE_CHANGED.equals(action)) {

       updateSMSCPref(ALL_SUB, isAirplaneModeOn());

       message msg = new Message();

       msg.what = AIR_PLANE_MODE_CHANGED;

       msg.arg1 = (isAirplaneModeOn() ? AIR_PLANE_MODE_ENABLE : AIR_PLANE_MODE_disable);

       mAirPlaneModehandler.sendMessage(msg);

   /*AddBy:yabin.huang BugID:SWBUG00029352 Date:20140521*/

   } else if(TelephonyIntents.ACTION_SIM_STATE_CHANGED.equals(action)){

       if(isSimReady())

       updateSMSCPref(ALL_SUB, isAirplaneModeOn());

   } else if (NOTIFY_SMSC_ERROR.equals(action)) {

       showtoast(R.string.set_smsc_error);

   } else if (NOTIFY_SMSC_SUCCESS.equals(action)) {

       showToast(R.string.set_smsc_success);

       int sub = intent.getIntExtra(SUB, 0);

       String summary = intent.getStringExtra(SMSC);

       Log.d("bill","summary--"+summary);

       mSmscPrefList.get(sub).setSummary(summary);

   } else if (NOTIFY_SMSC_UPDATE.equals(action)) {

       int sub = intent.getIntExtra(SUB, 0);

       if(TextUtils.isempty(mSmscPrefList.get(sub).getSummary())){

           String summary = intent.getStringExtra(SMSC);

           if(summary==null||summary.length()==0){

               updateSMSCPref(ALL_SUB, isAirplaneModeOn());

               mSmscPrefList.get(sub).setEnabled(false);

               mSmscPrefList.get(sub).setSummary(null);

           }else{

               mSmscPrefList.get(sub).setEnabled(true);

               mSmscPrefList.get(sub).setSummary(summary);

           }

       }else{

           mSmscPrefList.get(sub).setEnabled(true);

       }

   }

   }

   };

   IntentFilter filter = new IntentFilter();

   /*AddBy:yabin.huang BugID:SWBUG00029352 Date:20140521*/

   filter.addAction(TelephonyIntents.ACTION_SIM_STATE_CHANGED);

   filter.addAction(Intent.ACTION_AIRPLANE_MODE_CHANGED);

   filter.addAction(NOTIFY_SMSC_ERROR);

   filter.addAction(NOTIFY_SMSC_SUCCESS);

   filter.addAction(NOTIFY_SMSC_UPDATE);

   registerReceiver(mReceiver, filter);

   }

相关阅读

Dubbox、Zookepeer以及管理中心的使用(附Demo)

Dubbox:是一个分布式服务框架,其前身是阿里巴巴开源项目Dubbo,国内的电商以及互联网项目中使用较多,后期阿里巴巴停止了维护,当当网在

天猫试用中心入口开通在哪里?买家如何成功申请?

天猫商家想要推广自己的商品,可以报名参加一些大流量的活动,如天猫品牌闪购、天猫试用中心等。天猫使用中心可以给卖家带来很多流量

天猫企业购电话号码是什么?客服在哪联系?

各位企业商家,如果你要入驻天猫企业购的话,遇到了相关天猫企业购的任何问题,都是可以拨打天猫企业购电话号码咨询的,大家知道天猫企业

淘宝试用中心有哪些技巧?应该怎么去玩转呢?

淘宝上面可以提供的功能是非常多的,如果仅仅是购物的话,那就会失去了很多的乐趣,比如说在淘宝上面有一个功能叫做淘宝试用中心,是可以

淘宝卖家领券中心在哪里设置?商家设置优惠券方法介绍

在淘宝领券中心有很多的优惠券可以领取,这个都是商家们自己设置的,设置的好处就是可以增加店铺的销量和用户的购买欲望,毕竟有优惠,谁

分享到:

栏目导航

推荐阅读

热门阅读