PhoneGap/Cordova Android应用签名发布注意事项
来源:互联网 发布:考上清华美院知乎 编辑:程序博客网 时间:2024/05/16 07:14
今天终于要发布Android HybirdApp了,安装以前做原生应用的流程发布签名Apk,没想到马上遇到了几个问题,现在把它们的解决办法整理下来。
export signed Apk 遇到下面错误,这个问题是多次读取inputStream导致的,貌似和eclise的自动编译有关,解决办法是关掉相关工程的自动编译。
Export Signed APK 前先將 Eclipse 的 Project -> Build Automatically关闭,第一个坑解决!
[2014-07-25 10:50:58 - SalesApp] Proguard returned with error code 1. See console[2014-07-25 10:50:58 - SalesApp] java.io.IOException: Can't read [/Users/zhangxitao/work/salesapp/platforms/android/CordovaLib/bin/salesapp-cordovalib.jar] (Can't process class [com/squareup/okhttp/internal/spdy/SpdyConnection$Builder.class] (Unexpected end of ZLIB input stream))[2014-07-25 10:50:58 - SalesApp] at proguard.InputReader.readInput(InputReader.java:232)[2014-07-25 10:50:58 - SalesApp] at proguard.InputReader.readInput(InputReader.java:202)[2014-07-25 10:50:58 - SalesApp] at proguard.InputReader.readInput(InputReader.java:180)[2014-07-25 10:50:58 - SalesApp] at proguard.InputReader.execute(InputReader.java:78)[2014-07-25 10:50:58 - SalesApp] at proguard.ProGuard.readInput(ProGuard.java:196)[2014-07-25 10:50:58 - SalesApp] at proguard.ProGuard.execute(ProGuard.java:78)[2014-07-25 10:50:58 - SalesApp] at proguard.ProGuard.main(ProGuard.java:483)[2014-07-25 10:50:58 - SalesApp] Caused by: java.io.IOException: Can't process class [com/squareup/okhttp/internal/spdy/SpdyConnection$Builder.class] (Unexpected end of ZLIB input stream)[2014-07-25 10:50:58 - SalesApp] at proguard.io.ClassReader.read(ClassReader.java:112)[2014-07-25 10:50:58 - SalesApp] at proguard.io.FilteredDataEntryReader.read(FilteredDataEntryReader.java:87)[2014-07-25 10:50:58 - SalesApp] at proguard.io.FilteredDataEntryReader.read(FilteredDataEntryReader.java:87)[2014-07-25 10:50:58 - SalesApp] at proguard.io.JarReader.read(JarReader.java:65)[2014-07-25 10:50:58 - SalesApp] at proguard.io.DirectoryPump.readFiles(DirectoryPump.java:65)[2014-07-25 10:50:58 - SalesApp] at proguard.io.DirectoryPump.pumpDataEntries(DirectoryPump.java:53)[2014-07-25 10:50:58 - SalesApp] at proguard.InputReader.readInput(InputReader.java:228)[2014-07-25 10:50:58 - SalesApp] ... 6 more[2014-07-25 10:50:58 - SalesApp] Caused by: java.lang.RuntimeException: Unexpected end of ZLIB input stream[2014-07-25 10:50:58 - SalesApp] at proguard.classfile.io.RuntimeDataInput.readInt(RuntimeDataInput.java:136)[2014-07-25 10:50:58 - SalesApp] at proguard.classfile.io.ProgramClassReader.visitProgramClass(ProgramClassReader.java:77)[2014-07-25 10:50:58 - SalesApp] at proguard.classfile.ProgramClass.accept(ProgramClass.java:346)[2014-07-25 10:50:58 - SalesApp] at proguard.io.ClassReader.read(ClassReader.java:91)[2014-07-25 10:50:58 - SalesApp] ... 12 more[2014-07-25 10:51:06 - SalesApp] Proguard returned with error code 1. See console[2014-07-25 10:51:06 - SalesApp] java.io.IOException: Can't read [/Users/zhangxitao/work/salesapp/platforms/android/CordovaLib/bin/salesapp-cordovalib.jar] (Can't process class [com/squareup/okhttp/internal/http/HttpDate.class] (Unexpected end of ZLIB input stream))[2014-07-25 10:51:06 - SalesApp] at proguard.InputReader.readInput(InputReader.java:232)[2014-07-25 10:51:06 - SalesApp] at proguard.InputReader.readInput(InputReader.java:202)[2014-07-25 10:51:06 - SalesApp] at proguard.InputReader.readInput(InputReader.java:180)[2014-07-25 10:51:06 - SalesApp] at proguard.InputReader.execute(InputReader.java:78)[2014-07-25 10:51:06 - SalesApp] at proguard.ProGuard.readInput(ProGuard.java:196)[2014-07-25 10:51:06 - SalesApp] at proguard.ProGuard.execute(ProGuard.java:78)[2014-07-25 10:51:06 - SalesApp] at proguard.ProGuard.main(ProGuard.java:483)[2014-07-25 10:51:06 - SalesApp] Caused by: java.io.IOException: Can't process class [com/squareup/okhttp/internal/http/HttpDate.class] (Unexpected end of ZLIB input stream)[2014-07-25 10:51:06 - SalesApp] at proguard.io.ClassReader.read(ClassReader.java:112)[2014-07-25 10:51:06 - SalesApp] at proguard.io.FilteredDataEntryReader.read(FilteredDataEntryReader.java:87)[2014-07-25 10:51:06 - SalesApp] at proguard.io.FilteredDataEntryReader.read(FilteredDataEntryReader.java:87)[2014-07-25 10:51:06 - SalesApp] at proguard.io.JarReader.read(JarReader.java:65)[2014-07-25 10:51:06 - SalesApp] at proguard.io.DirectoryPump.readFiles(DirectoryPump.java:65)[2014-07-25 10:51:06 - SalesApp] at proguard.io.DirectoryPump.pumpDataEntries(DirectoryPump.java:53)[2014-07-25 10:51:06 - SalesApp] at proguard.InputReader.readInput(InputReader.java:228)[2014-07-25 10:51:06 - SalesApp] ... 6 more[2014-07-25 10:51:06 - SalesApp] Caused by: java.lang.RuntimeException: Unexpected end of ZLIB input stream[2014-07-25 10:51:06 - SalesApp] at proguard.classfile.io.RuntimeDataInput.readInt(RuntimeDataInput.java:136)[2014-07-25 10:51:06 - SalesApp] at proguard.classfile.io.ProgramClassReader.visitProgramClass(ProgramClassReader.java:77)[2014-07-25 10:51:06 - SalesApp] at proguard.classfile.ProgramClass.accept(ProgramClass.java:346)[2014-07-25 10:51:06 - SalesApp] at proguard.io.ClassReader.read(ClassReader.java:91)[2014-07-25 10:51:06 - SalesApp] ... 12 more[2014-07-25 10:51:20 - SalesApp] Proguard returned with error code 1. See console[2014-07-25 10:51:20 - SalesApp] java.io.IOException: Can't read [/Users/zhangxitao/work/salesapp/platforms/android/CordovaLib/bin/salesapp-cordovalib.jar] (Can't process class [com/squareup/okhttp/internal/http/HttpTransport.class] (Unexpected end of ZLIB input stream))[2014-07-25 10:51:20 - SalesApp] at proguard.InputReader.readInput(InputReader.java:232)[2014-07-25 10:51:20 - SalesApp] at proguard.InputReader.readInput(InputReader.java:202)[2014-07-25 10:51:20 - SalesApp] at proguard.InputReader.readInput(InputReader.java:180)[2014-07-25 10:51:20 - SalesApp] at proguard.InputReader.execute(InputReader.java:78)[2014-07-25 10:51:20 - SalesApp] at proguard.ProGuard.readInput(ProGuard.java:196)[2014-07-25 10:51:20 - SalesApp] at proguard.ProGuard.execute(ProGuard.java:78)[2014-07-25 10:51:20 - SalesApp] at proguard.ProGuard.main(ProGuard.java:483)[2014-07-25 10:51:20 - SalesApp] Caused by: java.io.IOException: Can't process class [com/squareup/okhttp/internal/http/HttpTransport.class] (Unexpected end of ZLIB input stream)[2014-07-25 10:51:20 - SalesApp] at proguard.io.ClassReader.read(ClassReader.java:112)[2014-07-25 10:51:20 - SalesApp] at proguard.io.FilteredDataEntryReader.read(FilteredDataEntryReader.java:87)[2014-07-25 10:51:20 - SalesApp] at proguard.io.FilteredDataEntryReader.read(FilteredDataEntryReader.java:87)[2014-07-25 10:51:20 - SalesApp] at proguard.io.JarReader.read(JarReader.java:65)[2014-07-25 10:51:20 - SalesApp] at proguard.io.DirectoryPump.readFiles(DirectoryPump.java:65)[2014-07-25 10:51:20 - SalesApp] at proguard.io.DirectoryPump.pumpDataEntries(DirectoryPump.java:53)[2014-07-25 10:51:20 - SalesApp] at proguard.InputReader.readInput(InputReader.java:228)[2014-07-25 10:51:20 - SalesApp] ... 6 more[2014-07-25 10:51:20 - SalesApp] Caused by: java.lang.RuntimeException: Unexpected end of ZLIB input stream[2014-07-25 10:51:20 - SalesApp] at proguard.classfile.io.RuntimeDataInput.readInt(RuntimeDataInput.java:136)[2014-07-25 10:51:20 - SalesApp] at proguard.classfile.io.ProgramClassReader.visitProgramClass(ProgramClassReader.java:77)[2014-07-25 10:51:20 - SalesApp] at proguard.classfile.ProgramClass.accept(ProgramClass.java:346)[2014-07-25 10:51:20 - SalesApp] at proguard.io.ClassReader.read(ClassReader.java:91)[2014-07-25 10:51:20 - SalesApp] ... 12 more[2014-07-25 10:54:53 - SalesApp] Proguard returned with error code 1. See console[2014-07-25 10:54:53 - SalesApp] java.io.IOException: Can't read [/Users/zhangxitao/work/salesapp/platforms/android/CordovaLib/bin/salesapp-cordovalib.jar] (Can't process class [com/squareup/okhttp/internal/http/HttpEngine.class] (Unexpected end of ZLIB input stream))[2014-07-25 10:54:53 - SalesApp] at proguard.InputReader.readInput(InputReader.java:232)[2014-07-25 10:54:53 - SalesApp] at proguard.InputReader.readInput(InputReader.java:202)[2014-07-25 10:54:53 - SalesApp] at proguard.InputReader.readInput(InputReader.java:180)[2014-07-25 10:54:53 - SalesApp] at proguard.InputReader.execute(InputReader.java:78)[2014-07-25 10:54:53 - SalesApp] at proguard.ProGuard.readInput(ProGuard.java:196)[2014-07-25 10:54:53 - SalesApp] at proguard.ProGuard.execute(ProGuard.java:78)[2014-07-25 10:54:53 - SalesApp] at proguard.ProGuard.main(ProGuard.java:483)[2014-07-25 10:54:53 - SalesApp] Caused by: java.io.IOException: Can't process class [com/squareup/okhttp/internal/http/HttpEngine.class] (Unexpected end of ZLIB input stream)[2014-07-25 10:54:53 - SalesApp] at proguard.io.ClassReader.read(ClassReader.java:112)[2014-07-25 10:54:53 - SalesApp] at proguard.io.FilteredDataEntryReader.read(FilteredDataEntryReader.java:87)[2014-07-25 10:54:53 - SalesApp] at proguard.io.FilteredDataEntryReader.read(FilteredDataEntryReader.java:87)[2014-07-25 10:54:53 - SalesApp] at proguard.io.JarReader.read(JarReader.java:65)[2014-07-25 10:54:53 - SalesApp] at proguard.io.DirectoryPump.readFiles(DirectoryPump.java:65)[2014-07-25 10:54:53 - SalesApp] at proguard.io.DirectoryPump.pumpDataEntries(DirectoryPump.java:53)[2014-07-25 10:54:53 - SalesApp] at proguard.InputReader.readInput(InputReader.java:228)[2014-07-25 10:54:53 - SalesApp] ... 6 more[2014-07-25 10:54:53 - SalesApp] Caused by: java.lang.RuntimeException: Unexpected end of ZLIB input stream[2014-07-25 10:54:53 - SalesApp] at proguard.classfile.io.RuntimeDataInput.readInt(RuntimeDataInput.java:136)[2014-07-25 10:54:53 - SalesApp] at proguard.classfile.io.ProgramClassReader.visitProgramClass(ProgramClassReader.java:77)[2014-07-25 10:54:53 - SalesApp] at proguard.classfile.ProgramClass.accept(ProgramClass.java:346)[2014-07-25 10:54:53 - SalesApp] at proguard.io.ClassReader.read(ClassReader.java:91)[2014-07-25 10:54:53 - SalesApp] ... 12 more
Proguard 会混淆cordova及其插件的java代码,导致apk运行时报 cordova error initial class,解决办法是在proguard-project.txt 加入下面的内容,不混淆cordova及其插件
cordova 3.0以上版本加
-keep class org.apache.cordova.** { *; }-keep public class * extends org.apache.cordova.CordovaPlugin
0 0
- PhoneGap/Cordova Android应用签名发布注意事项
- Cordova/PhoneGap 3.0 Android开发环境注意事项
- phonegap/cordova项目发布android apk
- PhoneGap (Cordova 5.4.0) 生成android签名apk
- iOS 集成 Cordova(phoneGap ) 注意事项
- 为cordova生成的android应用签名
- Cordova(PhoneGap)体系结构(Android)
- Cordova(PhoneGap)体系结构(Android)
- Cordova(PhoneGap)体系结构(Android)
- android:Cordova Android, hello Cordova ,PhoneGap android
- cordova与phonegap的应用
- phoneGap(Cordova)Android项目搭建
- android签名打包发布到应用市场
- ionic angularJS phoneGap(cordova) 搭建app应用
- AS+phoneGap+Cordova把网站打包签名成apk
- Android应用开发之使用PhoneGap(cordova)实现拍照上传功能
- mac环境下node.js和phonegap/cordova创建ios和android应用
- PhoneGap&Cordova
- Codeforces Round #258 (Div. 2) C - Predict Outcome of the Game
- Android AIDL使用详解
- 开通个人博客,欢迎交流
- js闭包
- UITextField的使用详解
- PhoneGap/Cordova Android应用签名发布注意事项
- BOE.war redeployed, java.lang.RuntimeException: Could not find framework 解决办法
- POJ2524 Ubiquitous Religions
- Linux traceroute
- 2014年7月15日中午笔记
- VC++学习心得(九)
- 使用java画出宝马图标代码
- Zend Studio 10 代码格式化配置
- ubuntu引导修改