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

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

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

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

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

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

我的解决方案

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

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

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

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

您可以从此处获取支持库的所有修订版

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

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

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

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