然后在具有API级别23的真实设备上调试它:
问题是当我尝试通过Android OS自己的类进行调试时,得到“源代码与字节码不匹配”。为什么会这样呢?应用运行的测试设备为API级别23,正在调试的源文件也为级别23。
我真的很困惑。谁能解释为什么我看到此消息以及如何解决它?
Answers:
这是对我有用的步骤(对于Mac和Windows):
此错误消息可能有多个原因,我的情况与OP中的情况不同,在我的情况下,这是由于第3方库需要其他库。
例如:您手动将X.jar添加到您的LIB,但是此X.jar需要Z.jar才能工作。
我花了一些时间才弄清楚,这个信息根本没有帮助。我必须调试该应用程序,直到到达崩溃的类,并在该类中确保所有导入都得到满足。
(粒子性:我添加了MercadoLibre-0.3.4.jar,它需要commons-httpclient.jar)
希望这可以帮助!
如果启用了ProGuard,也会发生这种情况。在buildTypes中设置minifyEnabled为false,shrinkResources为false,useProguard为false