首页 文章

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

提问于
浏览
5

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

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

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

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

4 回答

  • 2

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

    我的解决方案

    • 从我的模块级build.gradle文件中删除support-library依赖项引用

    • 清理项目

    • 重启Android Studio(可选)

    • 通过 Project Structure > Dependencies 添加支持库

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

  • 0

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

    您可以通过以下方式解决此问题: update your build tool version and support library version to latest 或者您应该 use a appcompat library that is lower than the build tools version 并在gradle文件中更改它 .

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

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

  • 0

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

  • 0

    我认为解决了我的问题(在尝试上述建议后) Shrink the code 并使用 progaurd rules 正式解释here

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

相关问题