首页 > 解决方案 > 在某些设备中找不到 Kotlin 活动

问题描述

我看到有几个人有同样的问题,Kotlin 文件似乎没有包含在 .apk 文件中,抛出 java.lang.NoClassDefFoundError: Failed resolution exception during runtime。

在另一个 Stackoverflow 回答步骤之后,我认为我设法解决了这个问题,但它仍然在某些设备(BQ Aquaris V7.1.1)中每隔一次构建就会发生。我的意思是,如果我构建 .apk 并遇到此问题,如果我构建 .apk 文件并再次安装它,它将消失。

所以它只发生在少数手机中,再次构建 .apk 文件可以解决它。

任何线索为什么会发生这种情况?

鉴于它在大多数设备上都能正常工作,我猜我的 Gradle 设置、Kotlin 和 Android Studio 版本都可以。

预先感谢。

这是在未找到活动的设备中抛出的日志:

由 java.lang.ClassNotFoundException 引起在路径上找不到类“com.project.myapp.kotlin.MyKotlinActivity”:DexPathList[[zip file“/data/app/com.project.myapp-1/base.apk”] ,nativeLibraryDirectories=[/data/app/com.project.myapp-1/lib/arm, /data/app/com.project.myapp-1/base.apk!/lib/armeabi-v7a, /vendor/lib, /系统/库]]

致命异常:java.lang.NoClassDefFoundError 解析失败:Lcom/project/myapp/kotlin/MyKotlinActivity;com.project.myapp.main.HomeActivity.openMyKotlinActivity (HomeActivity.java:281) com.project.myapp.main.HomeFragment.openMyKotlinActivity (HomeFragment.java:622) com.project.myapp.main.HomeFragment.onCreateView (HomeFragment. java:205) android.support.v4.app.Fragment.performCreateView (Fragment.java:2354) android.support.v4.app.FragmentManagerImpl.moveToState (FragmentManager.java:1419) android.support.v4.app.FragmentManagerImpl。 moveFragmentToExpectedState (FragmentManager.java:1740) android.support.v4.app.FragmentManagerImpl.moveToState (FragmentManager.java:1809) android.support.v4.app.BackStackRecord.executeOps (BackStackRecord.java:799) android.support.v4。 app.FragmentManagerImpl。

标签: androidexceptionandroid-activitykotlin

解决方案


推荐阅读