vaenow / cordova-plugin-app-update

App updater for Cordova/PhoneGap
MIT License
299 stars 146 forks source link

app crash whith this plug #75

Closed simeon49 closed 6 years ago

simeon49 commented 6 years ago

It's worker very well until yesterday

logs:

12-13 10:54:20.155 19778 19847 E AndroidRuntime: FATAL EXCEPTION: pool-1-thread-2
12-13 10:54:20.155 19778 19847 E AndroidRuntime: Process: com.yufu.intfire, PID: 19778
12-13 10:54:20.155 19778 19847 E AndroidRuntime: java.lang.NumberFormatException: null
12-13 10:54:20.155 19778 19847 E AndroidRuntime:    at java.lang.Integer.parseInt(Integer.java:483)
12-13 10:54:20.155 19778 19847 E AndroidRuntime:    at java.lang.Integer.valueOf(Integer.java:611)
12-13 10:54:20.155 19778 19847 E AndroidRuntime:    at com.vaenow.appupdate.android.CheckUpdateThread.getVersionCodeRemote(CheckUpdateThread.java:148)
12-13 10:54:20.155 19778 19847 E AndroidRuntime:    at com.vaenow.appupdate.android.CheckUpdateThread.run(CheckUpdateThread.java:57)
12-13 10:54:20.155 19778 19847 E AndroidRuntime:    at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1133)
12-13 10:54:20.155 19778 19847 E AndroidRuntime:    at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:607)
12-13 10:54:20.155 19778 19847 E AndroidRuntime:    at java.lang.Thread.run(Thread.java:760)
12-13 10:54:20.160  2626  2896 I WtProcessController: Receive am_crash event for pid: 19778 pkg = com.yufu.intfire

xml file:

<update>
    <version>10700</version>
    <name>fire-app</name>
    <url>https://I do not want you see the apk dowload path.apk</url>
</update>
simeon49 commented 6 years ago

这个app已经很久没有改动了,昨天突然崩溃,从错误代码来看是解析xml version时错误,而这个xml 也很久没有改动, 插件更新到1.4.13 问题依旧

vaenow commented 6 years ago

@ebenezer49 昨天合并了这个版本 https://github.com/vaenow/cordova-plugin-app-update/pull/73

你报错的代码位置在这里:https://github.com/vaenow/cordova-plugin-app-update/blob/4610c82440a779a6c8ad8ebf047a367095cff2d4/src/android/CheckUpdateThread.java#L148 能否在代码前后添加日志,检查一下具体是什么原因。

simeon49 commented 6 years ago

找到问题了, 在android 下跑 InputStream is = returnFileIS(updateXmlUrl); 读取回来的xml为空,导致后面取version时崩溃. 但是我把插件代码里的 returnFileIS 方法拿到linux环境下跑 又是可以正确获取xml内容的,两次的 updateXmlUrl 都是一样的,估计是存放 updateXmlUrl(https://gitee.com/alex2202375/release/raw/master/fire-app/android-version.xml) 的服务器(第三方) 做了什么限制,

vaenow commented 6 years ago

问题找到了就好 🙂 👍