如果工程引入了android-support-v4的jar类库,那么在工程打包混淆时,就会出现报错提示。例如提示你:You may need to specify additional library jars (using '-libraryjars')。
这里先给出解决方案,稍后我们再来解释如何处理类似情况:
在proguard.cfg里的后面,添加如下内容:
- -libraryjars /android-support-v4.jar
- -dontwarn android.support.v4.**
- -keep class android.support.v4.** { *; }
- -keep public class * extends android.support.v4.**
- -keep public class * extends android.app.Fragment
然后你再打包看看,应该可以正常生成apk安装包了。
打包出错:
情况一:
"类1 can't find referenced class 类2" 字面上的意思就是类1找不到类2的引用;它会建议你:"You may need to specify additional library jars (using '-libraryjars').";
需要使用-libraryjars加上项目中使用到的第三方库就OK了。
例如:-libraryjars /android-support-v4.jar
注意:这里引用方式是当前工程的根目录(也可以配置其他目录),也就是说,你要把第三方jar放到当前目录下,否则就会警告说找不到jar文件!
情况二:
例如: can't find superclass or interface android.os.Parcelable$ClassLoaderCreator,碰到这样的情况,可以使用-dontwarn com.xx.yy.**,不对错误提出警告。
注意:使用这个方式的话,要确保自己没有用到这个库里面的类!否则就会抛ClassNotFoundException!
情况三:
在工程中确实用到了该类,采用上面方式还是不行。这个时候就要再增加一项:-keep class com.xx.yy.** { *;},让当前类不混淆。
小结:
对于引用第三方包的情况,可以采用下面方式避免打包出错:
-libraryjars /aaa.jar
-dontwarn com.xx.yy.**
-keep class com.xx.yy.** { *;}
最后打包成功,还要在机子上跑跑,看看有没有问题。
相关推荐
内容包含:android-support-v4_1.6.0_26_20120316.jar android-support-v4_1.6.0_26_20120623.jar android-support-v4_1.6.0_26_20120730.jar android-support-v4_1.6.0_26_20121109.jar android-support-v4_1.6.0_26...
android-support-v4-v7-v13-v14-v17(官方最新完整版),官方最新版的,压缩包内包含android-support-v4、android-support-v7-appcompat,android-support-v7-cardview,android-support-v7-gridlayout,android-support-...
Android Support Library V4,简称`android-support-v4`,是Android开发者广泛使用的库,旨在提供对Android早期版本的兼容性,同时包含许多先进的特性,使得应用能够运行在从Android 2.1 (API级别7)到最新的Android...
1、android-support-v4.jar,android-support-v7-appcompat.jar,非常实用的jar文件,不可缺少,兼容Android 对应版本,包中包含类许多我们可以调用的,如widget、view、util等等。 2、导入Unity或者Android Studio...
`android-support-v4.jar`是这个库的封装形式,其中包含了大量对旧版本Android API的兼容性实现。 **1. 兼容性** Android Support Library v4的主要目标是解决Android平台版本间的兼容性问题。由于Android设备的...
android-support-v4-25.3.1(由下面的5个小包合并) v4-support-compat-25.3.1 v4-support-core-ui-25.3.1 v4-support-core-utils-25.3.1 v4-support-fragment-25.3.1 v4support-media-compat-25.3.1
implementation 'com.android.support:support-v4:<latest_version>' } ``` 替换`<latest_version>`为当前的最新版本号。 2. 同步Gradle项目,等待依赖下载完成。 3. 使用v4库的类和方法。例如,引入Fragment...
`android-support-v4`库是为了保证在Android API Level 4(即Android 1.6)以上版本运行的功能兼容性,而`appcompat-v7`库则提供了对Android Material Design设计风格的支持,并且同样确保在低版本系统上的兼容。...
在Android开发过程中,`android-support-v4.jar`是一个至关重要的库文件,它为早期版本的Android提供了对新API的支持,使得开发者能够在低版本系统上实现高级功能。在本问题中,开发者遇到了`checkSelfPermission`...
这是最新版的android-support-v4.jar,大小1MB多,比其它那种几百K的要大,因为这是最新的android-support-v4.jar,有最新的android.support.v4.view.animation类,现在是2015年10月,这是截至目前最新的jar包
本文将深入探讨`android-support-v4.jar`的背景、功能以及如何解决高版本权限函数报错问题。 首先,`android-support-v4`库是Google官方推出的一个组件,其主要目的是为了帮助开发者实现对Android API Level 4(即...
在使用QMUI或其他第三方库时,可能会遇到与`android-support-v4`和`android-support-v7`相关的依赖冲突问题。例如,QMUI可能已经包含了这两个库的某个版本,而项目中可能有其他依赖也引入了不同版本的库。这种情况下...
在Android开发中,`android-support-v4`和`android-support-v7-appcompat`是两个非常重要的库,它们为开发者提供了对旧版本Android系统的兼容性支持。这两个库是Google官方为了帮助开发者解决Android版本碎片化问题...
高版本的android-support-v4包
随着Android Q操作系统的问世,争对权限及非官方SDK的限制,我对原v4的包进行优化处理,去除了一些(用Google verider扫描工具)一些黑名单接口,用这个包在AndroidQ下就不会有问题,至少本人在几个Android 10 beta版...
在Android开发中,`android-support-v7-appcompat.jar` 和 `android-support-v4.jar` 是两个非常重要的库文件,它们提供了对旧版本Android系统的重要支持和功能扩展。 首先,`android-support-v7-appcompat.jar` 是...
在Android开发中,`appcompat-v7`和`support-v4`是两个非常重要的库,它们主要用于提供对老版本Android API的支持,同时也包含了各种增强功能和组件。这两个库由Google官方维护,是Android开发者在构建应用程序时...
标题提到的"android-support-v4 .jar"和"android-support-annotations.jar"是Android支持库中的两个关键组件。 "android-support-v4 .jar"是Android支持库的v4版本,它是对Android API Level 4(Android 1.6 Donut...
在Android开发中,`android-support-v4`库是Google提供的一款重要的支持库,它使得开发者能够在更低版本的Android系统上使用一些新版本引入的功能。这个库包含了大量的类和方法,帮助开发者实现对Android API的兼容...