Android开发导入项目报错Ignoring InnerClasses attribute for an anonymous inner class的解决办法

作者:franksight 时间:2023-05-16 13:02:45 

在安卓开发导入项目过程中,出现错误再所难免。最近导入项目就遇到如下错误,具体如下图所示。

Android开发导入项目报错Ignoring InnerClasses attribute for an anonymous inner class的解决办法

出现如上错误,最初设想先看下项目能不能运行。经尝试可以完美的在windows系统上运行(虽然会出现如上的错误警告)。项目虽然在报警告的情况下,能在windows系统上运行,但一般Android项目都是基于Windows和OS X系统开发。于是猜想项目能不能同样在OS X系统上运行呢?结果发现不能,必须要把这些错误警告解决才行。

最初根据上图提示认为可能是对应的第三方jar包的问题。于是,分别替换了对应的第三方jar包。替换后,发现还是出现相同的问题。由此jar包问题被排除。经查找相应的资料说添加如下代码能解决这个错误警告,报着半信半疑的态度开始试试。

找到项目下对应的proguard-rules.pro文件。如下图所示。

Android开发导入项目报错Ignoring InnerClasses attribute for an anonymous inner class的解决办法

在proguard-rules.pro文件中添加如下代码(解释:忽略内部类的一些属性)。


-keepattributes EnclosingMethod

再次重新构建项目,运行发现然并卵。再次查找相关资料,资料显示每个项目的Dex都有方法数的限制(上限65536,超过上限号称应用爆棚),由此猜想会不会是Dex的方法数超过上限呢?同样报着试试的态度,在项目的build.gradle文件中添加multiDexEnabled true代码(解释:设置多Dex可用)。

其具体情况如下图所示

Android开发导入项目报错Ignoring InnerClasses attribute for an anonymous inner class的解决办法

再次重构项目,运行,出现如下结果

Android开发导入项目报错Ignoring InnerClasses attribute for an anonymous inner class的解决办法

由此项目可以在Windows上无错误运行,再次将项目导入Mac上,完美运行。Ignoring InnerClasses attribute for an anonymous inner class问题解决就介绍到此。

下面做下简单的小结:

(1) 第一考虑是不是可以直接忽略第三方的属性的错误警告,由此层层递进发现问题。

(2) 出现Ignoring InnerClasses attribute for an anonymous inner class问题一般是第三方jar的问题引起的可能性很小,首先考虑是不是Dex越界问题。

(3) 将keepattributes EnclosingMethod去除,再次重构发现也不会出现Ignoring InnerClasses attribute for an anonymous inner class问题,由此进一步推断主要是Dex越界问题引起Ignoring InnerClasses attribute for an anonymous inner class问题。如果导入项目遇到类似问题首先判断是否是Dex越界引起。

来源:https://blog.csdn.net/whj9073/article/details/72842674

标签:android,开发,导入,报错
0
投稿

猜你喜欢

  • Java和C#输入输出流的方法(详解)

    2022-06-24 09:21:02
  • Java泛型<T> T与T的使用方法详解

    2021-07-12 10:58:42
  • C#压缩或解压rar、zip文件方法实例

    2023-10-21 23:00:16
  • android 动态控制状态栏显示和隐藏的方法实例

    2023-07-08 10:11:43
  • C# 拷贝数组的几种方法(总结)

    2023-09-14 06:50:17
  • android gradle如何修改生成的apk名字

    2023-03-09 23:38:56
  • 讲解使用Docker搭建Java Web运行环境

    2023-02-05 15:58:12
  • Android Drawable必备知识小结

    2021-09-09 20:56:16
  • Android开发使用自定义View将圆角矩形绘制在Canvas上的方法

    2021-06-08 01:03:17
  • Android Glide图片加载(加载监听、加载动画)

    2022-08-27 08:31:24
  • SpringBoot下载Excel文件时,报错文件损坏的解决方案

    2023-01-09 15:49:16
  • Android 设置Edittext获取焦点并弹出软键盘

    2022-02-28 12:02:02
  • Android中Intent机制详解及示例总结(总结篇)

    2023-05-27 21:51:39
  • Maven install 报错"程序包不存在"问题的解决方法

    2021-05-27 06:08:06
  • mongo分布式锁Java实现方法(推荐)

    2023-06-30 21:28:43
  • Java三种IO模型原理实例详解

    2022-05-20 02:36:37
  • springboot实现FastJson解析json数据的方法

    2023-11-27 22:12:48
  • Spring Boot实现分布式系统中的服务发现和注册(最新推荐)

    2022-07-10 03:50:23
  • 详解Mybatis动态sql

    2023-09-16 15:41:38
  • Java 数据结构与算法系列精讲之单向链表

    2023-07-10 08:22:12
  • asp之家 软件编程 m.aspxhome.com