1. 程式人生 > >第二個電商專案Bug點統計和解決方法

第二個電商專案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;
    }