BUG标题一:用户A在零点零分零秒充值成功,但是页面不显示该该订单的充值记录。 定位分析:查看后台数据表,用户A在零点零分零秒充值成功的记录存在,页面却不显示, 检查页面代码发现开发代码中忽略零点零分零秒的这一秒钟,导致这一秒钟的数据不在页面展示 BUG标题二:用户A在调第三方支付网关接口时,生成了订单号T,但未支付,供 应商却自动向用户A的账户充值。 定位分析:由于补单代码在仅仅判断第三方支付返回超时,且未同时校验用户A支付 订单号T支付状态,自动修改订单号T的状态为1(1:在数据库字段值表示为“已支 付”),导致供应商认为用户的订单T已支付,直接按支付的金额给该用户充值等额的钱
BUG标题三:界面销毁时,未关闭广播, dialog等,崩溃 Bug现象 Bug 85778:同一个账号,两部手机登陆,第一个登陆的手机,点击我的优惠券会退出app Bug原因: Fragement 存在广播和Dialog等有关控件,fragement销毁了,但是未关闭广播或控件,导致崩溃 Bug解决方法 在Fragement的onDestroy()中及时处理未注销的广播或Dialog。 Bug标题四:未加载完布局,先调用布局,导致布局为null,崩溃 Bug现象 Bug 86244: 断网情况下,进入APP,点击消息,崩溃 Bug原因: Activity继承BaseActivity,在onCreate()方法内,显示出错信息的布局,未放在initView(), initData(),initListener()前方,导致在initData()获得网络数据失败,需调用错误布局时,错误布局仍为空,调用失败,崩溃 Bug解决方法 将布局的注入放在initView(), initData(),initListener()前方。 Bug标题五:Fragement不存在于viewPager,先调用其里面的方法,导致获取不到上下文,崩溃 Bug现象 Bug 86514: 断网情况下,进入APP,点击购物车,崩溃 Bug原因 在MainActivity下有调用到shoppingCartFragment(购物车)下的requestCartItems()(获取购物车信息)的方法。在断网情况下,第一次进入App,点击购物车,直接调用requestCartItems()。无网络情况下,同BUG系列二,崩溃。因为Fragement不存在,布局未加载。 Bug解决方法 在MainAcitvity调用requestCartItems() 方法时,加判断,判断Fragement是否已存在,shoppingCartFragment.isAdded(). Bug标题六:更换账号时,HashMap里的数据未清除,引起的数据问题 Bug现象 介绍:主页中的商品列表是通过获取HashMap里的 数据显示 Bug: 从有商品列表数据的地区,更换帐号到没有任何商品的地区,首页应该显示无商品,但是仍显示上个地区商品数据。退出app,重新进入后,首页则正确显示。 Bug原因 在首页第一次,获得商品后,存入HashMap,更换帐号到没有任何商品的地区时,因为未获得新的数据,未去更新HashMap里的数据,导致该BUG产生。 疑问:假设原为有商品的A区,更换帐号到有商品的B区时,为何没出现,该BUG? 解释:更换到有商品的B区时,从服务器那获得到了新数据,重新将HashMap原来的老数据替换掉;而如果该地区无任何数据,未更新HashMap. Bug解决方法 在退出账号的同时,清空HashMap。 Bug标题七:图片压缩的边框计算未跟控件一致 Bug现象 Bug 86983: 商品详情下面的图片介绍现在是把右边减掉了一部分,改成以实际大小缩小原图 Bug原因 介绍:这个流程是图片压缩后,计算好其边框后,存入TextView。 在计算图片压缩后应显示的宽度时,是按手机的屏幕宽度,未按TextView的宽度,导致图片右边被减掉。修改前图 Bug解决方法 按TextView的宽度计算压缩后图片的宽度,另外注意 padding和layout_margin是左右都有;ScreenWWidth是PX,需将dip转px;修改后如图