当前位置: 首页 > 面试题库 >

如果手动安装apk,则Android App在真实设备上崩溃

陆子默
2023-03-14
问题内容

我的应用程序在仿真器中甚至在由android studio安装用于调试目的的真实设备中都运行良好,但是如果使用apk文件手动安装,则会崩溃。

我已经准备好粘贴其他任何代码,如需要的话,可以输入“活动”。

这是logcat:

04-14 12:20:44.392 6220-6220/? I/art: Late-enabling -Xcheck:jni
04-14 12:20:44.465 6220-6220/test.planner W/System: ClassLoader referenced unknown path: /data/app/test.planner-1/lib/arm
04-14 12:20:44.467 6220-6220/test.planner I/InstantRun: starting instant run server: is main process
04-14 12:20:44.470 6220-6220/test.planner D/AndroidRuntime: Shutting down VM
04-14 12:20:44.471 6220-6220/test.planner E/AndroidRuntime: FATAL EXCEPTION: main
Process: test.planner, PID: 6220
java.lang.RuntimeException: Unable to instantiate activity ComponentInfo{test.planner/test.planner.MainActivity}: java.lang.ClassNotFoundException: Didn't find class "test.planner.MainActivity" on path: DexPathList[[zip file "/data/app/test.planner-1/base.apk"],nativeLibraryDirectories=[/data/app/test.planner-1/lib/arm, /vendor/lib, /system/lib]]
    at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2327)
    at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2476)
    at android.app.ActivityThread.-wrap11(ActivityThread.java)
    at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1344)
    at android.os.Handler.dispatchMessage(Handler.java:102)
    at android.os.Looper.loop(Looper.java:148)
    at android.app.ActivityThread.main(ActivityThread.java:5417)
    at java.lang.reflect.Method.invoke(Native Method)
    at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:726)
    at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:616)
 Caused by: java.lang.ClassNotFoundException: Didn't find class "test.planner.MainActivity" on path: DexPathList[[zip file "/data/app/test.planner-1/base.apk"],nativeLibraryDirectories=[/data/app/test.planner-1/lib/arm, /vendor/lib, /system/lib]]
    at dalvik.system.BaseDexClassLoader.findClass(BaseDexClassLoader.java:56)
    at java.lang.ClassLoader.loadClass(ClassLoader.java:511)
    at java.lang.ClassLoader.loadClass(ClassLoader.java:469)
    at android.app.Instrumentation.newActivity(Instrumentation.java:1067)
    at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2317)
    at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2476) 
    at android.app.ActivityThread.-wrap11(ActivityThread.java) 
    at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1344) 
    at android.os.Handler.dispatchMessage(Handler.java:102) 
    at android.os.Looper.loop(Looper.java:148) 
    at android.app.ActivityThread.main(ActivityThread.java:5417) 
    at java.lang.reflect.Method.invoke(Native Method) 
    at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:726) 
    at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:616) 
    Suppressed: java.lang.ClassNotFoundException: test.planner.MainActivity
    at java.lang.Class.classForName(Native Method)
    at java.lang.BootClassLoader.findClass(ClassLoader.java:781)
    at java.lang.BootClassLoader.loadClass(ClassLoader.java:841)
    at java.lang.ClassLoader.loadClass(ClassLoader.java:504)
            ... 12 more
 Caused by: java.lang.NoClassDefFoundError: Class not found using the boot class loader; no stack trace available

问题答案:

只需转到:

Android Studio --> File --> Setting --> Build, execution, deploy --> Instant run.

并禁用instant run



 类似资料:
  • 无法在我的手机上安装已签名的发行版APK,也无法将其上载到Play Store上。 我创建了一个带有V1和V2 JAR签名复选框的签名发行版APK。当我尝试将APK放在我的手机上并安装它时: 未安装应用程序 没有JAR签名。 我使用的是Android Studio3.3版本,我正在处理一个Play Store Jar签名错误(重复选中V1和V2复选框,并且都选中了)。 播放存储错误: 这可能是一个

  • 几天前,我在尝试安装时遇到问题。我的银河系S2上的apk。我选择我的手机作为目标,单击“确定”,然后在控制台中出现以下错误: 无法安装AvatarRun。设备“device number”上的apk:超时启动已取消! 在不更改代码并再次运行的情况下,我也可以得到错误: 无法安装AvatarRun。设备“device number”上的apk:找不到设备com。Androidddmlib。Insta

  • Android设备是索尼xperia Z,4.3版本。 我想自动化本机计算器应用程序。 代码: 步骤: 1.将设备与系统连接,并使用adb devices命令检查-它显示我的设备已连接。 2.使用命令启动appium:

  • 我想把我的应用发布到GooglePlay,但首先我想用签名的apk做最后一次测试,以确保所有使用的API密钥都能在发布版本中正常工作(GMaps、Facebook等) 所以我只是用我们的发布密钥制作了一个签名版的应用程序,当我试图将应用程序安装到设备上时,我得到了一个错误: 我已经尝试将apk复制到设备上,并用apk安装程序安装它。 我试了7次,所以我假设这个问题不仅仅是输入错误的密码,我也可以用

  • 问题内容: 我正在Windows上进行开发,但是到处搜索时都找不到任何人在谈论这种事情。 我在桌面上制作了一个C ++应用程序,该应用程序使用MSVC嵌入了Python 3.1。我链接了python31.lib,并将python31.dll包含在应用程序的运行文件夹中以及可执行文件旁边。效果很好。我的扩展程序和嵌入代码肯定有效,并且没有崩溃。 我将运行文件夹发送给了没有安装Python的朋友,在脚

  • 如何使用adb命令行指令在多个设备上同时安装apk?我想用单个命令在两个或多个设备上安装apk,可以吗? 我已尝试使用,低于命令。 “adb-s安装apk路径”-- 请帮助。。。。