proguard-android.txt line 43:15 extraneous input '[]' expecting ')' 解决办法
2016-05-20 10:47
417 查看
问题出现时的环境:
随着2016.5.19Google I/O大会上展示了Android N 版本以及Android Studio 2.2 preview版本,里面包含了很多的干货,我就迫不及待的更新Android Studio 至 2.2 preview1 版本 。我就做了如下操作:
1.下载Android Studio 2.2 preview1
此次的2.2预览版下载了以后不要覆盖 原有的版本,这两个版本可以共存。为了能够更好的切换项目使用的环境。
2.安装Java8
官方解释 :就算不用Java8的新特性(如 Lambda 表达式),Android N 编译的时候必须指定 JDK 为Java8
3. 更新Android SDK Tools 至最新版
各种更新后就使用了 Android Studio 2.2 preview 版本,最直观的改变就是写界面的平台,变成了类似ios界面布局平台。当我另外打开我先前的版本(2.1.1)的时候, 原先正常的项目部署不到手机上了,提示如下:
问题分析:
问题提示很清楚, 出问题的那行 期望的是 “)”,但是接收的却是无关的 “[]”
进入到proguard-android.txt 找到这行,如下:
很明显,这段混淆代码被篡改了,和以前混淆的方式不一样了。
解决办法:
恢复成原来的混淆样子即可;
随着2016.5.19Google I/O大会上展示了Android N 版本以及Android Studio 2.2 preview版本,里面包含了很多的干货,我就迫不及待的更新Android Studio 至 2.2 preview1 版本 。我就做了如下操作:
1.下载Android Studio 2.2 preview1
此次的2.2预览版下载了以后不要覆盖 原有的版本,这两个版本可以共存。为了能够更好的切换项目使用的环境。
2.安装Java8
官方解释 :就算不用Java8的新特性(如 Lambda 表达式),Android N 编译的时候必须指定 JDK 为Java8
3. 更新Android SDK Tools 至最新版
各种更新后就使用了 Android Studio 2.2 preview 版本,最直观的改变就是写界面的平台,变成了类似ios界面布局平台。当我另外打开我先前的版本(2.1.1)的时候, 原先正常的项目部署不到手机上了,提示如下:
Error:Execution failed for task ':app:transformClassesWithNewClassShrinkerForMockDebug'. > F:\sdk\tools\proguard\proguard-android.txt line 43:15 extraneous input '[]' expecting ')'
问题分析:
问题提示很清楚, 出问题的那行 期望的是 “)”,但是接收的却是无关的 “[]”
进入到proguard-android.txt 找到这行,如下:
-keepclassmembers public class * extends android.view.View { void set*(%); void set*(%, %); void set*(%, %, %, %); void set*(%[]); // 就是这一行 void set*(**[]); void set*(!**Listener); % get*(); %[] get*(); **[] get*(); !**Listener get*(); }
很明显,这段混淆代码被篡改了,和以前混淆的方式不一样了。
解决办法:
恢复成原来的混淆样子即可;
-keep public class * extends android.view.View { public <init>(android.content.Context); public <init>(android.content.Context, android.util.AttributeSet); public <init>(android.content.Context, android.util.AttributeSet, int); public void set*(...); }
相关文章推荐
- 在MAC上搭建cordova3.4.0的IOS和android开发环境
- Android 6.0 运行时权限处理
- Android之Widget (微件、小组件)
- Android Studio中module配置好的bulid.gradle和混淆proguard-rules.pro
- 手把手教你写框架之ShykyAnnotations - 原理篇
- Is iOS 7 Multipeer Connectivity compatible with Android Wi-Fi Direct?
- android中 拍照 视频 录音 显示缩略图
- Android中Handler的作用和使用方法
- 跟谷歌学一个多次点击事件的逻辑处理
- iOS和Android的点对点连接
- Android 屏幕适配——关于布局文件中dp 的使用
- Android中Preference的使用以及监听事件分析
- 【流媒體】Android 实时视频采集—Cameara预览采集
- Android开发中对象的实例化示例
- Android权限
- Android,配置Activity为启动Activity(AndroidManifest.xml,application,intent-filter,MAIN,LAUNCHER)
- Android 弹款点击空白处不消失
- Android 开发工具下载网址
- android 插件
- Android studio 打包string报错解决方法