Android app升級版本後閃退

            Android新版本開發完成後經過多個版本的測試手機均測試正常,正式上線後卻被客戶反應閃退。獲取到客戶使用的客戶端型號和Android版本測試後均沒問題(此時大腦飄過N匹羊駝)

           通過抓取客戶使用日誌找出奔潰異常日誌

 

 Unable to start activity ComponentInfo{com.**/com.**Activity}:
												 com.alibaba.fastjson.JSONException: syntax error, expect {, actual [, pos 14
                                                     at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:3297)
                                                     at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:3405)
                                                     at android.app.ActivityThread.-wrap12(Unknown Source:0)
                                                     at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1994)
                                                     at android.os.Handler.dispatchMessage(Handler.java:108)
                                                     at android.os.Looper.loop(Looper.java:166)
                                                     at android.app.ActivityThread.main(ActivityThread.java:7523)
                                                     at java.lang.reflect.Method.invoke(Native Method)
                                                     at com.android.internal.os.Zygote$MethodAndArgsCaller.run(Zygote.java:245)
                                                     at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:921)
                                                  Caused by: com.alibaba.fastjson.JSONException: syntax error, expect {, actual [, pos 14

 再查看2年前寫的代碼

String jsonResult = SharedPrefUtils.getString(activity, id
				+ Constant.**_JSON, "");
		if (!TextUtils.isEmpty(jsonResult)) {
			processData(jsonResult);
		}
		// 網絡獲取數據(正式環境請打開)
		LogUtils.i(TAG, "網絡獲取數據");
		getData();

c

恍然大悟,因爲新的版本更改了json數據格式,這段代碼邏輯是先獲取緩存數據再通過網絡獲取服務端數據,導致舊版本緩存的json數據解析異常,造成閃退。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章