CN107992349A - 截屏方法、装置和移动终端 - Google Patents

截屏方法、装置和移动终端 Download PDF

Info

Publication number
CN107992349A
CN107992349A CN201711221465.XA CN201711221465A CN107992349A CN 107992349 A CN107992349 A CN 107992349A CN 201711221465 A CN201711221465 A CN 201711221465A CN 107992349 A CN107992349 A CN 107992349A
Authority
CN
China
Prior art keywords
bitmap
glsurfaceview
classes
processing
mobile terminal
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.)
Pending
Application number
CN201711221465.XA
Other languages
English (en)
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.)
SHENZHEN ZHIYING TECHNOLOGY Co.,Ltd.
Original Assignee
Qiku Internet Technology Shenzhen 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 Qiku Internet Technology Shenzhen Co Ltd filed Critical Qiku Internet Technology Shenzhen Co Ltd
Priority to CN201711221465.XA priority Critical patent/CN107992349A/zh
Publication of CN107992349A publication Critical patent/CN107992349A/zh
Pending legal-status Critical Current

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04MTELEPHONIC COMMUNICATION
    • H04M1/00Substation equipment, e.g. for use by subscribers
    • H04M1/72Mobile telephones; Cordless telephones, i.e. devices for establishing wireless links to base stations without route selection
    • H04M1/724User interfaces specially adapted for cordless or mobile telephones
    • H04M1/72403User interfaces specially adapted for cordless or mobile telephones with means for local support of applications that increase the functionality
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04MTELEPHONIC COMMUNICATION
    • H04M1/00Substation equipment, e.g. for use by subscribers
    • H04M1/72Mobile telephones; Cordless telephones, i.e. devices for establishing wireless links to base stations without route selection
    • H04M1/724User interfaces specially adapted for cordless or mobile telephones
    • H04M1/72403User interfaces specially adapted for cordless or mobile telephones with means for local support of applications that increase the functionality
    • H04M1/7243User interfaces specially adapted for cordless or mobile telephones with means for local support of applications that increase the functionality with interactive means for internal management of messages
    • H04M1/72439User interfaces specially adapted for cordless or mobile telephones with means for local support of applications that increase the functionality with interactive means for internal management of messages for image or video messaging

Landscapes

  • Engineering & Computer Science (AREA)
  • Human Computer Interaction (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Multimedia (AREA)
  • Business, Economics & Management (AREA)
  • General Business, Economics & Management (AREA)
  • Processing Or Creating Images (AREA)

Abstract

本发明提供了一种截屏方法、装置和移动终端,涉及智能控制的技术领域,该方法包括:从缓存中提取当前应用的界面数据生成第一位图;该当前应用包含有GLSurfaceView类;根据GLSurfaceView类的绘制内容生成第二位图;将第二位图合并至第一位图的指定区域得到截屏图像;其中,指定区域为GLSurfaceView类的位置信息对应的区域。本发明提供的截屏方法、装置和移动终端,可以从缓存中提取该应用的界面数据生成第一位图;根据GLSurfaceView类的绘制内容生成第二位图;将第二位图合并至第一位图的指定区域,进而得到与该应用的当前显示界面一致的截屏图像,提升了截屏操作的可靠性。

Description

截屏方法、装置和移动终端
技术领域
本发明涉及智能控制的技术领域,尤其是涉及一种截屏方法、装置和移动终端。
背景技术
在有GLSurfaceView的应用中,经常需要截取应用的当前屏幕,然后根据当前屏幕做一些模糊等操作,截屏的方法非常多,适合在应用中进行截屏的方法并不多,而通常在当前应用中含有GLSurfaceView时,截取的图案中往往含有GLSurfaceView的部分是纯黑的,而使用***自带的接口程序,如,Android***提供的Surface.screenshot()进行截屏时,往往需要获取***权限,但是,很多第三方应用是获取不到***权限的,就会导致截屏失败。
发明内容
有鉴于此,本发明的目的在于提供一种截屏方法、装置和移动终端,以缓解截屏失败的技术问题。
本发明技术方案一提出了一种截屏方法,该方法包括:从缓存中提取当前应用的界面数据生成第一位图;该当前应用包含有GLSurfaceView类;根据GLSurfaceView类的绘制内容生成第二位图;将第二位图合并至第一位图的指定区域得到截屏图像;其中,指定区域为GLSurfaceView类的位置信息对应的区域。
本发明技术方案二在技术方案一的基础上提出,上述从缓存中提取当前应用的界面数据生成第一位图的步骤,包括:启用主线程运行view.getDrawingCache()函数,以从缓存中提取当前应用的界面数据生成第一位图。
本发明技术方案三在技术方案二的基础上提出,上述根据GLSurfaceView类的绘制内容生成第二位图的步骤,包括:通过运行GLSurfaceView类的render线程,回调GLSurfaceView类的onDrawFrame()函数,得到GLSurfaceView类的绘制内容,根据绘制内容生成第二位图。
本发明技术方案四在技术方案三的基础上提出,上述根据绘制内容生成第二位图的步骤,包括:将绘制内容对应的字节数据转换为位图数据,得到第二位图。
本发明技术方案五在技术方案三或技术方案四的基础上提出,上述方法还包括:当生成第二位图时,触发render线程向主线程发送位图通知,该位图通知携带有第二位图和GLSurfaceView类的位置信息;将第二位图合并至第一位图的指定区域得到截屏图像的步骤,包括:当主线程接收到位图通知时,从位图通知提取第二位图和GLSurfaceView类的位置信息;在第一位图中,将GLSurfaceView类的位置信息对应的区域确定为指定区域;将第二位图绘制到指定区域,得到截屏图像。
本发明技术方案六在技术方案一的基础上提出,上述方法还包括:对截屏图像进行优化处理,优化处理包括以下至少之一:模糊处理、缩放处理和旋转处理;显示优化处理后的所述截屏图像。
本发明技术方案七还提出了一种截屏装置,该装置包括:第一位图生成模块,用于从缓存中提取当前应用的界面数据生成第一位图;当前应用包含有GLSurfaceView类;第二位图生成模块,用于根据GLSurfaceView类的绘制内容生成第二位图;合并模块,用于将第二位图合并至第一位图的指定区域得到截屏图像;其中,指定区域为GLSurfaceView类的位置信息对应的区域。
本发明技术方案八在技术方案七的基础上提出,上述第一位图生成模块用于:启用主线程运行view.getDrawingCache()函数,以从缓存中提取当前应用的界面数据生成第一位图。
本发明技术方案九在技术方案八的基础上提出,上述第二位图生成模块用于:通过运行GLSurfaceView类的render线程,回调GLSurfaceView类的onDrawFrame()函数,得到GLSurfaceView类的绘制内容,根据绘制内容生成第二位图。
本发明技术方案十在技术方案九的基础上提出,上述第二位图生成模块还用于:将绘制内容对应的字节数据转换为位图数据,得到第二位图。
本发明技术方案十一在技术方案九或技术方案十的基础上提出,上述装置还包括:发送模块,用于当生成第二位图时,触发render线程向主线程发送位图通知,位图通知携带有第二位图和GLSurfaceView类的位置信息;合并模块用于:当主线程接收到位图通知时,从位图通知提取第二位图和GLSurfaceView类的位置信息;在第一位图中,将GLSurfaceView类的位置信息对应的区域确定为指定区域;将第二位图绘制到指定区域,得到截屏图像。
本发明技术方案十二在技术方案七的基础上提出,上述装置还包括:优化模块,用于对截屏图像进行优化处理,优化处理包括以下至少之一:模糊处理、缩放处理和旋转处理;显示模块,用于显示优化模块优化处理后的截屏图像。
本发明技术方案十三还提出了一种移动终端,该移动终端包括存储器以及处理器,存储器用于存储支持处理器执行第一方面所述方法的程序,上述处理器被配置为用于执行存储器中存储的程序。
本发明技术方案十四还提出了一种计算机存储介质,用于储存为第二方面所述装置所用的计算机软件指令。
与现有技术相比,本发明实施例提供的一种截屏方法、装置和移动终端,在对包含有GLSurfaceView类的应用进行截屏操作时,可以从缓存中提取该应用的界面数据生成第一位图;根据GLSurfaceView类的绘制内容生成第二位图;将第二位图合并至第一位图的指定区域,进而得到与该应用的当前显示界面一致的截屏图像,提升了截屏操作的可靠性。
本发明的其他特征和优点将在随后的说明书中阐述,并且,部分地从说明书中变得显而易见,或者通过实施本发明而了解。本发明的目的和其他优点在说明书、权利要求书以及附图中所特别指出的结构来实现和获得。
为使本发明的上述目的、特征和优点能更明显易懂,下文特举较佳实施例,并配合所附附图,作详细说明如下。
附图说明
为了更清楚地说明本发明具体实施方式或现有技术中的技术方案,下面将对具体实施方式或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施方式,对于本领域技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明实施例提供的一种截屏方法的流程图;
图2为本发明实施例提供的另一种截屏方法的流程图;
图3为本发明实施例提供的第三种截屏方法的流程图;
图4为本发明实施例提供的第四种截屏方法的流程图;
图5为本发明实施例提供的一种截屏装置的结构示意图;
图6为本发明实施例提供的另一种截屏装置的结构示意图;
图7为本发明实施例提供的第三种截屏装置的结构示意图;
图8是本发明实施例提供的移动终端的结构框图。
具体实施方式
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合附图对本发明的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
目前,对有GLSurfaceView的应用截屏,主要有以下两种:一种是通过View.getDrawingCache()获取,但是该方法在当前应用中含有GLSurfaceView时,截取的图像中GLSurfaceView的部分是纯黑的,这是由于GLSurfaceView和SurfaceView一样,都会占用一定的缓存区,也就是存在一块透明的缓存区域,通过View.getDrawingCache()截取的往往只是这块透明的缓存区域;因此,在截取的图像中会有一部分黑色区域,另一种就是使用Android***提供的Surface.screenshot(),该方法的特点是无论当前应用中包含何种view都能截取到,但是该方法需要***权限,而在实际使用时很多第三方应用中经常会碰到当前页面含有GLSurfaceView,而获取不到***权限的情况,导致无法截取到完整的图像。
基于此,本发明实施例提供的一种截屏方法、装置和移动终端,以截取到完整的屏幕图像。
为便于对本实施例进行理解,首先对本发明实施例所公开的一种截屏方法进行详细介绍。
实施例一:
本发明实施例提供了一种截屏方法,该方法可以应用于移动终端,其中,本发明实施例所述的移动终端可以是智能手机、掌上电脑、膝上型便携计算机、车载电脑、智能穿戴设备等具有截屏功能的移动设备,图1示出了一种截屏方法的流程图,包括以下步骤:
步骤S102,从缓存中提取当前应用的界面数据生成第一位图,当前应用包含有GLSurfaceView类。
其中,第一位图也可以称为背景图或底图。
步骤S104,根据GLSurfaceView类的绘制内容生成第二位图。
其中,该GLSurfaceView类的绘制内容可以通过该GLSurfaceView类的绘制函数得到,也可以通过访问GLSurfaceView类的绘制内容存储区得到。
步骤S106,将第二位图合并至第一位图的指定区域得到截屏图像;其中,该指定区域为GLSurfaceView类的位置信息对应的区域。
其中,GLSurfaceView类的位置信息可以包括GLSurfaceView类的绘制内容在显示界面上的位置,例如该绘制内容的边界坐标信息和/或绘制内容对应的边界大小信息,以绘制内容为矩形框为例,该位置信息可以是矩形4个顶点中至少一个顶点的坐标和矩形框的长、宽大小。
上述应用通常是移动终端中安装的一些第三方应用,包括访问受限应用或者不受限应用等,其中,访问受限指的是限制***的一些应用的,比如可以限制***自带的应用程序,限制访问的内容,以及隐私等。因此,对于访问受限的应用,利用现有的截屏方法,如果获取不到***权限,就无法截取到完整图像,而本发明实施例所述的截屏方法在截屏操作过程中并没有涉及到获取***权限过程,因此,无论是上述应用是否是访问受限应用,只要在应用中含有GLSurfaceView,都可以通过上述截屏方法进行截屏。
本发明实施例提供的一种截屏方法,在对包含有GLSurfaceView类的应用进行截屏操作时,可以从缓存中提取该应用的界面数据生成第一位图;根据GLSurfaceView类的绘制内容生成第二位图;将第二位图合并至第一位图的指定区域,进而得到与该应用的当前显示界面一致的截屏图像,提升了截屏操作的可靠性。
实施例二:
在实际使用时,GLSurfaceView类能够对一些应用程序画面进行更好地渲染,例如,一些2D或3D的动作游戏,或者,可视化地图中通常都包含有GLSurfaceView类,这些动作游戏或者可视化地图都可以作为第三方应用安装到移动终端上,而GLSurfaceView类通常在render线程中运行,因此,在对包含GLSurfaceView类的第三方应用截图时,上述第二位图通常也是在render线程中进行截取的,基于此,本发明实施例还提供了另一种截屏方法,该方法可以应用于移动终端,如图2所示的另一种截屏方法的流程图,该方法包括以下步骤:
步骤S202,启用主线程运行view.getDrawingCache()函数,以从缓存中提取当前应用的界面数据生成第一位图。
通常,view.getDrawingCache()函数是运行在主线程的,因此,需要启动主线程,在主线程中运行view.getDrawingCache()函数,在截屏时view.getDrawingCache()函数通常通过获取视图缓存来实现截屏,所以,需要将缓存数据转换成位图数据,保存成图片格式,当当前的第三方应用不包含GLSurfaceView类时,执行完步骤S202后,就可以得到完整的截屏图像;当当前的第三方应用包含GLSurfaceView类时,此时的第一位图作为背景图片,需要继续在render线程中截取第二位图,具体步骤如步骤S204~步骤S208所示。
步骤S204,通过运行GLSurfaceView类的render线程,回调GLSurfaceView类的onDrawFrame()函数,得到GLSurfaceView类的绘制内容。
GLSurfaceView类是一个视图,继承至SurfaceView,它内嵌的surface专门负责OpenGL的渲染过程,通常GLSurfaceView类的主要绘制过程都是在render线程中完成,并且在绘制过程中能够获取所绘制内容的位置等信息,而GLSurfaceView类的绘制内容通常保存在指定的内存中,可以通过在设定时间内反复调用onDrawFrame()函数获得,此时,onDrawFrame()函数得到GLSurfaceView类的绘制内容是字节数据,因此,还需要执行步骤S206,将字节数据转换为位图数据。
步骤S206,将绘制内容对应的字节数据转换为位图数据,得到第二位图。
在该步骤中将字节数据转换为位图数据的过程可以参考现有技术中的相关资料,本发明实施例对此不进行赘述。
通常,在得到第二位图之后,还可以记录第二位图的偏移位置和宽高等数据,这些数据通常包含在GLSurfaceView类的位置信息中,因此,都可以通过调用onDrawFrame()函数获得。当获得到这些数据后,可以执行步骤S208,进行第一位图和第二位图的合并操作。
步骤S208,将第二位图合并至第一位图的指定区域得到截屏图像;其中,指定区域为GLSurfaceView类的位置信息对应的区域。
此时,截屏得到的就是包含GLSurfaceView类的第三方应用的完整截屏图像。
本发明实施例提供的一种截屏方法,在对当前包含有GLSurfaceView类的应用进行截屏操作时,可以从缓存中提取当前应用的界面数据生成第一位图;并回调GLSurfaceView类的onDrawFrame()函数,得到GLSurfaceView类的绘制内容,并根据该绘制内容生成第二位图;进而将第二位图合并至第一位图的指定区域,以填充第一位图中由于GLSurfaceView类占用缓存产生的黑色区域,从而能截取到当前应用的完整图像,提高了截屏的可靠性。
实施例三:
考虑到view.getDrawingCache()函数运行在主线程,GLSurfaceView类的主要绘制过程在render线程,由于,上述第一位图和第二位图的生成过程不在同一个线程中,因此,为了获得完整地截屏图像,还可以监听render线程的过程,以便于在第二位图生成以后,能够将第二位图和其相关信息通知主线程,以进行后续的合并操作。因此,本发明实施例提供了第三种截屏方法,该方法可以应用于移动终端,以对含有GLSurfaceView类的第三方应用进行截屏,如图3所示的第三种截屏方法的流程图,包括以下步骤:
其中,步骤S302~步骤S306与上述实施方式中的步骤S202~S206的执行过程一致,这里不再赘述。
步骤S308,当生成第二位图时,触发render线程向主线程发送位图通知,位图通知携带有第二位图和GLSurfaceView类的位置信息。
其中,该位置信息包括第二位图的偏移位置和宽高等数据。
步骤S310,当主线程接收到位图通知时,从位图通知提取第二位图和GLSurfaceView类的位置信息。
步骤S312,在第一位图中,将GLSurfaceView类的位置信息对应的区域确定为指定区域。
步骤S314,将第二位图绘制到指定区域,得到截屏图像。
例如,以移动终端显示屏的显示尺寸的其中一个角为原点坐标(0,0),由于第一位图是通过view.getDrawingCache()函数从缓存中提取当前应用的界面数据生成的,因此,第一位图与移动终端显示屏的显示尺寸匹配,此时,上述原点坐标(0,0)也是该第一位图的远点坐标,当上述位置信息包括第二位图距离该原点坐标(0,0)的偏移距离为(X,Y),且宽高分别为W、H时,当主线程接收到位图通知后,就可以进行图片合成,将第一位图作为底图,然后将第二位图根据偏移位置(X,Y)和W、H绘制到第一位图对应的位置上。
本发明实施例提供的一种截屏方法,在对包含有GLSurfaceView类的当前应用进行截屏操作时,可以从缓存中提取当前应用的界面数据生成第一位图;并回调GLSurfaceView类的onDrawFrame()函数,得到GLSurfaceView类的绘制内容,并根据该绘制内容生成第二位图;同时,对第二位图的生成过程进行监听,当生成第二位图时,触发render线程向主线程发送位图通知,以使主线程在接收到位图通知时,从位图通知提取第二位图和GLSurfaceView类的位置信息,进而将第二位图合并至第一位图的指定区域,以填充第一位图中由于GLSurfaceView类占用缓存产生的黑色区域,从而能够方便快捷地截取屏幕,得到完整的截屏图像,极大地提高了截屏的可靠性。
实施例四:
为了能够呈现更好的截屏效果,通常,移动终端在完成截屏后,还包括对截屏图像的优化处理,因此,在上述实施例的基础上,本发明实施例还提供了第四种截屏方法,该方法可以应用于移动终端,如图4所示的第四种截屏方法的流程图,包括以下步骤:
其中,步骤S402~步骤S406的过程与上述实施例中的步骤S102~S106的执行过程一致,这里不再赘述。
步骤S408,对截屏图像进行优化处理,优化处理包括以下至少之一:模糊处理、缩放处理和旋转处理;
步骤S410,显示优化处理后的截屏图像。
具体实现时,上述优化处理的具体过程和方式可以参考现有技术中的相关资料,本发明实施例对此不进行限制。
本发明实施例提供的一种截屏方法,在对当前包含有GLSurfaceView类的应用进行截屏操作时,可以从缓存中提取当前应用的界面数据生成第一位图;根据GLSurfaceView类的绘制内容生成第二位图;再将第二位图合并至第一位图的指定区域,得到截屏图像,截屏完成后对上述截屏图像进行优化处理,并显示优化处理后的截屏图像,以呈现更好地截屏效果,有助于提高截屏的可靠性和体验度。
实施例五:
在上述实施例的基础上,本发明实施例还提供了一种截屏装置,该装置可以设置于移动终端,如图5所示的一种截屏装置的结构示意图,该装置包括以下结构:第一位图生成模块52、第二位图生成模块54、合并模块56,各个模块的功能如下:
第一位图生成模块52,用于从缓存中提取当前应用的界面数据生成第一位图;当前应用包含有GLSurfaceView类;
第二位图生成模块54,用于根据GLSurfaceView类的绘制内容生成第二位图;
合并模块56,用于将第二位图合并至第一位图的指定区域得到截屏图像;其中,指定区域为GLSurfaceView类的位置信息对应的区域。
具体实现时,上述第一位图生成模块52用于:启用主线程运行view.getDrawingCache()函数,以从缓存中提取当前应用的界面数据生成第一位图。
上述第二位图生成模块54用于:通过运行GLSurfaceView类的render线程,回调GLSurfaceView类的onDrawFrame()函数,得到GLSurfaceView类的绘制内容,根据绘制内容生成第二位图。进一步,上述第二位图生成模块54还用于:将绘制内容对应的字节数据转换为位图数据,得到第二位图。
图6示出了上述截屏装置的另一种结构示意图,除图5所示的结构外,上述装置还包括:
发送模块58,用于当生成第二位图时,触发render线程向主线程发送位图通知,该位图通知携带有第二位图和GLSurfaceView类的位置信息;基于此,上述合并模块56用于:当主线程接收到位图通知时,从位图通知提取第二位图和GLSurfaceView类的位置信息;在第一位图中,将GLSurfaceView类的位置信息对应的区域确定为指定区域;将第二位图绘制到指定区域,得到截屏图像。
图7示出了本发明实施例提供的第三种截屏装置的结构示意图,除图5所述的结构外,上述装置还包括:
优化模块60,用于对截屏图像进行优化处理,优化处理包括以下至少之一:模糊处理、缩放处理和旋转处理;
显示模块62,用于显示优化模块优化处理后的截屏图像。
本发明实施例所提供的截屏装置,其实现原理及产生的技术效果和前述截屏方法实施例相同,为简要描述,装置实施例部分未提及之处,可参考前述方法实施例中相应内容。
本发明实施例还提供了一种移动终端,在一个可能的设计中,该移动终端包括存储器以及处理器,存储器用于存储支持处理器执行上述截屏方法的程序,处理器被配置为用于执行存储器中存储的程序。
本发明实施例还提供了一种计算机存储介质,用于储存为截屏装置所用的计算机软件指令。
上述移动终端的结构框图如图8所示,该移动终端100包括:射频(RadioFrequency,RF)电路110、存储器120、输入单元130、显示单元140、传感器150、音频电路160、无线保真(Wireless Fidelity,WiFi)模块170、处理器180、以及电源190等部件。本领域技术人员可以理解,图8中示出的移动终端100结构并不构成对移动终端100的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。
下面结合图8对移动终端100的各个构成部件进行具体的介绍:
RF电路110可用于收发信息或通话过程中,信号的接收和发送,特别地,将基站的下行信息接收后,给处理器180处理;另外,将设计上行的数据发送给基站。通常,RF电路110包括但不限于天线、至少一个放大器、收发信机、耦合器、低噪声放大器(Low NoiseAmplifier,LNA)、双工器等。此外,RF电路110还可以通过无线通信与网络和其他设备通信。上述无线通信可以使用任一通信标准或协议,包括但不限于全球移动通讯***(GlobalSystem of Mobile communication,GSM)、通用分组无线服务(General Packet RadioService,GPRS)、码分多址(Code Division Multiple Access,CDMA)、宽带码分多址(Wideband Code Division Multiple Access,WCDMA)、长期演进(Long Term Evolution,LTE)、电子邮件、短消息服务(Short Messaging Service,SMS)等。
存储器120可用于存储软件程序以及模块,如本发明实施例中截屏方法及装置对应的程序指令/模块,处理器180通过运行存储在存储器120的软件程序以及模块,从而执行移动终端100的各种功能应用以及数据处理,如本发明实施例提供的截屏方法。存储器120可主要包括存储程序区和存储数据区,其中,存储程序区可存储操作***、至少一个功能所需的应用程序(比如声音播放功能、图像播放功能等)等;存储数据区可存储根据移动终端100的使用所创建的数据(比如音频数据、电话本等)等。此外,存储器120可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件、闪存器件、或其他易失性固态存储器件。
输入单元130可用于接收输入的数字或字符信息,以及产生与移动终端100的用户设置以及功能控制有关的键信号输入。具体地,输入单元130可包括触控面板131以及其他输入设备132。触控面板131,也称为触摸屏,可收集用户在其上或附近的触摸操作(比如用户使用手指、触笔等任何适合的物体或附件在触控面板131上或在触控面板131附近的操作),并根据预先设定的程式驱动相应的连接装置。可选的,触控面板131可包括触摸检测装置和触摸控制器两个部分。其中,触摸检测装置检测用户的触摸方位,并检测触摸操作带来的信号,将信号传送给触摸控制器;触摸控制器从触摸检测装置上接收触摸信息,并将它转换成触点坐标,再送给处理器180,并能接收处理器180发来的命令并加以执行。此外,可以采用电阻式、电容式、红外线以及表面声波等多种类型实现触控面板131。除了触控面板131,输入单元130还可以包括其他输入设备132。具体地,其他输入设备132可以包括但不限于物理键盘、功能键(比如音量控制按键、开关按键等)、轨迹球、鼠标、操作杆等中的一种或多种。
显示单元140可用于显示由用户输入的信息或提供给用户的信息以及移动终端100的各种菜单。显示单元140可包括显示面板141,可选的,可以采用液晶显示器(LiquidCrystal Display,LCD)、有机发光二极管(Organic Light-Emitting Diode,OLED)等形式来配置显示面板141。进一步的,触控面板131可覆盖显示面板141,当触控面板131检测到在其上或附近的触摸操作后,传送给处理器180以确定触摸事件的类型,随后处理器180根据触摸事件的类型做处理。虽然在图8中,触控面板131与显示面板141是作为两个独立的部件来实现移动终端100的输入和输入功能,但是在某些实施例中,可以将触控面板131与显示面板141集成而实现移动终端100的输入和输出功能。
移动终端100还可包括至少一种传感器150,比如光传感器、运动传感器以及其他传感器。具体地,光传感器可包括环境光传感器及接近传感器,其中,环境光传感器可根据环境光线的明暗来调节显示面板141的亮度,接近传感器可在移动终端100移动到耳边时,关闭显示面板141和/或背光。作为运动传感器的一种,加速计传感器可检测各个方向上(一般为三轴)加速度的大小,静止时可检测出重力的大小及方向,可用于识别移动终端100姿态的应用(比如横竖屏切换、相关游戏、磁力计姿态校准)、振动识别相关功能(比如计步器、敲击)等;至于移动终端100还可配置的陀螺仪、气压计、湿度计、温度计、红外线传感器等其他传感器,在此不再赘述。
音频电路160、扬声器161,传声器162可提供用户与移动终端100之间的音频接口。音频电路160可将接收到的音频数据转换后的电信号,传输到扬声器161,由扬声器161转换为声音信号输出;另一方面,传声器162将收集的声音信号转换为电信号,由音频电路160接收后转换为音频数据,再将音频数据输出处理器180处理后,经RF电路110以发送给比如另一移动终端100,或者将音频数据输出至存储器120以便进一步处理。
WiFi属于短距离无线传输技术,移动终端100通过WiFi模块170可以帮助用户收发电子邮件、浏览网页和访问流式媒体等,它为用户提供了无线的宽带互联网访问。虽然图8示出了WiFi模块170,但是可以理解的是,其并不属于移动终端100的必须构成,完全可以根据需要在不改变发明的本质的范围内而省略。
处理器180是移动终端100的控制中心,利用各种接口和线路连接整个移动终端100的各个部分,通过运行或执行存储在存储器120内的软件程序和/或模块,以及调用存储在存储器120内的数据,执行移动终端100的各种功能和处理数据,从而对移动终端100进行整体监控。可选的,处理器180可包括一个或多个处理单元;优选的,处理器180可集成应用处理器和调制解调处理器,其中,应用处理器主要处理操作***、用户界面和应用程序等,调制解调处理器主要处理无线通信。可以理解的是,上述调制解调处理器也可以不集成到处理器180中。
移动终端100还包括给各个部件供电的电源190(比如电池),优选的,电源可以通过电源管理***与处理器180逻辑相连,从而通过电源管理***实现管理充电、放电、以及功耗管理等功能。
可以理解,图8所示的结构仅为示意,移动终端100还可包括比图8中所示更多或者更少的组件,或者具有与图8所示不同的配置。图8中所示的各组件可以采用硬件、软件或其组合实现。
需要说明的是,本说明书中的各个实施例均采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似的部分互相参见即可。
本发明实施例所提供的截屏方法、装置和移动终端的计算机程序产品,包括存储了程序代码的计算机可读存储介质,所述程序代码包括的指令可用于执行前面方法实施例中所述的方法,具体实现可参见方法实施例,在此不再赘述。
在本申请所提供的几个实施例中,应该理解到,所揭露的装置和方法,也可以通过其它的方式实现。以上所描述的装置实施例仅仅是示意性的,例如,附图中的流程图和框图显示了根据本发明的多个实施例的装置、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段或代码的一部分,所述模块、程序段或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现方式中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个连续的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或动作的专用的基于硬件的***来实现,或者可以用专用硬件与计算机指令的组合来实现。
另外,在本发明各个实施例中的各功能模块或单元可以集成在一起形成一个独立的部分,也可以是各个模块单独存在,也可以两个或两个以上模块集成形成一个独立的部分。
所述功能如果以软件功能模块的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序,也不能理解为指示或暗示相对重要性。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
以上所述仅为本发明的优选实施例而已,并不用于限制本发明,对于本领域的技术人员来说,本发明可以有各种更改和变化。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。应注意到:相似的标号和字母在下面的附图中表示类似项,因此,一旦某一项在一个附图中被定义,则在随后的附图中不需要对其进行进一步定义和解释。
以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应所述以权利要求的保护范围为准。

Claims (10)

1.一种截屏方法,其特征在于,所述方法包括:
从缓存中提取当前应用的界面数据生成第一位图;所述当前应用包含有GLSurfaceView类;
根据所述GLSurfaceView类的绘制内容生成第二位图;
将所述第二位图合并至所述第一位图的指定区域得到截屏图像;其中,所述指定区域为所述GLSurfaceView类的位置信息对应的区域。
2.根据权利要求1所述的方法,其特征在于,所述从缓存中提取所述当前应用的界面数据生成第一位图的步骤,包括:
启用主线程运行view.getDrawingCache()函数,以从缓存中提取所述当前应用的界面数据生成第一位图。
3.根据权利要求2所述的方法,其特征在于,所述根据所述GLSurfaceView类的绘制内容生成第二位图的步骤,包括:
通过运行所述GLSurfaceView类的render线程,回调所述GLSurfaceView类的onDrawFrame()函数,得到所述GLSurfaceView类的绘制内容,根据所述绘制内容生成第二位图。
4.根据权利要求3所述的方法,其特征在于,所述根据所述绘制内容生成第二位图的步骤,包括:
将所述绘制内容对应的字节数据转换为位图数据,得到第二位图。
5.根据权利要求3或4所述的方法,其特征在于,所述方法还包括:
当生成所述第二位图时,触发所述render线程向所述主线程发送位图通知,所述位图通知携带有所述第二位图和所述GLSurfaceView类的位置信息;
将所述第二位图合并至所述第一位图的指定区域得到截屏图像的步骤,包括:
当所述主线程接收到所述位图通知时,从所述位图通知提取所述第二位图和所述GLSurfaceView类的位置信息;
在所述第一位图中,将所述GLSurfaceView类的位置信息对应的区域确定为指定区域;
将所述第二位图绘制到所述指定区域,得到截屏图像。
6.根据权利要求1所述的方法,其特征在于,所述方法还包括:
对所述截屏图像进行优化处理,所述优化处理包括以下至少之一:模糊处理、缩放处理和旋转处理;
显示优化处理后的所述截屏图像。
7.一种截屏装置,其特征在于,所述装置包括:
第一位图生成模块,用于从缓存中提取当前应用的界面数据生成第一位图;所述当前应用包含有GLSurfaceView类;
第二位图生成模块,用于根据所述GLSurfaceView类的绘制内容生成第二位图;
合并模块,用于将所述第二位图合并至所述第一位图的指定区域得到截屏图像;其中,所述指定区域为所述GLSurfaceView类的位置信息对应的区域。
8.根据权利要求7所述的装置,其特征在于,所述第一位图生成模块用于:
启用主线程运行view.getDrawingCache()函数,以从缓存中提取所述当前应用的界面数据生成第一位图。
9.根据权利要求7所述的装置,其特征在于,所述装置还包括:
优化模块,用于对所述截屏图像进行优化处理,所述优化处理包括以下至少之一:模糊处理、缩放处理和旋转处理;
显示模块,用于显示所述优化模块优化处理后的所述截屏图像。
10.一种移动终端,其特征在于,所述移动终端包括存储器以及处理器,所述存储器用于存储支持处理器执行权利要求1至6任一项所述方法的程序,所述处理器被配置为用于执行所述存储器中存储的程序。
CN201711221465.XA 2017-11-22 2017-11-22 截屏方法、装置和移动终端 Pending CN107992349A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201711221465.XA CN107992349A (zh) 2017-11-22 2017-11-22 截屏方法、装置和移动终端

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201711221465.XA CN107992349A (zh) 2017-11-22 2017-11-22 截屏方法、装置和移动终端

Publications (1)

Publication Number Publication Date
CN107992349A true CN107992349A (zh) 2018-05-04

Family

ID=62033947

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201711221465.XA Pending CN107992349A (zh) 2017-11-22 2017-11-22 截屏方法、装置和移动终端

Country Status (1)

Country Link
CN (1) CN107992349A (zh)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109857309A (zh) * 2019-01-21 2019-06-07 武汉卡比特信息有限公司 一种基于iOS移动终端的屏幕截图投射方法
CN111290676A (zh) * 2020-03-02 2020-06-16 北京金山安全软件有限公司 客户端中指定区域的图片的截取方法、装置及设备

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20130283151A1 (en) * 2012-04-20 2013-10-24 Yahoo! Inc. Dynamic Webpage Image
CN104461283A (zh) * 2014-11-18 2015-03-25 小米科技有限责任公司 网络视图的截图方法及装置、电子设备
CN105719240A (zh) * 2016-01-21 2016-06-29 腾讯科技(深圳)有限公司 图片处理的方法和装置
CN106020608A (zh) * 2016-05-20 2016-10-12 北京小米移动软件有限公司 截图控制方法及装置

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20130283151A1 (en) * 2012-04-20 2013-10-24 Yahoo! Inc. Dynamic Webpage Image
CN104461283A (zh) * 2014-11-18 2015-03-25 小米科技有限责任公司 网络视图的截图方法及装置、电子设备
CN105719240A (zh) * 2016-01-21 2016-06-29 腾讯科技(深圳)有限公司 图片处理的方法和装置
CN106020608A (zh) * 2016-05-20 2016-10-12 北京小米移动软件有限公司 截图控制方法及装置

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
阿飞_: "Andriod中GLSurfaceView截图", 《HTTPS://BLOG.CSDN.NET/AFEI__/ARTICLE/DETAILS/51614375》 *

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109857309A (zh) * 2019-01-21 2019-06-07 武汉卡比特信息有限公司 一种基于iOS移动终端的屏幕截图投射方法
CN111290676A (zh) * 2020-03-02 2020-06-16 北京金山安全软件有限公司 客户端中指定区域的图片的截取方法、装置及设备

Similar Documents

Publication Publication Date Title
CN104978115B (zh) 内容显示方法及装置
CN106792101B (zh) 主页界面调整方法、装置和智能电视
CN106933525B (zh) 一种显示图像的方法和装置
CN103501259B (zh) 一种丢包检测的方法及检测装置
CN105487649A (zh) 一种提示方法及移动终端
CN103455256A (zh) 旋转屏幕显示画面的方法和终端
CN108888955A (zh) 一种游戏中的视角控制方法和装置
CN103699309B (zh) 一种同步视频的录制方法、装置及移动终端
CN106504303B (zh) 一种播放帧动画的方法和装置
CN105808060A (zh) 一种播放动画的方法和装置
CN104820546B (zh) 功能信息展示方法和装置
CN107943417A (zh) 图像处理方法、终端、计算机存储介质及计算机程序
CN104991699B (zh) 一种视频显示控制的方法和装置
CN104679381A (zh) 切换聊天窗口的方法及装置
CN104965642A (zh) 下拉列表生成方法及装置
CN103677944B (zh) 一种制作锁屏界面的方法、装置及终端设备
CN103823851B (zh) 网页显示方法和装置
CN108055383A (zh) 截屏图片的获取方法、装置和移动终端
CN107957914A (zh) 一种信息处理方法及移动终端
CN107992349A (zh) 截屏方法、装置和移动终端
CN106817489A (zh) 消息的提示方法及移动终端
CN106708390A (zh) 一种截屏的方法、装置和***
CN106375182A (zh) 基于即时通信应用的语音通信方法及装置
CN107479799A (zh) 一种显示窗口的方法和装置
CN106330672A (zh) 一种即时通信方法及***

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
TA01 Transfer of patent application right
TA01 Transfer of patent application right

Effective date of registration: 20210121

Address after: 518000 Building 405A, 01B, Zone E, Zhiheng Industrial Park, Nantou Street, Nanshan District, Shenzhen City, Guangdong Province

Applicant after: SHENZHEN ZHIYING TECHNOLOGY Co.,Ltd.

Address before: 518000 1-10 Floor, Building A2, Nanshan Zhiyuan, 1001 Xueyuan Avenue, Nanshan District, Shenzhen City, Guangdong Province

Applicant before: QIKU INTERNET TECHNOLOGY (SHENZHEN) Co.,Ltd.

RJ01 Rejection of invention patent application after publication
RJ01 Rejection of invention patent application after publication

Application publication date: 20180504