CN109240916A - 信息输出控制方法、装置及计算机可读存储介质 - Google Patents
信息输出控制方法、装置及计算机可读存储介质 Download PDFInfo
- Publication number
- CN109240916A CN109240916A CN201810937229.6A CN201810937229A CN109240916A CN 109240916 A CN109240916 A CN 109240916A CN 201810937229 A CN201810937229 A CN 201810937229A CN 109240916 A CN109240916 A CN 109240916A
- Authority
- CN
- China
- Prior art keywords
- information
- risk
- memory
- program
- bitmap
- 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.)
- Granted
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/36—Preventing errors by testing or debugging software
- G06F11/3604—Software analysis for verifying properties of programs
- G06F11/3612—Software analysis for verifying properties of programs by runtime analysis
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Software Systems (AREA)
- Computer Hardware Design (AREA)
- Quality & Reliability (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Stored Programmes (AREA)
Abstract
本发明提供一种信息输出控制方法、装置及计算机可读存储介质,涉及电子技术领域。本发明的信息输出控制方法应用于终端,包括:在接收到开启目标程序的指令时,获取与所述目标程序对应的程序标识符;利用所述程序标识符在运行风险数据库中查询与所述程序标识符关联的风险信息;将查询到的所述风险信息输入至预设计算模型以得到所述目标程序的风险系数;根据所述风险系数确定对应的提示方式并在所述终端上进行风险提示。利用本发明,可以利于用户做出相关控制选择,有利于降低信息安全风险。
Description
技术领域
本发明涉及电子技术领域,尤其涉及一种信息输出控制方法、装置及计算机可读存储介质。
背景技术
本部分旨在为权利要求书及具体实施方式中陈述的本发明的实施方式提供背景或上下文。此处的描述不因为包括在本部分中就承认是现有技术。
在java程序运行时,因工程师个人理解所确定的代码可能存在一定的逻辑瑕疵,可能导致java程序在运行时存在运行异常或运行不稳定等不利情况,降低了用户的使用体验,且由于缺乏信息提示,致使用户在运行java程序时,难以及时做出相关控制选择,存在信息安全风险。
发明内容
鉴于此,有必要提供一种信息输出控制方法、装置及计算机可读存储介质,以利于用户做出相关控制选择。
本发明第一方面提供一种信息输出控制方法,应用于终端,所述方法包括:
在接收到开启目标程序的指令时,获取与所述目标程序对应的程序标识符;
利用所述程序标识符在运行风险数据库中查询与所述程序标识符关联的风险信息;
将查询到的所述风险信息输入至预设计算模型以得到所述目标程序的风险系数;
根据所述风险系数确定对应的提示方式并在所述终端上进行风险提示。
优选的,在所述在接收到开启目标程序的指令之前,构建所述运行风险数据库包括:
抓取应用程序的内存快照;
对所述内存快照进行分析以得到所述应用程序的内存信息;
根据所述内存信息判断所述应用程序是否存在内存泄漏;
若所述目标程序存在内存泄漏,则获取所述应用程序在出现内存泄漏时的对象引用关系及所述目标程序的内存释放情况信息;
将所述对象引用关系及所述内存释放情况信息作为所述程序标识符关联的风险信息记录在所述运行风险数据库中。
优选的,在所述抓取所述应用程序的内存快照之后,所述方法还包括:
对所述内存快照进行分析以得到所述应用程序当前所创建的对象;
若所述对象中包括位图,则判断所述位图所占用的内存空间是否大于或等于预设内存空间;及判断在显示界面中位图尺寸与预分配尺寸是否一致;
若所述位图所占用的内存空间大于或等于所述预设内存空间且所述位图在所述显示界面中显示的尺寸与所述预分配的在所述显示界面中所显示的尺寸大小不匹配,则输出位图异常信息;
将所述位图异常信息作为所述程序标识符关联的风险信息记录在所述运行风险数据库中。
优选的,所述判断所述位图所占用的内存空间是否大于或等于预设内存空间包括:
获取所述位图的位图文件头信息;
提取所述位图文件头信息中的位图字节信息以得到所述位图所占用的内存空间;
比较所述位图所占用的内存空间与所述预设内存空间的大小。
优选的,所述判断在显示界面中所述位图尺寸与预分配尺寸是否一致包括:
获取所述位图的位图信息头;
提取所述位图信息头中的位图尺寸信息以得到所述位图尺寸;
比较所述位图尺寸与所述预分配尺寸的大小。
优选的,所述根据所述内存信息判断所述应用程序是否存在内存泄漏包括:
获取所述应用程序在出现内存泄漏时的hprof文件,其中,所述hprof文件至少包括所述内存信息;
对所述hprof文件进行分析得到持有各个类的外部对象;
判断持有各个类的外部对象是否能够被释放;
若不能被释放,则所述根据所述内存信息判断所述目标程序是否存在内存泄漏的判断结果为是。
优选的,所述风险提示信息包括所述目标程序运行异常的风险系数或依据所述风险系数划分的所述目标程序运行的稳定性评级。
优选的,所述根据所述风险系数确定对应的提示方式并在所述终端上进行风险提示包括:
根据所述风险系数确定的弹窗显示方式并在所述终端上进行风险提示;或,
根据所述风险系数确定的通知栏显示方式并在所述终端上进行风险提示。
本发明第二方面提供一种信息输出控制装置,应用于终端,所述装置包括:
获取模块,用于在接收到开启目标程序的指令时,获取与所述目标程序对应的程序标识符;
查询模块,用于利用所述程序标识符在运行风险数据库中查询与所述程序标识符关联的风险信息;
计算模块,用于将查询到的所述风险信息输入至预设计算模型以得到所述目标程序的风险系数;
显示模块,用于根据所述风险系数确定对应的提示方式并在所述终端上进行风险提示。
本发明第三方面提供一种计算机可读存储介质,其上存储有计算机程序或指令,所述计算机程序或指令被处理器执行时实现如上所述的信息输出控制方法的步骤。
本发明提供的信息输出控制方法、装置及计算机可读存储介质,在接收到开启目标程序的指令时,通过获取与所述目标程序对应的程序标识符,并利用所述程序标识符在运行风险数据库中查询与程序标识符关联的风险提示信息,且在查询到与所述程序标识符关联的风险信息后,将查询到的所述风险信息输入至预设计算模型以得到所述目标程序的风险系数,最后再根据所述风险系数确定对应的提示方式并在所述终端上进行风险提示,利用该风险提示信息在程序完全运行前,通过输出风险提示信息以提示用户运行的程序存在的风险,利于用户根据所述风险提示信息做出相应的控制选择,有利于降低信息安全风险。
进一步的,在接收到开启目标程序的指令时,通过获取与所述目标程序对应的程序标识符,并利用所述程序标识符在运行风险数据库中查询与程序标识符关联的风险提示信息,且在查询到与所述程序标识符关联的风险信息后,将查询到的所述风险信息输入至预设计算模型以得到所述目标程序的风险系数,最后再根据所述风险系数确定对应的提示方式并在所述终端上进行风险提示,利用该风险提示信息在程序完全运行前,通过以较为醒目的弹窗显示形式提示用户运行的程序存在的风险,更有助于吸引用户对运行程序所存在的风险,更利于用户根据所述风险提示信息做出相应的控制选择。
附图说明
为了更清楚地说明本发明实施方式的技术方案,下面将对实施方式描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本发明第一实施方式的信息输出控制方法的流程图;
图2是本发明第二实施方式的信息输出控制方法的流程图;
图3是本发明一实施方式的信息输出控制装置的示例性的功能模块图;
图4是本发明一实施方式的终端的示例性的结构示意图。
主要元件符号说明
终端 | 1 |
处理器 | 10 |
存储器 | 20 |
显示器 | 30 |
信息输出控制装置 | 100 |
获取模块 | 11 |
查询模块 | 12 |
计算模块 | 13 |
显示模块 | 14 |
如下具体实施方式将结合上述附图进一步说明本发明。
具体实施方式
为了能够更清楚地理解本发明的上述目的、特征和优点,下面结合附图和具体实施方式对本发明进行详细描述。需要说明的是,在不冲突的情况下,本申请的实施方式及实施方式中的特征可以相互组合。
在下面的描述中阐述了很多具体细节以便于充分理解本发明,所描述的实施方式仅仅是本发明一部分实施方式,而不是全部的实施方式。基于本发明中的实施方式,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施方式,都属于本发明保护的范围。
除非另有定义,本文所使用的所有的技术和科学术语与属于本发明的技术领域的技术人员通常理解的含义相同。本文中在本发明的说明书中所使用的术语只是为了描述具体的实施方式的目的,不是旨在于限制本发明。
图1是本发明第一实施方式的信息输出控制方法的流程图。应说明的是,本发明实施方式的所述信息输出控制方法并不限于图1所示的流程图中的步骤及顺序。根据不同的需求,所示流程图中的步骤可以增加、移除、或者改变顺序。
如图1所示,本实施方式的信息输出控制方法可应用于终端,可包括如下步骤:
步骤101:在接收到开启目标程序的指令时,获取与所述目标程序对应的程序标识符。
本实施方式中,在所述终端中安装的各个程序均具有唯一的程序标识符。
本实施方式中,当用户点击目标程序的图标时,所述终端接收到所述用户在所述图标位置的触控输入信息时,即可认为所述终端接收到开启目标程序的指令。当然,还可通过其他方式开启所述目标程序,此处便不再一一列举。
步骤102:利用所述程序标识符在运行风险数据库中查询与所述程序标识符关联的风险提示信息。
本实施方式中,所述运行风险数据库可包括依据已有的记录数据构建的特征数据,可通过具体通过如下方法实构建所述运行风险数据库:
S11)、抓取应用程序的内存快照;具体地,可利用内存分析工具(Memory AnalyzerTool,MAT)抓取所述内存快照。
S12)、对所述内存快照进行分析以得到所述应用程序的内存信息,其中,所述内存信息可包括所述应用程序各个对象所占空间的大小、各个对象的引用关系,而所述内存信息本身可存在于hprof文件中,也即所述hprof文件至少包括所述内存信息。
S13)、根据所述内存信息判断所述目标程序是否存在内存泄漏,具体地,可通过如下方式实现:
获取所述目标程序在出现内存泄漏时的hprof文件;
对所述hprof文件进行分析得到持有各个类的外部对象;
判断持有各个类的外部对象是否能够被释放;
若不能被释放,则所述根据所述内存信息判断所述目标程序是否存在内存泄漏的判断结果为是。
当然,还可通过如下方式实现S13步骤的判断:
具体地,如在所述终端为手机时,所述目标程序为java程序时,可利用所述内存分析工具分析Heap的总内存占用大小以粗略判断当前是否存在内存泄漏,可具体包括:第一、在手机上选择要监控的目标程序;第二、点击视图界面中的“Update Heap”图标;第三、点击Heap视图;第四、点击Heap视图中的“Cause GC”按钮;由此,实现对目标程序的监视。应当理解的是,在Heap视图中有一个Type为数据对象(data object)。在数据对象的“Total Size”即为当前进程中所有Java数据对象的内存总量,具体判断时:
进入目标程序,不断的在该目标程序中进行操作(可利用控制工具控制所述目标程序进行各种操作),与此同时,观察数据对象的“Total Size”值,正常情况下“TotalSize”值会稳定在一个有限的范围内,也即表明程序中的代码良好,没有造成对象不被垃圾回收的情况。否则,即表明存在内存泄漏。
S14)、若所述目标程序存在内存泄漏,则获取所述目标程序在出现内存泄漏时的对象引用关系及所述目标程序的内存释放情况信息。
S15)、将所述对象引用关系及所述内存释放情况信息作为所述程序标识符关联的风险信息记录在所述运行风险数据库中。
可以理解的是,所述对象引用关系及所述内存释放情况信息可以表征所述目标程序在出现内存泄漏时的各个对象之间作用信息,利于分析致使内存泄漏的原因,因而可利用其得到所述目标程序在运行时出现内存泄漏可能性的高低。
可以理解的是,所述应用程序为终端中可执行或至少部分可执行的程序,其可包括前述的目标程序,且在所述应用程序为所述目标程序时,依所述目标程序所构建的运行风险数据库包括与所述目标程序的程序标识符关联的风险信息。
当然,在抓取所述目标程序的内存快照之后,还可进行如下步骤:
S21)、对所述内存快照进行分析以得到目标程序当前所创建的对象。对应前述,同样可利用所述内存信息获取到在所述目标程序创建对象阶段步骤中所创建的对象。
S22)、若所述对象中包括位图(bitmap),则判断所述位图所占用的内存空间是否大于或等于预设内存空间;及判断在显示界面中位图尺寸与预分配尺寸是否一致。
S23)、若所述位图所占用的内存空间大于或等于所述预设内存空间且所述位图在所述显示界面中显示的尺寸与所述预分配的在所述显示界面中所显示的尺寸大小不匹配,则输出位图异常信息。
其中,在判断所述位图所占用的内存空间是否大于或等于预设内存空间时,具体可以包括:获取所述位图的位图文件头信息;
提取所述位图文件头信息中的位图字节信息以得到所述位图所占用的内存空间;
比较所述位图所占用的内存空间与所述预设内存空间的大小。
在判断在显示界面中的所述位图尺寸与预分配尺寸是否一致时,可以具体包括:
获取所述位图的位图信息头;
提取所述位图信息头中的位图尺寸信息以得到所述位图尺寸;
比较所述位图尺寸与所述预分配尺寸的大小。
S24)、将所述位图异常信息作为所述程序标识符关联的风险信息记录在所述运行风险数据库中。
步骤103:将查询到的所述风险信息输入至预设计算模型以得到所述目标程序的风险系数。
本实施方式中,不同类型的风险信息对应不同的计算模型,如对应前述的将所述对象引用关系及所述内存释放情况信息作为所述程序标识符关联的风险信息,可利用第一计算模型计算得到第一风险系数;对应前述的将所述位图异常信息作为所述程序标识符关联的风险信息,可利用第二计算模型计算得到第二风险系数。当然,在查询到同时包括二者类型的风险信息后,可基于所述第一风险系数和所述第二风险系数,对两个风险系数配以不同的权重以得到综合风险系数。此处,不同的权重配给可根据经验确定,也可根据运行测试数据确定。
步骤104:根据所述风险系数确定对应的提示方式并在所述终端上进行风险提示。
本实施方式中,所述风险提示信息可包括所述目标程序运行异常的风险系数或依据所述风险系数划分的所述目标程序运行的稳定性评级。所述风险系数与所述稳定性评级均可以数字形式直观地体现:所述目标程序在运行时,可能存在的运行异常的风险高低或运行的稳定性高低。
本实施方式中,根据所述风险系数高低来确定提示方式,如所述风险系数高时,确定的提示方式可为屏幕显示加轻微震动提示;当所述风险系数低时,确定的提示方式可为屏幕显示。
本实施方式中,在接收到开启目标程序的指令时,通过获取与所述目标程序对应的程序标识符,并利用所述程序标识符在运行风险数据库中查询与程序标识符关联的风险提示信息,且在查询到与所述程序标识符关联的风险信息后,将查询到的所述风险信息输入至预设计算模型以得到所述目标程序的风险系数,最后根据所述风险系数确定对应的提示方式并在所述终端上进行风险提示,利用该风险提示信息在程序完全运行前,通过输出风险提示信息以提示用户运行的程序存在的风险,利于用户根据所述风险提示信息做出相应的控制选择,有利于降低信息安全风险。
本实施方式中,优选在所述目标程序的启动页面展示期间输出所述风险提示信息,以利于用户及时做出终止程序的运行、仅使用程序的部分功能等的控制选择。
对应上述,可以理解的是,当所述目标程序有多个对象存在内存泄漏时,可对应所述第一预设计算关系计算出的运行风险系数为高运行风险系数(如风险系数87),而后,以所述计算出的运行风险指数作为查询结果输出,并在所述风险提示信息中显示所述计算出的运行风险指数。而当有极少数的对象存在内存泄漏时,可对应所述第一预设计算关系计算出的运行风险指数为低运行风险系数(如风险系数3),而后,同样以所述计算出的运行风险指数作为查询结果输出,并在所述风险提示信息中显示所述计算出的运行风险指数。
图2是本发明第二实施方式的信息输出控制方法的流程图,所述的第二实施方式与第一实施方式的主要区别在于,第二实施方式包括了以弹窗显示方式进行风险提示信息的步骤。需要说明的是,在本发明的精神或基本特征的范围内,适用于第一实施方式中的各具体方案也可以相应的适用于第二实施方式中,为节省篇幅及避免重复起见,在此就不再赘述。
如图2所示的信息输出控制方法,同样应用于终端中。如图2所示,所述信息输出控制方法可以包括如下步骤:
步骤201:在接收到开启目标程序的指令时,获取与所述目标程序对应的程序标识符。
步骤202:利用所述程序标识符在运行风险数据库中查询与所述程序标识符关联的风险信息。
步骤203:将查询到的所述风险信息输入至预设计算模型以得到所述目标程序的风险系数。
步骤204:根据所述风险系数确定弹窗显示方式并在所述终端上进行风险提示。
本实施方式中,在进行风险提示时,还可在所述终端上根据所述风险系数确定的在通知栏中显示的方式进行风险提示,且不同的风险提示可对应不同的提示颜色。
本实施方式中,在接收到开启目标程序的指令时,通过获取与所述目标程序对应的程序标识符,并利用所述程序标识符在运行风险数据库中查询与程序标识符关联的风险提示信息,且在查询到与所述程序标识符关联的风险信息后,将查询到的所述风险信息输入至预设计算模型以得到所述目标程序的风险系数,最终根据所述风险系数确定对应的提示方式并在所述终端上进行风险提示,利用该风险提示信息在程序完全运行前,通过以较为醒目的弹窗显示形式提示用户运行的程序存在的风险,更有助于吸引用户对运行程序所存在的风险,更利于用户根据所述风险提示信息做出相应的控制选择。
图3是本发明一实施方式的信息输出控制装置的示例性的功能模块图。如图3所示,信息输出控制装置100可用于在接收到开启目标程序的指令时,通过获取与所述目标程序对应的程序标识符,并利用所述程序标识符在运行风险数据库中查询与程序标识符关联的风险提示信息,且在查询到与所述程序标识符关联的风险信息后,将查询到的所述风险信息输入至预设计算模型以得到所述目标程序的风险系数,最后根据所述风险系数确定对应的提示方式并在所述终端上进行风险提示,利用该风险提示信息在程序完全运行前,通过输出风险提示信息以提示用户运行的程序存在的风险,利于用户根据所述风险提示信息做出相应的控制选择,有利于降低信息安全风险。
本发明的信息输出控制装置100可以包括一个或多个模块,所述一个或多个模块可以被存储在终端的存储器中并可以被配置成由一个或多个处理器(本实施方式为一个处理器)执行,以完成本发明。例如,如图3所示,所述信息输出控制装置100可以包括获取模块11、查询模块12、计算模块13及显示模块14。本发明所称的模块可以是完成一特定功能的程序段,比程序更适合于描述软件在处理器中的执行过程。
需要说明的是,对应上述信息输出控制方法的各实施方式,信息输出控制装置100可以包括图3中所示的各功能模块中的一部分或全部,各模块的功能将在以下具体介绍。以上信息输出控制方法的各实施方式中相同的名词相关名词及其具体的解释说明也可以适用于以下对各模块的功能介绍。为节省篇幅及避免重复起见,在此就不再赘述。
图4是本发明一实施方式的终端的示例性的结构示意图。本实施例提供的终端1包括:处理器10、存储器20、显示器30以及存储在所述存储器20中并可在所述处理器10上运行的计算机程序,如信息输出控制程序。所述处理器10执行所述计算机程序时,实现上述各个信息输出控制方法实施方式中的步骤,例如图1所示的步骤101至步骤103。或者,所述处理器10执行所述计算机程序时实现上述装置实施例中各模块的功能,例如如图3中的获取模块11用于在接收到开启目标程序的指令时,获取与所述目标程序对应的程序标识符的功能。
所述终端1可以是手机、桌上型计算机、笔记本、掌上电脑及云端服务器等计算设备。所述终端1可包括,但不限于,处理器10、存储器20及显示器30。本领域技术人员可以理解,所述示意图仅仅是本发明用于实现信息输出控制方法的终端1的示例,并不构成对终端1的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件,例如所述终端1还可以包括输入输出设备、网络接入设备、总线等。
所称处理器10可以是中央处理单元(Central Processing Unit,CPU),还可以是其他通用处理器、数字信号处理器(Digital Signal Processor,DSP)、专用集成电路(Application Specific Integrated Circuit,ASIC)、现成可编程门阵列(Field-Programmable Gate Array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等,所述处理器10是所述终端1的控制中心,利用各种接口和线路连接整个终端的各个部分。
所述存储器20可用于存储所述计算机程序和/或模块,所述处理器10通过运行或执行存储在所述存储器20内的计算机程序和/或模块,以及调用存储在存储器20内的数据,实现所述终端1的各种功能。所述存储器20可主要包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需的应用程序(比如声音播放功能、图像播放功能等)等;存储数据区可存储根据手机的使用所创建的数据(比如音频数据、电话本等)等。此外,存储器20可以包括高速随机存取存储器,还可以包括计算机存储器,例如硬盘、内存、插接式硬盘,智能存储卡(Smart Media Card,SMC),安全数字(Secure Digital,SD)卡,闪存卡(Flash Card)、至少一个磁盘存储器件、闪存器件、或其他易失性固态存储器件。
所述显示器30用以进行风险提示,通过图形文字等的显示向用户传达提示信息。
所述终端1还可包括如图3所示的信息输出控制装置100,所述信息输出控制装置100可以存储于所述存储器20中。
示例性的,所述计算机程序可以被分割成一个或多个模块,所述一个或者多个模块被存储在所述存储器20中,并由所述处理器10执行,以完成本发明。所述一个或多个模块可以是能够完成特定功能的一系列计算机程序指令段,该指令段用于描述所述计算机程序在所述终端1中的执行过程。例如,所述计算机程序可以被分割成如图3所示的信息输出控制装置100,包括获取模块11、查询模块12、计算模块13及显示模块14,各模块具体功能如下:
获取模块11,用于在接收到开启目标程序的指令时,获取与所述目标程序对应的程序标识符。
查询模块12,可用于利用所述程序标识符在运行风险数据库中查询与所述程序标识符关联的风险信息。
计算模块13,可用于将查询到的所述风险信息输入至预设计算模型以得到所述目标程序的风险系数。
显示模块14,可用于根据所述风险系数确定对应的提示方式并在所述终端上进行风险提示。
本发明所述终端1集成的模块如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明实现上述实施例方法中的全部或部分流程,也可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于一计算机可读存储介质中,该计算机程序在被处理器执行时,可实现上述各个方法实施例的步骤。其中,所述计算机程序包括计算机程序代码,所述计算机程序代码可以为源代码形式、对象代码形式、可执行文件或某些中间形式等。所述计算机可读介质可以包括:能够携带所述计算机程序代码的任何实体或装置、记录介质、U盘、移动硬盘、磁碟、光盘、计算机存储器、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、电载波信号、电信信号以及软件分发介质等。需要说明的是,所述计算机可读介质包含的内容可以根据司法管辖区内立法和专利实践的要求进行适当的增减,例如在某些司法管辖区,根据立法和专利实践,计算机可读介质不包括电载波信号和电信信号。
对于本领域技术人员而言,显然本发明不限于上述示范性实施例的细节,而且在不背离本发明的精神或基本特征的情况下,能够以其他的具体形式实现本发明。因此,无论从哪一点来看,均应将实施例看作是示范性的,而且是非限制性的,本发明的范围由所附权利要求而不是上述说明限定,因此旨在将落在权利要求的等同要件的含义和范围内的所有变化涵括在本发明内。不应将权利要求中的任何附图标记视为限制所涉及的权利要求。此外,显然“包括”一词不排除其他单元或步骤,单数不排除复数。系统、装置或终端装置权利要求中陈述的多个单元、模块或装置也可以由同一个单元、模块或装置通过软件或者硬件来实现。第一,第二等词语用来表示名称,而并不表示任何特定的顺序。
以上实施方式仅用以说明本发明的技术方案而非限制,尽管参照以上较佳实施方式对本发明进行了详细说明,本领域的普通技术人员应当理解,可以对本发明的技术方案进行修改或等同替换都不应脱离本发明技术方案的精神和范围。
Claims (10)
1.一种信息输出控制方法,应用于终端,其特征在于,所述方法包括:
在接收到开启目标程序的指令时,获取与所述目标程序对应的程序标识符;
利用所述程序标识符在运行风险数据库中查询与所述程序标识符关联的风险信息;
将查询到的所述风险信息输入至预设计算模型以得到所述目标程序的风险系数;
根据所述风险系数确定对应的提示方式并在所述终端上进行风险提示。
2.如权利要求1所述的信息输出控制方法,其特征在于,在所述在接收到开启目标程序的指令之前,构建所述运行风险数据库包括:
抓取应用程序的内存快照;
对所述内存快照进行分析以得到所述应用程序的内存信息;
根据所述内存信息判断所述应用程序是否存在内存泄漏;
若所述应用程序存在内存泄漏,则获取所述应用程序在出现内存泄漏时的对象引用关系及所述应用程序的内存释放情况信息;
将所述对象引用关系及所述内存释放情况信息作为所述程序标识符关联的风险信息记录在所述运行风险数据库中。
3.如权利要求2所述的信息输出控制方法,其特征在于,在所述抓取所述应用程序的内存快照之后,所述方法还包括:
对所述内存快照进行分析以得到所述应用程序当前所创建的对象;
若所述对象中包括位图,则判断所述位图所占用的内存空间是否大于或等于预设内存空间;及判断在显示界面中位图尺寸与预分配尺寸是否一致;
若所述位图所占用的内存空间大于或等于所述预设内存空间且所述位图在所述显示界面中显示的尺寸与所述预分配的在所述显示界面中所显示的尺寸大小不匹配,则输出位图异常信息;
将所述位图异常信息作为所述程序标识符关联的风险信息记录在所述运行风险数据库中。
4.如权利要求3所述的信息输出控制方法,其特征在于,所述判断所述位图所占用的内存空间是否大于或等于预设内存空间包括:
获取所述位图的位图文件头信息;
提取所述位图文件头信息中的位图字节信息以得到所述位图所占用的内存空间;
比较所述位图所占用的内存空间与所述预设内存空间的大小。
5.如权利要求3所述的信息输出控制方法,其特征在于,所述判断在显示界面中所述位图尺寸与预分配尺寸是否一致包括:
获取所述位图的位图信息头;
提取所述位图信息头中的位图尺寸信息以得到所述位图尺寸;
比较所述位图尺寸与所述预分配尺寸的大小。
6.如权利要求2所述的信息输出控制方法,其特征在于,所述根据所述内存信息判断所述应用程序是否存在内存泄漏包括:
获取所述应用程序在出现内存泄漏时的hprof文件,其中,所述hprof文件至少包括所述内存信息;
对所述hprof文件进行分析得到持有各个类的外部对象;
判断持有各个类的外部对象是否能够被释放;
若不能被释放,则所述根据所述内存信息判断所述目标程序是否存在内存泄漏的判断结果为是。
7.如权利要求1-6任一项所述的信息输出控制方法,其特征在于,所述风险提示信息包括所述目标程序运行异常的风险系数或依据所述风险系数划分的所述目标程序运行的稳定性评级。
8.如权利要求7所述的信息输出控制方法,其特征在于,
所述根据所述风险系数确定对应的提示方式并在所述终端上进行风险提示包括:
根据所述风险系数确定的弹窗显示方式并在所述终端上进行风险提示;或,
根据所述风险系数确定的通知栏显示方式并在所述终端上进行风险提示。
9.一种信息输出控制装置,应用于终端,其特征在于,所述装置包括:
获取模块,用于在接收到开启目标程序的指令时,获取与所述目标程序对应的程序标识符;
查询模块,用于利用所述程序标识符在运行风险数据库中查询与所述程序标识符关联的风险信息;
计算模块,用于将查询到的所述风险信息输入至预设计算模型以得到所述目标程序的风险系数;
显示模块,用于根据所述风险系数确定对应的提示方式并在所述终端上根据所述风险系数确定的提示方式进行风险提示。
10.一种计算机可读存储介质,其上存储有计算机程序或指令,其特征在于,所述计算机程序或指令被处理器执行时实现如权利要求1-8中任一项所述的信息输出控制方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810937229.6A CN109240916B (zh) | 2018-08-16 | 2018-08-16 | 信息输出控制方法、装置及计算机可读存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810937229.6A CN109240916B (zh) | 2018-08-16 | 2018-08-16 | 信息输出控制方法、装置及计算机可读存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN109240916A true CN109240916A (zh) | 2019-01-18 |
CN109240916B CN109240916B (zh) | 2023-04-07 |
Family
ID=65071623
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201810937229.6A Active CN109240916B (zh) | 2018-08-16 | 2018-08-16 | 信息输出控制方法、装置及计算机可读存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN109240916B (zh) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110633112A (zh) * | 2019-08-30 | 2019-12-31 | 北京小米移动软件有限公司 | 信息处理方法及装置、设备、存储介质 |
CN111596919A (zh) * | 2020-05-27 | 2020-08-28 | 北京字节跳动网络技术有限公司 | 图文绘制结果的展示方法、装置、计算机设备及存储介质 |
CN112613763A (zh) * | 2020-12-25 | 2021-04-06 | 北京知因智慧科技有限公司 | 数据传导方法及装置 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103745156A (zh) * | 2014-01-07 | 2014-04-23 | 北京奇虎科技有限公司 | 一种在搜索引擎中提示风险信息的方法和装置 |
WO2015185015A1 (en) * | 2014-06-05 | 2015-12-10 | Tencent Technology (Shenzhen) Company Limited | Method and apparatus for monitoring security of terminal system |
CN107220546A (zh) * | 2017-06-27 | 2017-09-29 | 广东欧珀移动通信有限公司 | 应用运行方法、装置及终端设备 |
CN107957941A (zh) * | 2016-10-17 | 2018-04-24 | 腾讯科技(深圳)有限公司 | 移动终端内存泄漏处理方法和装置 |
CN108023740A (zh) * | 2016-10-31 | 2018-05-11 | 腾讯科技(深圳)有限公司 | 监控中异常信息的风险提示方法和装置 |
-
2018
- 2018-08-16 CN CN201810937229.6A patent/CN109240916B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103745156A (zh) * | 2014-01-07 | 2014-04-23 | 北京奇虎科技有限公司 | 一种在搜索引擎中提示风险信息的方法和装置 |
WO2015185015A1 (en) * | 2014-06-05 | 2015-12-10 | Tencent Technology (Shenzhen) Company Limited | Method and apparatus for monitoring security of terminal system |
CN107957941A (zh) * | 2016-10-17 | 2018-04-24 | 腾讯科技(深圳)有限公司 | 移动终端内存泄漏处理方法和装置 |
CN108023740A (zh) * | 2016-10-31 | 2018-05-11 | 腾讯科技(深圳)有限公司 | 监控中异常信息的风险提示方法和装置 |
CN107220546A (zh) * | 2017-06-27 | 2017-09-29 | 广东欧珀移动通信有限公司 | 应用运行方法、装置及终端设备 |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110633112A (zh) * | 2019-08-30 | 2019-12-31 | 北京小米移动软件有限公司 | 信息处理方法及装置、设备、存储介质 |
US11675895B2 (en) | 2019-08-30 | 2023-06-13 | Beijing Xiaomi Mobile Software Co., Ltd. | Method and device for processing information, equipment, and storage medium |
CN111596919A (zh) * | 2020-05-27 | 2020-08-28 | 北京字节跳动网络技术有限公司 | 图文绘制结果的展示方法、装置、计算机设备及存储介质 |
CN111596919B (zh) * | 2020-05-27 | 2023-10-20 | 北京字节跳动网络技术有限公司 | 图文绘制结果的展示方法、装置、计算机设备及存储介质 |
CN112613763A (zh) * | 2020-12-25 | 2021-04-06 | 北京知因智慧科技有限公司 | 数据传导方法及装置 |
CN112613763B (zh) * | 2020-12-25 | 2024-04-16 | 北京知因智慧科技有限公司 | 数据传导方法及装置 |
Also Published As
Publication number | Publication date |
---|---|
CN109240916B (zh) | 2023-04-07 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11487539B2 (en) | Systems and methods for automating and monitoring software development operations | |
CN109189379A (zh) | 代码生成方法和装置 | |
CN111258990B (zh) | 索引库数据迁移方法、装置、设备及存储介质 | |
CN111124917A (zh) | 公共测试用例的管控方法、装置、设备及存储介质 | |
CN109240916A (zh) | 信息输出控制方法、装置及计算机可读存储介质 | |
CN110879808B (zh) | 一种信息处理方法和装置 | |
CN111383100A (zh) | 基于风险模型的全生命周期管控方法和装置 | |
CN108958959A (zh) | 检测hive数据表的方法和装置 | |
US12032477B2 (en) | Method and apparatus for generating and applying deep learning model based on deep learning framework | |
CN113448869B (zh) | 测试用例生成的方法、装置、电子设备及计算机可读介质 | |
CN116483707A (zh) | 测试方法、装置、设备、存储介质及程序产品 | |
CN110457318A (zh) | 区块链中数据字段的更新方法、装置、介质、电子设备 | |
CN115422202A (zh) | 业务模型的生成方法、业务数据查询方法、装置及设备 | |
CN114356781A (zh) | 软件功能测试方法和装置 | |
CN115550259B (zh) | 基于白名单的流量分配方法及相关设备 | |
CN115309612B (zh) | 一种监控数据的方法和装置 | |
CN109032660A (zh) | 一种VersionCode的生成方法、装置、电子设备及存储介质 | |
CN115907830B (zh) | 基于指标预警的策略执行方法、装置、设备及可读介质 | |
CN108563759A (zh) | 清理登陆用户的方法、装置存储介质及电子设备 | |
CN109710293B (zh) | 文件的处理方法、装置、电子设备及存储介质 | |
CN108509455A (zh) | 数据表处理方法和装置 | |
CN117034882A (zh) | 处理组合报表的方法、装置、服务器及机器可读存储介质 | |
CN116258122A (zh) | 主数据的智能编码方法、装置、存储介质和电子设备 | |
CN115794912A (zh) | 用于搜索引擎的预处理方法和装置、电子设备 | |
CN114911877A (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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |