android 打包遇到的问题

说说今天打包遇到的坑,由于线上有个支付的bug需要紧急修复,而我们的项目又没有使用热修复,所以只能通过编译打包等传统流程,还好Android上线比较快。

说说我进早上打包遇到的几个问题吧,首先我使用build-->generate signed apk然后输入签名打包,啪,给我报了一个错。

1,debug-stripped.ap_' specified for property 'resourceFile' does not exist.

这什么错,怎么一起没遇到过,马上度娘,找了半天找到一个和我很相似的,意思是android studio升级到2.2之后出现的错误,于是我也尝试了一把下面的方法:

File—>Settings,打开Settings界面,搜索到Instant Run。

,2怎么我的默认就是没选中的啊,于是看第二条,有人说是Debug模式下的混淆开关问题。

好我都把你改了,debug我都false行了吧,形如:

[objc] view plain copy

 print?

  1. buildTypes {  
  2.     release {  
  3.         minifyEnabled true  
  4.         shrinkResources true  
  5.         proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'  
  6.     }  
  7.     debug {  
  8.         minifyEnabled false  
  9.         shrinkResources false  
  10.         proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'  
  11.     }  
  12. }  

3,我又重新编译,结果报Android Studio 混淆打包 IOException: Please correct the above warnings first,形如下面的错误

[objc] view plain copy

 print?

  1. Warning:org.apache.http.impl.conn.tsccm.RouteSpecificPool: can't find referenced class org.apache.commons.logging.LogFactory    
  2. Warning:org.apache.http.impl.conn.tsccm.RouteSpecificPool: can't find referenced class org.apache.commons.logging.Log    
  3. Warning:org.apache.http.impl.conn.tsccm.RouteSpecificPool: can't find referenced class org.apache.commons.logging.LogFactory    
  4. Warning:org.apache.http.impl.conn.tsccm.RouteSpecificPool: can't find referenced class org.apache.commons.logging.Log    
  5. Warning:org.apache.http.impl.conn.tsccm.ThreadSafeClientConnManager: can't find referenced class org.apache.commons.logging.LogFactory    
  6. Warning:org.apache.http.impl.conn.tsccm.ThreadSafeClientConnManager: can't find referenced class org.apache.commons.logging.Log    
  7. Warning:org.apache.http.impl.conn.tsccm.ThreadSafeClientConnManager: can't find referenced class org.apache.commons.logging.LogFactory    
  8. Warning:org.apache.http.impl.conn.tsccm.ThreadSafeClientConnManager: can't find referenced class org.apache.commons.logging.Log    
  9. Warning:org.apache.http.impl.conn.tsccm.ThreadSafeClientConnManager$1: can't find referenced class org.apache.commons.logging.Log    
  10. Warning:there were 210 unresolved references to classes or interfaces.    
  11.          You may need to add missing library jars or update their versions.    
  12.          If your code works fine without the missing classes, you can suppress    
  13.          the warnings with '-dontwarn' options.    
  14.          (http://proguard.sourceforge.net/manual/troubleshooting.html#unresolvedclass)    
  15. Warning:there were 1 unresolved references to library class members.    
  16.          You probably need to update the library versions.    
  17.          (http://proguard.sourceforge.net/manual/troubleshooting.html#unresolvedlibraryclassmember)    
  18. :app:proguardRelease FAILED    
  19. Error:Execution failed for task ':app:proguardRelease'.    
  20. > java.io.IOException: Please correct the above warnings first.    

好吧,我打开混淆文件(proguard-rules),首先我看到有人把下面的ignorewarning注释了,我擦,然后关闭,打包成功,不过这里加上下面的一段话

[objc] view plain copy

 print?

  1. 打包报错java.io.IOException: Please correct the above warnings first.  
  2. -dontwarn org.apache.http.**  

时间: 2025-01-27 01:44:11

android 打包遇到的问题的相关文章

android开发-android打包失败,程序运行正常!

问题描述 android打包失败,程序运行正常! 开发-android打包失败,程序运行正常!-android打包失败">程序在虚拟机上正常运行 但是打包就失败 解决方案 Solution: Window>Preferences>Android>Lint Error Checking uncheck Run full error check when exporting app http://stackoverflow.com/questions/8590908/andr

android打包(jar)报错是什么原因

问题描述 android打包(jar)报错是什么原因 各位大神怎么解决? 解决方案 看[details]里面是否有错误信息. 解决方案二: 有冲突包,build一下

有些方法不能被调用呢-Android打包后,有些方法不能被调用

问题描述 Android打包后,有些方法不能被调用 Android打包后,有些方法不能被调用??请大神们看看啊..我看了有些说 混淆的问题,我试了啊 解决方案 是被混淆了吧,对于用于反射的数据最好不要混淆 解决方案二: android webview addJavascriptInterface 的方法不能调用 解决方案三: 怎么解决呢?? // 数字字典 同步 private void getDigitalDictionary() { DictVersionDBManager versionD

用 flash cs5.5新建 air for android打包成apk失败

问题描述 用 flash cs5.5新建 air for android打包成apk失败 flash提示 创建文件失败 : C:UsersAdministratorAppDataLocalTempHZ$D.042.4593HZ$D.042.4595Adobe Flash Professional CS5.5Adobe Flash CS5.5air 2.6libadt.jar 求指教

在Android打包中区分测试和正式环境浅析

前言 本文主要介绍了关于Android打包中区分测试和正式环境的相关内容,分享出来供大家参考学习,下面话不多说了,来一起看看详细的介绍: APK打包正式环境和测试环境注意 最近在项目打包中,遇到一个问题,每次打包都要区分正式发布包和测试版本的包,主要是修改一下配置 public static final boolean EXTERNAL_RELEASE = true; 当变量为true的时候,就是正式包,反之就是测试包.每次上线的时候我就提醒自己要小心,千万不能出错了,然而终于湿脚了,一个渠道打

RN在Android打包发布App(详解)

1-:生成一个签名密钥 你可以用keytool命令生成一个私有密钥.在Windows上keytool命令放在JDK的bin目录中(比如C:\Program Files\Java\jdkx.x.x_x\bin),你可能需要在命令行中先进入那个目录才能执行此命令.在mac上,直接进入项目根目录输入一下命令: $ keytool -genkey -v -keystore my-release-key.keystore -alias my-key-alias -keyalg RSA -keysize 2

Android 打包三种方式实例详解

Android 打包三种方式实例详解 前言: 现在市场上很多app应用存在于各个不同的渠道,大大小小几百个,当我们想要在发布应用之后统计各个渠道的用户下载量,我们就要进行多渠道打包. 01.应用的打包签名什么是打包? 打包就是根据签名和其他标识生成安装包. 签名是什么? 1.在android应用文件(apk)中保存的一个特别字符串 2.用来标识不同的应用开发者:开发者A,开发者B 3.一个应用开发者开发的多款应用使用同一个签名 就好比是一个人写文章,签名就相当于作者的署名. 如果两个应用都是一个

如何打开Android 打包文件 .apk 文件

原文:http://www.imobilebbs.com/wordpress/?p=1026 在学习Android开发的过程中,常常想知道一些界面设计优良的应用是如何设计的.Android应用最后发布是以 .apk 文件提供的.那么如何在PC上打开这个 .apk文件呢? .apk 文件实际就是.zip 文件,可以使用WinZip ,WinRar 等来解压,一个简单的方法是把 .apk 后缀改成 .zip 文件.如果就可以使用WinZip解压开. 比如 Google Map 的 .apk 文件 解

Android打包Jar(发布SDK)注意事项及问题解决

在Android开发过程中,我们经常会有这种需求,需要将自己开发一个类库打包成jar包以供他人(其他人一般指开发者)调用,而不是直接打包apk文件供最终用户使用.在打包成jar后,你往往会自己先测试一下看jar包能不能直接使用,这时就会常常有如下的几个问题: 1) Error-..Found duplicate file for APK:res/drawable-xxx/xxx.xx 2) res.Resources$NotFoundException:XXX ID#0x7f090015 3)