如何解决在运行API 29 Android 10和API 30 Android 11的设备上,Android Studio调试器不会在Retrofit回调断点处停止
我正在使用 Android Studio 4.1 Build#AI-201.8743.12.41.6858069,建于2020年9月23日
在调试以下代码段时,即使调用成功并且响应数据显示在UI中,调试器也不会在Retrofit的onSuccess回调中的行中停止。
NB 根据我的测试,此问题仅在运行Android 10 API 29和Android 11 API 30的真实(Samsung Tab A 2019,Android 10)和Android Studio模拟器上存在(在2个不同的版本上完成个人电脑)。 这在调试过程中引起了巨大的混乱。更奇怪的是,在某些随机情况下,调试器会在断点处停止!但是,您必须连续尝试7或8次,否则您将幸运一次!
PS 我已经在API 21到28的物理和Android Studio模拟器上测试了相同的代码,调试器在Retrofit回调中的适当断点处停止。 (效果很好)
这是示例项目的link,在Github上包含此代码片段。您可以在计算机上进行尝试,然后将断点放置在与“ MainActivity.java” 中的屏幕快照相同的位置上。如果有人得到不同的结果,请分享。
更新: 调试器不仅会在Retrofit回调方法上停止,而且如果您重写任何接口方法,调试器也不会在这些方法内部的断点处停止。
解决方法
我面临着同样的问题。更新了android studio 4.1.1回调中的断点后,便开始工作。
,在希望停止调试器的位置添加此行。android.os.Debug.waitForDebugger();
P.S:完成后,请记住删除/评论这一行。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。