第二个电商项目Bug点统计和解决方法

第二个完成的项目。在完成项目后,我总结了那些自己感觉重要的BUG.
1. BUG系列一:设置延时,导致Activity销毁后,延时中的PullToRefreshListView 为null
· Bug现象
Bug 85536:在网络不好情况下,快速进入退出商品详情页面,崩溃

· Bug原因
这个Bug很难实现,经过多次的操作,终于出现,是自己代码的问题。我是在加载完数据后,完成刷新,并延时了0.5秒;

PullToRefreshListView.onRefreshComplete();`

但是快速进入退出,会导致PullToRefreshListView空指针崩溃
· Bug解决方法
去掉延时,并判断是否为空

  1. BUG系列二:图片未映射到公网地址,仍是私网地址开头,导致在公网中无法显示
    · Bug现象
    Bug 88095 - 商城首页图片加载慢,无法显示
    · Bug原因
    这个Bug是因为服务器传过来的图片url还是私网开头的,在公网下无法访问。
    · Bug解决方法
    图片地址加映射,改为公网开头

  2. BUG系列三:按钮多次点击/来回切换,导致多次访问接口
    · Bug现象
    Bug 88831 - 搜索条件相同,点击多次搜索;点击搜索后,跳转到搜索结果页面,再次点击EditText返回,反复,快速点击;商品列表中出现重复的商品
    · Bug原因
    按钮多次点击,是访问了多次接口;第二种是因为,反复快速搜索,第一次返回的数据和第二次返回的数据都显示在第二次的界面
    · Bug解决方法
    搜索按钮,做了防止重复多次点击;进入搜索结果页面,先显示转圈动画,使其有个缓冲。

  3. BUG系列四:将app放至后台,长期后,Activity被回收,重新打开App崩溃
    · Bug现象
    Bug 89087 返回手机主屏幕,再进app闪退,再进APP就正常了
    · Bug原因
    首页activity 被回收导致打开是闪退
    其中MainActivtiy中有一段代码:

 /**
     * 当不确定该Activity是否会被销毁,通常发生于onpause之后onstop之前,例如:回到桌面,屏幕熄灭等动作会调用
     *
     * @param outState
     */
    protected void onSaveInstanceState(Bundle outState) {
        super.onSaveInstanceState(outState);
        outState.putInt(SAVED_FRAGMENT_INDEX, nowMenuIndex);// 保存住当前fragment的下标
    }

Activity被回收,导致MainActivity中的fragment中的getActivity()为null
· Bug解决方法
代码修改如下:

/**
     * 当不确定该Activity是否会被销毁,通常发生于onpause之后onstop之前,例如:回到桌面,屏幕熄灭等动作会调用
     *
     * @param outState
     */
    protected void onSaveInstanceState(Bundle outState) {
        /**
         * Description:Activity被回收导致fragment的getActivity为null的解决办法,
         * 将super.onSaveInstanceState(outState);注释掉,让其不再保存Fragment的状态,达到其随着MainActivity一起被回收的效果!
         */
//        super.onSaveInstanceState(outState);
        outState.putInt(SAVED_FRAGMENT_INDEX, nowMenuIndex);// 保存住当前fragment的下标
    }

这样这个麻烦的Bug就解决了,感谢我的同事帮忙解决。

  1. BUG系列五:轮播广告栏有图片改变,刷新后,图片错乱
    · Bug现象
    Bug 89031 轮播广告的图片在第二张时,往前移动到第一张显示第二张的图片
    · Bug原因
    轮询广告刷新后,图片的回收不正确,有错乱
    · Bug解决方法
    用了蠢的方法,刷新,重新去新建轮询广告,删除之前那个。

  2. BUG系列六:商品详情中,评论上滑加载,最后一页的正在加载一直下不去,不消失。
    · Bug现象
    Bug 89032 商品详情中,评论上滑加载,最后一页的正在加载一直下不去,不消失
    · Bug原因:不知道
    · Bug解决方法
    修改代码:
    @Override
    public void onPullUpToRefresh(PullToRefreshBase refreshView) {// 下拉加载更多
    refreshView.getLoadingLayoutProxy().setRefreshingLabel("正在加载");
    pageNumber++;
    getValuation();
    if (pageNumber * pageSize > mAdapter.getCount()) {
    loadFinish();
    // pullToRefreshListView.onRefreshComplete();
    // toast("已获得所有消息");
    return;
    }

你可能感兴趣的:(Android项目Bug总结)