Android Studio E / dalvikvm:无法找到类...从方法引用

时间:2016-04-23 21:31:47

标签: java android

我遇到了一个似乎与android studio中的库有关的问题 我正在编译错误,如:

  

找不到类' android.os.PersistableBundle从方法com.example.jack.test1.MainActivity.access引用$ super',找不到类' android.app.SharedElementCallback引用来自方法com.example.jack.test1.MainActivity.access $ super',找不到类' android.app.ActivityManager $ TaskDescription。

应用程序仍然正常运行但是当运行某个按钮事件时,它会停止工作。我的朋友和我的代码完全一样,但在我的情况下,它不起作用。我已经尝试升级到最新的API级别并尝试了不同的gradle插件版本,但问题仍然存在。谢谢

运行android studio 2.0
gradle版本2.10
min sdk 4.0

4 个答案:

答案 0 :(得分:2)

我在Android Studio v2.0中遇到此错误,同时从(v7-appcompat)支持库构建AppCompatActivity的空子项。似乎在相应的支持库升级(v23.3.0)之后构建工具(Gradle v2.1.0,Android插件v2.10)升级时出现的问题。

我的解决方案:

  • 从我的模块级build.gradle文件中删除support-library依赖项引用
  • 清理项目
  • 重启Android Studio(可能是可选的)
  • 通过项目结构>添加支持库。依赖

到目前为止似乎工作,虽然将来能够指定升级顺序,或者为依赖于构建工具的库/设置设置某种先发生的层次结构会很好。

答案 1 :(得分:0)

我遇到过同样的问题。问题是因为android构建工具版本和android支持库(appcompat)版本之间存在差异。

您可以通过以下方式解决此问题:更新您的构建工具版本并支持库版本为最新,或者使用低于构建工具版本的appcompat库并在您的gradle文件中更改它。

您可以从here

获取支持库的所有修订版

要获取和更新您的构建版本和支持库版本,请检查应用程序模块中的build.gradle文件

答案 2 :(得分:0)

启用Multidex为我解决了这个问题。更详细的解释可以在我对here的类似问题的答案中找到。

答案 3 :(得分:0)

我认为解决了我的问题(在尝试上述建议后) 缩小代码并使用 progaurd规则正式解释here

  

由于我是Android Studio的新手,感觉我的项目,虽然是一个非常小的应用程序,可能会被多个实验库内容夸大+许多评论(和内部的非活动代码)导致64K? (nopeIguess),非法引用(可能!);在阅读@PKuijpers的答案后,这是一个直观的猜测(谢谢!)。老实说,我不想包含multiDex,因为在阅读完官方文档之后,我确信我的应用程序不是PokemonGo或NFS,或者足够大,不足以获得multidex。