本人使用的是荣耀20, android手机系统版本是android 10,对应的android sdk 版本为 29 ,项目中指定compileSdkVersion和buildToolsVersion ,targetSdkVersion 均为29
android = [
// compileSdkVersion : 28,
// buildToolsVersion : '28.0.3',
compileSdkVersion : 29,
buildToolsVersion : '29.0.0',
applicationId : "com.xxx.ui",
applicationIdSuffix: "test",
minSdkVersion : 19,
targetSdkVersion : 29,
]
断点调试进入系统的
super.dispatchTouchEvent(ev)或 super.onTouchEvent(event) 均错乱,对不上源码。
网上说在jdk.table.xml文件中加入sourcePath标签配置,即可关联适应当前手机的系统源码,经测试发现不成功。
该jdk.table.xml文件的位置如下:
USER_HOME/Library/Preferences/AndroidStudio4.0/options/jdk.table.xml
USER_HOME 为用户的目录,进入方式为打开终端输入
cd 空格 + 回车
网是说有些手机改了系统源码,所以对不上,需要用android 模拟器来调试才可以,本人没试该方式,mac 没有空间了,没下载模拟器的镜像文件。
AndroidStudio快捷键:
Ctrl+E (打开最近编辑文件列表视图)
1年多前就遇到了这个问题,当时没试成功,当时需要调试viewpager源码中的dispatchTouchEvent(ev)方法,不过后来想到了替代方案就是从网上找的开源的viewpager 源码,发现和系统的viewpager源码差不多就直接把它的代码copy到项目中来打断点调试了。
当前遇到的问题是 ,直播用的viewpager来切换下个直播,但滑动的过程中直播画面会闪烁,用打断点的方式排查最终发现是如下方法导致的,注释掉就可以。