bug描述:小歪錢包中可以錄入多張銀行卡,其中一張可以設(shè)置為主卡,在進(jìn)行主卡更換時(shí),需要填寫交易密碼進(jìn)行驗(yàn)證,才能保證設(shè)置主卡成功;測(cè)試過程中,在輸入密碼時(shí),總會(huì)產(chǎn)生吐司信息(偶現(xiàn)bug)
bug分析:吐司msg為后臺(tái)返回字段,鎖定網(wǎng)絡(luò)請(qǐng)求位置,發(fā)送網(wǎng)絡(luò)請(qǐng)求條件,那種操作會(huì)引發(fā)這個(gè)bug出現(xiàn); bug出現(xiàn)的條件:輸入一次密碼錯(cuò)誤,彈框重新輸入,再次輸入密碼會(huì)重現(xiàn)bug;
bug解決:因?yàn)樽远x鍵盤和textfiled 每次輸入都會(huì)以通知的方式通知監(jiān)聽者,監(jiān)聽者根據(jù)拿到的密碼length來決定進(jìn)行什么操作,最后將輸入的密碼以字符串的方式傳遞給監(jiān)聽者,那么存在問題,輸入密碼錯(cuò)誤之后進(jìn)行push操作,并不會(huì)將原來保存密碼的字符串情況,因此再重新輸入密碼時(shí),都會(huì)滿足密碼驗(yàn)證請(qǐng)求條件,而密碼串還是保存上一次錯(cuò)誤的密碼;解決方案兩個(gè);在網(wǎng)絡(luò)請(qǐng)求的回調(diào)中添加清空密碼代碼,自定義控件中的通知沒有必要時(shí)刻發(fā)送,只監(jiān)聽滿足條件的通知
推理:這個(gè)地方會(huì)出現(xiàn)這個(gè)bug,其他使用到安全鍵盤的地方都會(huì)隱藏這個(gè)bug,全局更改,值得注意的地方是----在密碼輸入正確的時(shí)候也會(huì)清空密碼,這時(shí)要保證傳遞的密碼是有值的,要等密碼串賦值完畢才能清空,不然push到下一個(gè)界面會(huì)出現(xiàn)密碼為空的錯(cuò)誤,這也是我一個(gè)疏忽........................