apk 安装失败 & logcat 显示 NoSuchMethodException

Posted

技术标签:

【中文标题】apk 安装失败 & logcat 显示 NoSuchMethodException【英文标题】:apk failed to install & logcat shows NoSuchMethodException 【发布时间】:2012-03-12 00:33:24 【问题描述】:

如标题所述,编译时,控制台显示:Failed to install ap.apk

但是 logcat 显示了这个:

    02-21 00:45:25.052: W/dalvikvm(921): threadid=1: thread exiting with uncaught exception (group=0x409c01f8)
    02-21 00:45:25.272: E/androidRuntime(921): FATAL EXCEPTION: main
    02-21 00:45:25.272: E/AndroidRuntime(921): java.lang.IllegalStateException: Could not find a method retour(View) in the activity class hd.android.contact.ContactActionActivity for onClick handler on view class android.widget.Button with id 'button5'
    02-21 00:45:25.272: E/AndroidRuntime(921):  at android.view.View$1.onClick(View.java:3031)
    02-21 00:45:25.272: E/AndroidRuntime(921):  at android.view.View.performClick(View.java:3511)
    02-21 00:45:25.272: E/AndroidRuntime(921):  at android.view.View$PerformClick.run(View.java:14105)
    02-21 00:45:25.272: E/AndroidRuntime(921):  at android.os.Handler.handleCallback(Handler.java:605)
    02-21 00:45:25.272: E/AndroidRuntime(921):  at android.os.Handler.dispatchMessage(Handler.java:92)
    02-21 00:45:25.272: E/AndroidRuntime(921):  at android.os.Looper.loop(Looper.java:137)
    02-21 00:45:25.272: E/AndroidRuntime(921):  at android.app.ActivityThread.main(ActivityThread.java:4424)
    02-21 00:45:25.272: E/AndroidRuntime(921):  at java.lang.reflect.Method.invokeNative(Native Method)
    02-21 00:45:25.272: E/AndroidRuntime(921):  at java.lang.reflect.Method.invoke(Method.java:511)
    02-21 00:45:25.272: E/AndroidRuntime(921):  at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:784)
    02-21 00:45:25.272: E/AndroidRuntime(921):  at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:551)
    02-21 00:45:25.272: E/AndroidRuntime(921):  at dalvik.system.NativeStart.main(Native Method)
    **02-21 00:45:25.272: E/AndroidRuntime(921): Caused by: java.lang.NoSuchMethodException: retour [class android.view.View]**
    02-21 00:45:25.272: E/AndroidRuntime(921):  at java.lang.Class.getConstructorOrMethod(Class.java:460)
    02-21 00:45:25.272: E/AndroidRuntime(921):  at java.lang.Class.getMethod(Class.java:915)
    02-21 00:45:25.272: E/AndroidRuntime(921):  at android.view.View$1.onClick(View.java:3024)

我评论了我所有的“retour”方法并删除了所有与此方法相关的android:onClick,它没有帮助...之前一切正常...

有人可以帮忙吗?

提前谢谢你

【问题讨论】:

请添加您的活动代码。 问题已解决,代码未正确发送到 AVM。当我关闭当前 AVM 并启动另一个 AVM 时注意到它:该应用程序没有运行,每次我尝试再次运行它时,它都会启动一个新的 AVM 窗口。所以我重新启动了 adb.exe 并且它工作了。 【参考方案1】:
IllegalStateException: Could not find a method retour(View)

我认为问题在于您(肯定)在 XML 中的方法 retour 上指定了 onClick,但该方法 Java 代码中不存在。

如果问题仍然存在,请尝试清理项目并关闭您的软件电话。

【讨论】:

以上是关于apk 安装失败 & logcat 显示 NoSuchMethodException的主要内容,如果未能解决你的问题,请参考以下文章

发布 apk 安装但启动时崩溃。该应用程序在调试模式下完美运行。我查看了 Android Studio,这是我的 adb logcat。

安装失败并显示消息无效文件

Android | Android Studio打包APK安装失败:应用是非正式版本,当前设备不支持安装

android6.0代码安装apk失败?!!!

华为,logcat 没有显示我的应用程序的日志?

安装 Kotlin Android 项目失败并显示 INSTALL_FAILED_DEXOPT