1.触摸时白色圆圈的中心不在十字架中心的问题,
以A23平台为例,是在com_android_server_input_InputManagerService.cpp文件,
outSpriteIcon->hotSpotX = pointerIcon.hotSpotX-10;
outSpriteIcon->hotSpotY = pointerIcon.hotSpotY-10;
这个位置更改白色圆圈图片的坐标。
2.如果编译的不是Kernel,而是编译的模块,那么此时就需要将编译后的.c和我们的.o进行链接。具体的方法是:将.c文件改名,例如将我们的驱动文件.c修改为gslX680_main.c,然后编译的将.c生成的.o也修改为gslX680_main.o,最后将gslX680_main.0和gsl_point_id.o进行链接,生成gslX680.o
例如:obj-$(CONFIG_SW_TOUCHSCREEN_GSLX680) += gslX680.o
gslX680-objs := gslX680_n.o gsl_point_id.o
以上示例的解析:
1)最终生成的目标文件是gslX680.o
2)此文件是由驱动文件gslX680_n.o和gsl_point_id.o链接生成的-- gslX680-objs := gslX680_n.o gsl_point_id.o就是链接的动作。
3)gslX680_n.o是由驱动程序gslX680_n.c编译生成的目标文件。
4)全志ADB push .ko的步骤
1、adb root
2、adb remount
3、adb push KO文件路径 /system/vendor/modules
4、adb shell chmod 644 system/vednor/modules/gslX680new.ko
5、adb shell sync
触摸时白色圆圈的中心不在十字架中心的问题
最新推荐文章于 2024-01-15 23:06:49 发布