最新情况,打包失败提示ksoap2-android-assembly-3.0.0.jar这个包里有几个类和系统的类冲突了,谷歌的结果是删掉那几个类, 但是为什么不混淆的APK没有问题,而且别人的JAR怎么删类?[2013-07-15 16:20:48 - bitcare_assistant_efy] ------------------------------ [2013-07-15 16:20:48 - bitcare_assistant_efy] Android Launch! [2013-07-15 16:20:48 - bitcare_assistant_efy] adb is running normally. [2013-07-15 16:20:48 - bitcare_assistant_efy] Performing com.bitcare.activity.VectoringActivity activity launch [2013-07-15 16:20:49 - bitcare_assistant_efy] Automatic Target Mode: Several compatible targets. Please select a target device. [2013-07-15 16:20:54 - bitcare_assistant_efy] Uploading bitcare_assistant_efy.apk onto device 'e34446d4' [2013-07-15 16:20:55 - bitcare_assistant_efy] Installing bitcare_assistant_efy.apk... [2013-07-15 16:20:58 - bitcare_assistant_efy] Success! [2013-07-15 16:20:58 - bitcare_assistant_efy] Starting activity com.bitcare.activity.VectoringActivity on device e34446d4 [2013-07-15 16:20:58 - bitcare_assistant_efy] ActivityManager: Starting: Intent { act=android.intent.action.MAIN cat=[android.intent.category.LAUNCHER] cmp=com.bitcare.activity/.VectoringActivity } [2013-07-15 16:22:07 - bitcare_assistant_efy] Proguard returned with error code 1. See console [2013-07-15 16:22:07 - bitcare_assistant_efy] Note: there were 527 duplicate class definitions. [2013-07-15 16:22:07 - bitcare_assistant_efy] Warning: library class android.content.res.XmlResourceParser extends or implements program class org.xmlpull.v1.XmlPullParser [2013-07-15 16:22:07 - bitcare_assistant_efy] Warning: library class android.content.Intent depends on program class org.xmlpull.v1.XmlPullParser [2013-07-15 16:22:07 - bitcare_assistant_efy] Warning: library class android.content.IntentFilter depends on program class org.xmlpull.v1.XmlSerializer [2013-07-15 16:22:07 - bitcare_assistant_efy] Warning: library class android.content.IntentFilter depends on program class org.xmlpull.v1.XmlPullParser [2013-07-15 16:22:07 - bitcare_assistant_efy] Warning: library class android.content.res.ColorStateList depends on program class org.xmlpull.v1.XmlPullParser [2013-07-15 16:22:07 - bitcare_assistant_efy] Warning: library class android.graphics.drawable.Drawable depends on program class org.xmlpull.v1.XmlPullParser [2013-07-15 16:22:07 - bitcare_assistant_efy] Warning: library class android.graphics.drawable.Drawable depends on program class org.xmlpull.v1.XmlPullParser [2013-07-15 16:22:07 - bitcare_assistant_efy] Warning: library class android.graphics.drawable.Drawable depends on program class org.xmlpull.v1.XmlPullParser [2013-07-15 16:22:07 - bitcare_assistant_efy] Warning: library class android.view.LayoutInflater depends on program class org.xmlpull.v1.XmlPullParser [2013-07-15 16:22:07 - bitcare_assistant_efy] Warning: library class android.view.LayoutInflater depends on program class org.xmlpull.v1.XmlPullParser [2013-07-15 16:22:07 - bitcare_assistant_efy] You should check if you need to specify additional program jars. [2013-07-15 16:22:07 - bitcare_assistant_efy] Warning: there were 10 instances of library classes depending on program classes. [2013-07-15 16:22:07 - bitcare_assistant_efy] You must avoid such dependencies, since the program classes will [2013-07-15 16:22:07 - bitcare_assistant_efy] be processed, while the library classes will remain unchanged. [2013-07-15 16:22:07 - bitcare_assistant_efy] java.io.IOException: Please correct the above warnings first. [2013-07-15 16:22:07 - bitcare_assistant_efy] at proguard.Initializer.execute(Initializer.java:321) [2013-07-15 16:22:07 - bitcare_assistant_efy] at proguard.ProGuard.initialize(ProGuard.java:211) [2013-07-15 16:22:07 - bitcare_assistant_efy] at proguard.ProGuard.execute(ProGuard.java:86) [2013-07-15 16:22:07 - bitcare_assistant_efy] at proguard.ProGuard.main(ProGuard.java:492)
我也不想混淆他,我写了这个 -keep class org.kobjects.** {*;} -keep class org.ksoap2.** {*;} -keep class org.kxml2.** {*;} -keep class org.xmlpull.v1.** {*;} 保持不混淆 但是还是报错 具体错误可以看20楼
我也不想混淆他,我写了这个 -keep class org.kobjects.** {*;} -keep class org.ksoap2.** {*;} -keep class org.kxml2.** {*;} -keep class org.xmlpull.v1.** {*;} 保持不混淆 但是还是报错 具体错误可以看20楼 对,不要混淆第三方包先。
[2013-07-11 16:06:04 - bitcare_assistant_efy] You should check if you need to specify additional program jars. [2013-07-11 16:06:04 - bitcare_assistant_efy] Warning: there were 10 instances of library classes depending on program classes.首先你要check是否必要指定这些额外的jars,照提示是10个包,楼主可以的话先去掉第三方包,然后看看混淆后是否可行,我是怀疑跟第三方包无关,而是楼主本身混淆了一些不该混淆的。
我也不想混淆他,我写了这个 -keep class org.kobjects.** {*;} -keep class org.ksoap2.** {*;} -keep class org.kxml2.** {*;} -keep class org.xmlpull.v1.** {*;} 保持不混淆 但是还是报错 具体错误可以看20楼 -ignorewarnings 加上这个,容错
我也不想混淆他,我写了这个 -keep class org.kobjects.** {*;} -keep class org.ksoap2.** {*;} -keep class org.kxml2.** {*;} -keep class org.xmlpull.v1.** {*;} 保持不混淆 但是还是报错 具体错误可以看20楼 -ignorewarnings 加上这个,容错 这个我加过,打包不报错,但是获取不到数据
我也不想混淆他,我写了这个 -keep class org.kobjects.** {*;} -keep class org.ksoap2.** {*;} -keep class org.kxml2.** {*;} -keep class org.xmlpull.v1.** {*;} 保持不混淆 但是还是报错 具体错误可以看20楼 -ignorewarnings 加上这个,容错 这个我加过,打包不报错,但是获取不到数据 不知道了
哎
我记得有人推荐,关键代码用c写
然后JNI调用,这样就可以了
不过打包成功后在使用GSON的时候报错Missing type parameter
现在就卡在这
网上有人说加
-dontobfuscate
-dontoptimize
这两句,程序是没问题了,但是完全没有混淆了
不过打包成功后在使用GSON的时候报错Missing type parameter
现在就卡在这
网上有人说加
-dontobfuscate
-dontoptimize
这两句,程序是没问题了,但是完全没有混淆了
……加这两句不就是不混淆不优化么……
don't obfuscate
don't optimize
但是为什么不混淆的APK没有问题,而且别人的JAR怎么删类?[2013-07-15 16:20:48 - bitcare_assistant_efy] ------------------------------
[2013-07-15 16:20:48 - bitcare_assistant_efy] Android Launch!
[2013-07-15 16:20:48 - bitcare_assistant_efy] adb is running normally.
[2013-07-15 16:20:48 - bitcare_assistant_efy] Performing com.bitcare.activity.VectoringActivity activity launch
[2013-07-15 16:20:49 - bitcare_assistant_efy] Automatic Target Mode: Several compatible targets. Please select a target device.
[2013-07-15 16:20:54 - bitcare_assistant_efy] Uploading bitcare_assistant_efy.apk onto device 'e34446d4'
[2013-07-15 16:20:55 - bitcare_assistant_efy] Installing bitcare_assistant_efy.apk...
[2013-07-15 16:20:58 - bitcare_assistant_efy] Success!
[2013-07-15 16:20:58 - bitcare_assistant_efy] Starting activity com.bitcare.activity.VectoringActivity on device e34446d4
[2013-07-15 16:20:58 - bitcare_assistant_efy] ActivityManager: Starting: Intent { act=android.intent.action.MAIN cat=[android.intent.category.LAUNCHER] cmp=com.bitcare.activity/.VectoringActivity }
[2013-07-15 16:22:07 - bitcare_assistant_efy] Proguard returned with error code 1. See console
[2013-07-15 16:22:07 - bitcare_assistant_efy] Note: there were 527 duplicate class definitions.
[2013-07-15 16:22:07 - bitcare_assistant_efy] Warning: library class android.content.res.XmlResourceParser extends or implements program class org.xmlpull.v1.XmlPullParser
[2013-07-15 16:22:07 - bitcare_assistant_efy] Warning: library class android.content.Intent depends on program class org.xmlpull.v1.XmlPullParser
[2013-07-15 16:22:07 - bitcare_assistant_efy] Warning: library class android.content.IntentFilter depends on program class org.xmlpull.v1.XmlSerializer
[2013-07-15 16:22:07 - bitcare_assistant_efy] Warning: library class android.content.IntentFilter depends on program class org.xmlpull.v1.XmlPullParser
[2013-07-15 16:22:07 - bitcare_assistant_efy] Warning: library class android.content.res.ColorStateList depends on program class org.xmlpull.v1.XmlPullParser
[2013-07-15 16:22:07 - bitcare_assistant_efy] Warning: library class android.graphics.drawable.Drawable depends on program class org.xmlpull.v1.XmlPullParser
[2013-07-15 16:22:07 - bitcare_assistant_efy] Warning: library class android.graphics.drawable.Drawable depends on program class org.xmlpull.v1.XmlPullParser
[2013-07-15 16:22:07 - bitcare_assistant_efy] Warning: library class android.graphics.drawable.Drawable depends on program class org.xmlpull.v1.XmlPullParser
[2013-07-15 16:22:07 - bitcare_assistant_efy] Warning: library class android.view.LayoutInflater depends on program class org.xmlpull.v1.XmlPullParser
[2013-07-15 16:22:07 - bitcare_assistant_efy] Warning: library class android.view.LayoutInflater depends on program class org.xmlpull.v1.XmlPullParser
[2013-07-15 16:22:07 - bitcare_assistant_efy] You should check if you need to specify additional program jars.
[2013-07-15 16:22:07 - bitcare_assistant_efy] Warning: there were 10 instances of library classes depending on program classes.
[2013-07-15 16:22:07 - bitcare_assistant_efy] You must avoid such dependencies, since the program classes will
[2013-07-15 16:22:07 - bitcare_assistant_efy] be processed, while the library classes will remain unchanged.
[2013-07-15 16:22:07 - bitcare_assistant_efy] java.io.IOException: Please correct the above warnings first.
[2013-07-15 16:22:07 - bitcare_assistant_efy] at proguard.Initializer.execute(Initializer.java:321)
[2013-07-15 16:22:07 - bitcare_assistant_efy] at proguard.ProGuard.initialize(ProGuard.java:211)
[2013-07-15 16:22:07 - bitcare_assistant_efy] at proguard.ProGuard.execute(ProGuard.java:86)
[2013-07-15 16:22:07 - bitcare_assistant_efy] at proguard.ProGuard.main(ProGuard.java:492)
2. java build path中有把包加进去吗?
2.有,不混淆的包使用没有问题
3. ADT版本是22.0.1
2.有,不混淆的包使用没有问题
3. ADT版本是22.0.1
java build path 里把包的引用去掉
2.有,不混淆的包使用没有问题
3. ADT版本是22.0.1
java build path 里把包的引用去掉
我只能把“排序和导出”里的android Private Libraries去掉,不能去掉单独的那个ksoap2包引用,去掉引用后混淆包就没用了直接报错
-keep class org.kobjects.** {*;}
-keep class org.ksoap2.** {*;}
-keep class org.kxml2.** {*;}
-keep class org.xmlpull.v1.** {*;}
保持不混淆
但是还是报错
具体错误可以看20楼
-keep class org.kobjects.** {*;}
-keep class org.ksoap2.** {*;}
-keep class org.kxml2.** {*;}
-keep class org.xmlpull.v1.** {*;}
保持不混淆
但是还是报错
具体错误可以看20楼
对,不要混淆第三方包先。
[2013-07-11 16:06:04 - bitcare_assistant_efy] Warning: there were 10 instances of library classes depending on program classes.首先你要check是否必要指定这些额外的jars,照提示是10个包,楼主可以的话先去掉第三方包,然后看看混淆后是否可行,我是怀疑跟第三方包无关,而是楼主本身混淆了一些不该混淆的。
-keep class org.kobjects.** {*;}
-keep class org.ksoap2.** {*;}
-keep class org.kxml2.** {*;}
-keep class org.xmlpull.v1.** {*;}
保持不混淆
但是还是报错
具体错误可以看20楼
-ignorewarnings 加上这个,容错
-keep class org.kobjects.** {*;}
-keep class org.ksoap2.** {*;}
-keep class org.kxml2.** {*;}
-keep class org.xmlpull.v1.** {*;}
保持不混淆
但是还是报错
具体错误可以看20楼
-ignorewarnings 加上这个,容错
这个我加过,打包不报错,但是获取不到数据
-keep class org.kobjects.** {*;}
-keep class org.ksoap2.** {*;}
-keep class org.kxml2.** {*;}
-keep class org.xmlpull.v1.** {*;}
保持不混淆
但是还是报错
具体错误可以看20楼
-ignorewarnings 加上这个,容错
这个我加过,打包不报错,但是获取不到数据
不知道了
额,这个就不大清楚,我用的最新sdk,记得把lib改为libs,jar包不用手动导入工程