CN101980118B - 一种在Android平台下实现触摸屏校准的方法 - Google Patents

一种在Android平台下实现触摸屏校准的方法 Download PDF

Info

Publication number
CN101980118B
CN101980118B CN201010517644XA CN201010517644A CN101980118B CN 101980118 B CN101980118 B CN 101980118B CN 201010517644X A CN201010517644X A CN 201010517644XA CN 201010517644 A CN201010517644 A CN 201010517644A CN 101980118 B CN101980118 B CN 101980118B
Authority
CN
China
Prior art keywords
calibration
capp
screen
parameter
application framework
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
CN201010517644XA
Other languages
English (en)
Other versions
CN101980118A (zh
Inventor
何晓水
钱光洪
陈文耀
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
FUJIAN XINNUO COMMUNICATION TECHNOLOGY Co Ltd
Original Assignee
FUJIAN XINNUO COMMUNICATION TECHNOLOGY Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by FUJIAN XINNUO COMMUNICATION TECHNOLOGY Co Ltd filed Critical FUJIAN XINNUO COMMUNICATION TECHNOLOGY Co Ltd
Priority to CN201010517644XA priority Critical patent/CN101980118B/zh
Publication of CN101980118A publication Critical patent/CN101980118A/zh
Application granted granted Critical
Publication of CN101980118B publication Critical patent/CN101980118B/zh
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Abstract

本发明提供一种在Android平台下实现触摸屏校准的方法,Android平台包括内核层、本地库、应用框架、应用层,步骤:11、触摸屏驱动提供sysfs接口文件;12、本地库通过非使能驱动校准获得原始点再发往应用框架;13、应用框架将原始点上报给CAPP;14、CAPP通过标准算法获得校准参数并设置到sysfs接口文件;15、启动使能驱动校准再退出;方法二,步骤:21、CAPP设置系统属性通知应用框架上报原始点;22、CAPP根据标准算法获得校准参数;23、CAPP设置系统属性,通知应用框架新的校准参数生效,应用框架更新校准参数。本发明能够根据不同用户的使用体验,动态的调整触摸屏的校准参数。

Description

一种在Android平台下实现触摸屏校准的方法
【技术领域】
本发明涉及一种电子信息技术领域,特别是涉及一种触摸屏校准技术。 
【背景技术】
标准的Android平台不提供触摸屏校准的程序,而Android框架本身大部分的操作是通过触摸屏操作完成的,使用Android平台的厂商使用的硬件各不相同,但当前绝大部分使用的触摸屏校准方式是在linux内核中修改触摸屏驱动,固定好校准参数,驱动在上报数据时首先经过校准参数修订后再上报。这种方式被绝大部分Android手机厂商采用,因为硬件选型稳定而且工艺水平较高,采用在驱动层就确定好校准参数即可以实现校准功能。 
但对于大部分的行业终端产品及其制造厂商,触摸屏硬件选型经常要改变,而且由于制作工艺的缺陷,采用在驱动中固定校准参数不太合适。而且不同的用户使用的点击习惯是不同的,故此需要一种方案能够根绝各台终端的当前状态或者不同用户的使用体验可以动态的调整校准参数。 
【发明内容】
本发明要解决的技术问题,在于提供一种在Android平台下实现触摸屏校准的方法,它能够根据各台终端的当前状态或不同用户的使用体验,动态的调整触摸屏的校准参数。 
本发明是这样实现的: 
一种在Android平台下实现触摸屏校准的方法,所述Android平台包括内核层、本地库、应用框架、应用层,它具体包括如下步骤: 
步骤10、所述内核层内的触摸屏驱动提供sysfs接口文件; 
步骤20、所述本地库调用所述sysfs接口文件,先通过非使能驱动校准ck_en=disable,获得触摸屏原始点,把触摸屏原始点发往应用框架; 
步骤30、应用框架将触摸屏原始点上报给应用层的校准程序CAPP; 
步骤40、校准程序CAPP通过标准算法获得校准参数,并将所获得的校准参数设置到驱动的sysfs接口文件; 
步骤50、启动本地库的使能驱动校准功能ck_en=enable,并退出校准程序CAPP。 
一种在Android平台下实现触摸屏校准的方法,所述Android平台包括内核层、本地库、应用框架、应用层,它具体包括如下步骤: 
步骤10、所述应用层的校准程序CAPP设置所述应用框架上的系统属性,通知应用框架无需校准,直接上报原始点给校准程序CAPP; 
步骤20、所述校准程序CAPP根据标准算法获得校准参数,并记录标准参数到文件/data/etc/pointercal; 
步骤30、校准程序CAPP设置系统属性为完成状态,通知应用框架新的校准参数生效,应用框架从文件/data/etc/pointercal更新校准参数,并在以后的校准部分使用此参数。 
本发明具有如下优点: 
本发明通过实现一个触摸屏的校准应用程序CAPP,让用户根据自己的习惯在触摸屏上多次选点,程序根绝选点情况可以基本确认用户的选点习惯,同时根据与屏幕的对应计算出校准参数。根据这个校准参数,通过触摸屏驱动和框架层两种方式来达到对触摸屏原始点的校准,它能够根据各台终端的当前状态或不同用户的使用体验动态的调整触摸屏的校准参数。 
【附图说明】
下面参照附图结合实施例对本发明作进一步的说明。 
图1为本发明方法流程示意图。 
图2为本发明另一方法的流程示意图 
【具体实施方式】
参阅图1、图2对本发明实施例进行详细的说明。 
如图1所示,本发明一种在Android平台下实现触摸屏校准的方法,所述Android平台包括内核层、本地库、应用框架、应用层,它具体包括如下步骤: 
步骤11、所述内核层内的触摸屏驱动提供sysfs接口文件; 
步骤12、所述本地库调用所述sysfs接口文件,先通过非使能驱动校准ck_en=disable,获得触摸屏原始点,把触摸屏原始点发往应用框架; 
步骤13、应用框架将触摸屏原始点上报给应用层的校准程序CAPP; 
步骤14、校准程序CAPP通过标准算法获得校准参数,并将所获得的校准参数设置到驱动的sysfs接口文件; 
步骤15、启动本地库的使能驱动校准功能ck_en=enable,并退出校准程序CAPP。 
由触摸屏驱动提供sysfs接口文件供校准程序CAPP调用,校准程序CAPP校准前应当先启动非使能驱动校准ck_en=disable,这样才能保证校准程序CAPP获得都是原始点,然后在屏幕上依次画上、下、左、右、中5个点,用户依次单击,此过程多次进行以便获得用户的点击习惯,同时过滤无效点,校准程序CAPP获取用户的点击点,并取其平均值,根据算法计算出标准参数x1,x2,y1,y2,z1,z2,div。所述x1,x2分别代表在竖向和横向上的X轴伸缩系数,y1,y2分别代表在竖向和横向上的Y轴伸缩系数,z1,z2分别代表在竖向和横向上的修正值,div是阈值。所述的标准算法为:XL=(XT×x1+YT×y1+z1)/div,YL=(YT×x2+YT×y2+z2)/div,所述XL、YL是显示屏的坐标,XT、YT是触摸屏的坐标。将经过校准算法后获得的校准参数设置到驱动的sysfs接口文件中,然后启用使能驱动校准ck_en=enable的功能并退出,这样就可以保证其他应用程序获得的是校准后的点击点。 
驱动提供SYSFS接口: 
Static struct device_attribute ts_calibrate{ 
_ATTR{brightness;0644;ts_show_cken;ts_store_cken}; 
_ATTR{brightness;0644;ts_show_ckx1;ts_store_ckx1}; 
_ATTR{brightness;0644;ts_show_ckx2;ts_store_ckx2}; 
_ATTR{brightness;0644;ts_show cky1;ts_store_cky1}; 
_ATTR{brightness;0644;ts_show cky2;ts_store_cky2}; 
_ATTR{brightness;0644;ts_show ckz1;ts_store_ckz1}; 
_ATTR{brightness;0644;ts_show ckz2;ts_store_ckz2}; 
_ATTR{brightness;0644;ts_show ckdiv;ts_store_ckdiv}; 
_ATTR_NULL; 
应用层实现调用流程: 
Sysfs_write(fd_ts_chen;0)://disable calibrate...//触摸屏校准部分 
//把校准参数写入驱动sysfs接口文件 
Sysfs_write{fd_ts_chen;x1}; 
Sysfs_write{fd_ts_chen;y1}; 
Sysfs_write{fd_ts_chen;z1}; 
Sysfs_write{fd_ts_chen;x2}; 
Sysfs_write{fd_ts_chen;y2}; 
Sysfs_write{fd_ts_chen;z2}; 
Sysfs_write{fd_ts_chen;div}; 
Sysfs_write{fd_ts_chen;0};//enable calibrate 
如图2所示,另一种在Android平台下实现触摸屏校准的方法,所述Android平台包括内核层、本地库、应用框架、应用层,它包括如下步骤:步骤21、所述应用层的校准程序CAPP设置所述应用框架上的系统属性,通知应用框架无需校准,直接上报原始点给校准程序CAPP;步骤22、所述校准程序CAPP根据标准算法获得校准参数,并记录标准参数到文件/data/etc/pointercal;步骤23、校准程序CAPP设置系统属性为完成状态,通知应用框架新的校准参数生效,应用框架从文件/data/etc/pointercal更新校准参数,并在以后的校准部分使用此参数。 
正常情况下,驱动都是上报原始点,当没有开启CAPP应用时,应用框 架从上次的/data/etc/pointercal文件中获得校准参数一次,以后所有的触摸屏点击数据都要经过应用框架的校准参数校准后再上报给应用层,而当校准程序CAPP要执行时,校准程序CAPP需要的是原始点,故此CAPP要设置系统属性PROP_CALIBRATE=RUNNING,通知应用框架无须校准,直接上报原始点。一般校准程序CAPP设置应用框架中的系统属性中的Key-Value键值对,应用框架在上报原始点时首先访问这个Key-Value键值对,以确定是否有要根据/data/etc/pointercal文件的内容对点进行校准后才上报。设置系统属性后,在屏幕上依次画上、下、左、右、中5个点,用户依次单击,此过程多次进行以便获得用户的点击习惯,同时过滤无效点,校准程序CAPP获取用户的点击点,并取其平均值,根据算法计算出校准参数x1,x2,y1,y2,z1,z2,div。所述x1,x2分别代表在竖向和横向上的X轴伸缩系数,y1,y2分别代表在竖向和横向上的Y轴伸缩系数,z1,z2分别代表在竖向和横向上的修正值,div是阈值。所述的校准算法为:XL=(XT×x1+YT×y1+z1)/div,YL=(YT×x2+YT×y2+z2)/div,所述XL、YL是显示屏的坐标,XT、YT是触摸屏的坐标。校准程序CAPP获取校准参数后将校准参数记录到文件/data/etc/pointercal;校准程序CAPP做完校准之后设置系统属性为完成状态“PROP_CALIBRATE=FINISHED″,通知应用框架新的校准参数生效,应用框架从文件/data/etc/pointercal更新一下校准参数,并在以后的校准部分使用此参数。 
应用框架代码流程: 
Static class transforminfo{ 
Float x1; 
Float y1; 
Float z1; 
Float x2; 
Float y2; 
Float z2; 
Float s; 
在处理驱动上报的原始点的时候 
首先确定是否在校准状态中 
因为这种实现方法是通过属性系统进行应用框架和应用层同步信息的,而android的属性系统是有权限分别的,故此需要额外在android的属性系统实现部分进行定制,增加应用层第三方应用可以使用的属性。 
以上所述,仅为本发明较佳实施例而已,故不能依此限定本发明实施的范围,即依本发明专利范围及说明书内容所作的等效变化与修饰,皆应仍属本发明涵盖的范围内。 

Claims (6)

1.一种在Android平台下实现触摸屏校准的方法,所述Android平台包括内核层、本地库、应用框架、应用层,其特征在于:所述方法包括如下步骤:
步骤10、所述内核层内的触摸屏驱动提供sysfs接口文件;
步骤20、所述本地库调用所述sysfs接口文件,先通过非使能驱动校准ck_en=disable,获得触摸屏原始点,把触摸屏原始点发往应用框架;
步骤30、应用框架将触摸屏原始点上报给应用层的校准程序CAPP;
步骤40、校准程序CAPP通过标准算法获得校准参数,并将所获得的校准参数设置到驱动的sysfs接口文件;
步骤50、启动本地库的使能驱动校准功能ck_en=enable,并退出校准程序CAPP。
2.根据权利要求1所述的一种在Android平台下实现触摸屏校准的方法,其特征在于:所述步骤40中获得校准参数的步骤具体包括:在屏幕上依次画上、下、左、右、中5个点,用户依次单击,此过程多次进行以便获得用户的点击习惯,同时过滤无效点,校准程序CAPP获取用户的点击点,并取其平均值,根据算法计算出校准参数x1,x2,y1,y2,z1,z2,div,所述x1,x2分别代表在竖向和横向上的X轴伸缩系数,y1,y2分别代表在竖向和横向上的Y轴伸缩系数,z1,z2分别代表在竖向和横向上的修正值,div是阈值。
3.根据权利要求1或2所述的一种在Android平台下实现触摸屏校准的方法,其特征在于:所述的标准算法为:XL=(XT×x1+YT×y1+z1)/div,YL=(YT×x2+YT×y2+z2)/div,所述XL、YL是显示屏的坐标,XT、YT是触摸屏的坐标。
4.一种在Android平台下实现触摸屏校准的方法,所述Android平台包括内核层、本地库、应用框架、应用层,其特征在于:所述方法包括如下步骤:
步骤10、所述应用层的校准程序CAPP设置所述应用框架上的系统属性,通知应用框架无需校准,直接上报原始点给校准程序CAPP;
步骤20、所述校准程序CAPP根据标准算法获得校准参数,并记录标准参数到文件/data/etc/pointercal;
步骤30、校准程序CAPP设置系统属性为完成状态,通知应用框架新的校准参数生效并且CAPP自动关闭,应用框架从文件/data/etc/pointercal更新校准参数,并在以后的校准部分使用此参数。
5.根据权利要求4所述的一种在Android平台下实现触摸屏校准的方法,其特征在于:所述获得校准参数的步骤具体包括:在屏幕上依次画上、下、左、右、中5个点,用户依次单击,此过程多次进行以便获得用户的点击习惯,同时过滤无效点,校准程序CAPP获取用户的点击点,并取其平均值,根据算法计算出标准参数x1,x2,y1,y2,z1,z2,div,所述x1,x2分别代表在竖向和横向上的X轴伸缩系数,y1,y2分别代表在竖向和横向上的Y轴伸缩系数,z1,z2分别代表在竖向和横向上的修正值,div是阈值。
6.根据权利要求4或5所述的一种在Android平台下实现触摸屏校准的方法,其特征在于:所述的标准算法为:XL=(XT×x1+YT×y1+z1)/div,YL=(YT×x2+YT×y2+z2)/div,所述XL、YL是显示屏的坐标,XT、YT是触摸屏的坐标。
CN201010517644XA 2010-10-22 2010-10-22 一种在Android平台下实现触摸屏校准的方法 Expired - Fee Related CN101980118B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201010517644XA CN101980118B (zh) 2010-10-22 2010-10-22 一种在Android平台下实现触摸屏校准的方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201010517644XA CN101980118B (zh) 2010-10-22 2010-10-22 一种在Android平台下实现触摸屏校准的方法

Publications (2)

Publication Number Publication Date
CN101980118A CN101980118A (zh) 2011-02-23
CN101980118B true CN101980118B (zh) 2012-07-04

Family

ID=43600625

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201010517644XA Expired - Fee Related CN101980118B (zh) 2010-10-22 2010-10-22 一种在Android平台下实现触摸屏校准的方法

Country Status (1)

Country Link
CN (1) CN101980118B (zh)

Families Citing this family (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102736816A (zh) * 2012-07-06 2012-10-17 青岛海信移动通信技术股份有限公司 一种电阻式触摸屏的校准方法及移动终端
CN103514030B (zh) * 2012-07-24 2016-12-21 Tcl集团股份有限公司 Android系统的事件收集上报系统及其收集上报方法
WO2014089741A1 (en) * 2012-12-10 2014-06-19 Intel Corporation Techniques and apparatus for managing touch interface
CN103488368B (zh) * 2013-10-16 2017-02-15 深圳开立生物医疗科技股份有限公司 在安卓系统下触摸屏的校屏方法和装置
CN105518587B (zh) * 2014-05-30 2018-08-21 华为技术有限公司 终端设备显示方法和终端设备
CN104133635A (zh) * 2014-07-23 2014-11-05 百度在线网络技术(北京)有限公司 判断终端手持状态的方法和装置
CN105049968A (zh) * 2015-07-07 2015-11-11 深圳市东方智通科技有限公司 基于Android系统的集成数字音效处理式音响装置及其操作方法
CN106371657A (zh) * 2016-08-18 2017-02-01 苏州触动电子科技有限公司 一种跨平台的软件校正实现方法
CN110287734B (zh) * 2019-07-01 2021-04-06 Oppo广东移动通信有限公司 安全通信节点的设置方法、装置、终端及存储介质

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101853133A (zh) * 2010-05-31 2010-10-06 中兴通讯股份有限公司 一种自动识别手势的方法及移动终端

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7873746B2 (en) * 2007-07-27 2011-01-18 Lagavulin Limited User interface for a portable, image-processing transmitter

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101853133A (zh) * 2010-05-31 2010-10-06 中兴通讯股份有限公司 一种自动识别手势的方法及移动终端

Also Published As

Publication number Publication date
CN101980118A (zh) 2011-02-23

Similar Documents

Publication Publication Date Title
CN101980118B (zh) 一种在Android平台下实现触摸屏校准的方法
US10921967B2 (en) Electronic device and method for configuring display thereof
EP3152650B1 (en) High-speed application for installation on mobile devices for permitting remote configuration of such mobile devices
US11526274B2 (en) Touch control method and apparatus
US10686882B2 (en) Change management using a thing-model on an internet-of-things platform
CN102929419B (zh) 一种触摸屏的自动校准方法、系统及自动校准触摸屏设备
US20170115981A1 (en) Apparatus and method for managing application
CN108574933B (zh) 用户轨迹恢复方法及装置
US20160162389A1 (en) Device Cloud Monitoring and Stability
KR20180014199A (ko) 다수의 애플리케이션 버전의 분배
WO2013152810A1 (en) Data cleaning
US10705681B2 (en) Electronic device and display method for selecting an area of an icon
WO2017023626A1 (en) Identification and presentation of changelogs relevant to a tenant of a multi-tenant cloud service
CN105783900A (zh) 一种传感器数据的校准方法及装置
CN107480001A (zh) 系统恢复方法及装置
CN106155477A (zh) 屏幕图标尺寸的调整方法、装置及终端
CN103455141B (zh) 互动投影系统及其深度传感器和投影仪的校准方法
WO2019052115A1 (zh) 应用控件样式自定义方法、装置以及计算机可读存储介质
CN109558316A (zh) 一种测试策略自动化配置的http接口动态化参数测试方法
CN105740143B (zh) 一种自动化测试方法、装置和计算设备
AU2017202711A1 (en) Illumination-guided example-based stylization of 3d scenes
CN107068034A (zh) 一种屏幕显示亮度调整的方法及装置
AU2017202712B2 (en) Illumination-guided example-based stylization of 3d scenes
CN110209557A (zh) 用户操作录制还原方法、装置、设备及可读存储介质
JP2004070886A (ja) ディスクアレイ装置の設定方法、プログラム、情報処理装置、及びディスクアレイ装置

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant
PE01 Entry into force of the registration of the contract for pledge of patent right

Denomination of invention: Method for calibrating touch screen in Android platform

Effective date of registration: 20131011

Granted publication date: 20120704

Pledgee: Fujian Straits bank, Limited by Share Ltd, Fuzhou science and Technology Branch

Pledgor: Fujian Xinnuo Communication Technology Co., Ltd.

Registration number: 2013350000034

PLDC Enforcement, change and cancellation of contracts on pledge of patent right or utility model
PC01 Cancellation of the registration of the contract for pledge of patent right

Date of cancellation: 20150210

Granted publication date: 20120704

Pledgee: Fujian Straits bank, Limited by Share Ltd, Fuzhou science and Technology Branch

Pledgor: Fujian Xinnuo Communication Technology Co., Ltd.

Registration number: 2013350000034

PE01 Entry into force of the registration of the contract for pledge of patent right

Denomination of invention: Method for calibrating touch screen in Android platform

Effective date of registration: 20150216

Granted publication date: 20120704

Pledgee: Fujian Straits bank, Limited by Share Ltd, Fuzhou science and Technology Branch

Pledgor: Fujian Xinnuo Communication Technology Co., Ltd.

Registration number: 2015350000009

PC01 Cancellation of the registration of the contract for pledge of patent right

Date of cancellation: 20160420

Granted publication date: 20120704

Pledgee: Fujian Straits bank, Limited by Share Ltd, Fuzhou science and Technology Branch

Pledgor: Fujian Xinnuo Communication Technology Co., Ltd.

Registration number: 2015350000009

PLDC Enforcement, change and cancellation of contracts on pledge of patent right or utility model
CF01 Termination of patent right due to non-payment of annual fee
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20120704

Termination date: 20181022