CN110196795A - 检测移动终端应用运行状态的方法及相关装置 - Google Patents

检测移动终端应用运行状态的方法及相关装置 Download PDF

Info

Publication number
CN110196795A
CN110196795A CN201810646439.XA CN201810646439A CN110196795A CN 110196795 A CN110196795 A CN 110196795A CN 201810646439 A CN201810646439 A CN 201810646439A CN 110196795 A CN110196795 A CN 110196795A
Authority
CN
China
Prior art keywords
simulator
detection
mobile terminal
information
detection parameters
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
Application number
CN201810646439.XA
Other languages
English (en)
Other versions
CN110196795B (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.)
Tencent Technology Shenzhen Co Ltd
Original Assignee
Tencent 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 Tencent Technology Shenzhen Co Ltd filed Critical Tencent Technology Shenzhen Co Ltd
Priority to CN201810646439.XA priority Critical patent/CN110196795B/zh
Publication of CN110196795A publication Critical patent/CN110196795A/zh
Application granted granted Critical
Publication of CN110196795B publication Critical patent/CN110196795B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/34Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment
    • G06F11/3447Performance evaluation by modeling
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/34Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment
    • G06F11/3457Performance evaluation by simulation

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Quality & Reliability (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Hardware Design (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Bioinformatics & Cheminformatics (AREA)
  • Bioinformatics & Computational Biology (AREA)
  • Evolutionary Biology (AREA)
  • Debugging And Monitoring (AREA)
  • Telephone Function (AREA)
  • Mobile Radio Communication Systems (AREA)

Abstract

本申请实施例公开了检测移动终端应用运行状态的方法及相关装置,属于机器学习技术领域。该方法中:通过机器学习方法得当模拟器检测模型,该模型根据检测参数进行检测。该检测参数包括版本信息,模拟器可执行文件信息和缓存架构信息。其中,模拟器的可执行文件信息和缓存架构信息由于具有不会被篡改的特性,该信息具有很高的可信度。版本信息仅是多个检测参数中的一个,其对检测结果并不具有直接的决定性的影响。此外,模拟器检测模型通过训练其检测结果具有很高的准确性,故此本申请实施例能够通过多方面的保证来提高检测应用是否运行在模拟器内的准确性。

Description

检测移动终端应用运行状态的方法及相关装置
技术领域
本申请实施例涉及机器学习技术领域,特别涉及检测移动终端应用运行状态的方法及相关装置。
背景技术
移动终端的模拟器使得移动终端的运行系统能够在PC(personal omputer个人计算机)上运行。这样,用户可以通过PC为移动终端下载、安装和删除应用。
为了信息安全,有些移动终端应用不适合运行在模拟器内。故此,衍生出了检测移动终端应用是否运行在模拟器内的技术方案。
现有技术中检测的方案可概括为以下几种:
1、获取移动终端应用的运行系统的版本信息,若该版本信息为指定的表示模拟器的版本信息,则确定移动终端应用运行在模拟器内;否则,确定未运行在模拟器内。
2、获取移动终端应用的运行系统中的IP地址,若该地址为10.0.2.15,则确定移动终端应用运行在模拟器内。否则,确定未运行在模拟器内。
3、读取移动终端应用的运行系统中的唯一标识码,若该唯一标识码为“0000000000000”,则确定移动终端应用运行在模拟器内。否则,确定未运行在模拟器内。
然而,运行系统中的版本信息、IP地址、唯一标识码都容易被篡改,而现有技术过分依赖获取的信息(如版本信息)给出检测结果。被篡改后,获取的信息本身就不可信,将会直接导致检测结果出错。所以,现有技术的检测结果的准确性低。
发明内容
为了解决现有技术中检测结果准确性低的问题,本申请实施例提供了检测移动终端应用运行状态的方法及相关装置。所述技术方案如下:
根据本申请实施例的第一方面,提供了一种检测移动终端应用运行状态的方法,包括:
获取待检测移动终端应用的运行系统的检测参数,其中,所述检测参数包括版本信息、可执行文件信息和缓存架构信息;
调用训练好的模拟器检测模型对所述收集到的检测参数进行检测处理,以确定所述待检测移动终端应用是否运行在模拟器内;包括以下实现步骤:
分析所述待检测移动终端应用的运行系统的版本信息是否包含有特定的关键字;
检查所述可执行文件信息是否有对应的模拟器可执行文件;
读取所述待检测移动终端应用的运行系统的缓存架构信息,检测是否有指定的缓存架构信息;
输出所述模拟器检测模型运行所述检测参数所得到的概率值,若所述概率值大于预设概率值,则将所述待检测移动终端应用定义为运行在模拟器内。
根据本申请实施例的第二方面,提供了检测移动终端应用运行状态的装置,包括:
检测参数获取模块,用于获取待检测移动终端应用的运行系统的检测参数,其中,所述检测参数包括版本信息、可执行文件信息和缓存架构信息;
检测模块,用于调用训练好的模拟器检测模型对所述收集到的检测参数进行检测处理,以确定所述待检测移动终端应用是否运行在模拟器内;包括以下实现步骤:
分析所述待检测移动终端应用的运行系统的版本信息是否包含有特定的关键字;
检查所述可执行文件信息是否有对应的模拟器可执行文件;
读取所述待检测移动终端应用的运行系统的缓存架构信息,检测是否有指定的缓存架构信息;
输出模块,用于输出所述模拟器检测模型运行所述检测参数所得到的概率值,若所述概率值大于预设概率值,则将所述待检测移动终端应用定义为运行在模拟器内。
本申请另一实施例还提供了一种计算设备,其包括存储器和处理器,其中,所述存储器用于存储程序指令,所述处理器用于调用所述存储器中存储的程序指令,按照获得的程序指令执行本申请实施例中的任一检测移动终端应用运行状态的方法。
本申请另一实施例还提供了一种计算机存储介质,其中,所述计算机存储介质存储有计算机可执行指令,所述计算机可执行指令用于使计算机执行本申请实施例中的任一检测移动终端应用运行状态的方法。
本申请实施例中,用于检测参数包括版本信息,模拟器可执行文件信息和缓存架构信息。模拟器的可执行文件信息和缓存架构信息由于具有不会被篡改的特性,该信息具有很高的可信度。而版本信息仅是多个检测参数中的一个,其对检测结果并不具有直接的决定性的影响。此外,模拟器检测模型通过训练其检测结果具有很高的准确性,故此本申请实施例能够提高检测的准确性。
附图说明
为了更清楚地说明本申请实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1a示出了本申请一个实施例提供的一种缓存架构的架构图;
图1b示出了本申请另一个实施例提供的一种缓存架构的架构图;
图2示出了本申请一个实施例提供的检测移动终端应用运行状态的方法的应用场景示意图;
图3示出了本申请一个实施例提供的检测移动终端应用运行状态的方法流程图;
图4示出了本申请一个实施例提供的训练得到模拟器检测模型的流程图;
图5a示出了本申请一个实施例提供的训练模拟器检测模型的示意图;
图5b示出了本申请一个实施例提供的利用模拟器检测模型进行检测的示意图;
图6示出了本申请一个实施例提供的检测移动终端应用运行状态的装置的示意图;
图7示出了本申请一个实施例提供的一种计算设备的结构示意图;
图8示出了本申请一个实施例提供的终端的结构示意图。
具体实施方式
为使本申请的目的、技术方案和优点更加清楚,下面将结合附图对本申请实施方式作进一步地详细描述。
在本文中提及的“多个”是指两个或两个以上。“和/或”,描述关联对象的关联关系,表示可以存在三种关系,例如,A和/或B,可以表示:单独存在A,同时存在A和B,单独存在B这三种情况。字符“/”一般表示前后关联对象是一种“或”的关系。
本申请实施例中,涉及名词如下:
应用,安装在移动终端上的应用程序,例如手机终端的即时通信工具、手游、支付应用程序等。
移动终端模拟器,一种能够运行于PC电脑等非移动终端上,用以模拟移动终端系统运行环境,使得原本运行于移动终端的操作系统上的应用程序能够在所述PC上进行运行、管理等操作的软件或插件类程序装置。例如,通过所述移动终端模拟器,手机和PC连接后,可以通过所述PC实现对手机内应用的安装、下载、删除等管理操作。
模拟器的可执行文件,运行模拟器所需的模拟器特有的可执行文件。
近距离通信器件,支持近距离通信所需的器件,例如蓝牙、红外发射器等。
传感器,是一种检测装置,能感受到被测量的信息,并能将感受到的信息,按一定规律变换成为电信号或其他所需形式的信息输出,以满足信息的传输、处理、存储、显示、记录和控制等要求。例如温度传感器、湿度传感器、距离传感器等。
缓存架构,指运行系统中的中央处理器和内存之间的缓存架构。如图1a为ARM体系的缓存架构、图1b为X86体系的缓存架构。移动终端的CPU主要是ARM体系的,而PC端的主要是x86。如图1a和图1b所示,两种体系的CPU的cache方式存在微小差异。具体如图所示:在CPU和内存(Memory)之间,可以存在几级cache,图中这几级cache是L1和L2。cache的作用是加速,把指令缓存起来,就不用到低速的内存中去读取信息了。x86的cache都是连续的,但是ARM把L1cache分成了平行的2块,也就是I-Cache和D-Cache。ARM这种将程序指令储存和数据储存分开的存储器结构叫哈佛架构(Harvard architecture),而x86这种把程序指令存储器和数据存储器合并在一起的叫冯·诺伊曼结构(von Neumann architecture)。
接下来对本申请的基本原理做简要说明:为了能够更加准确的检测移动终端应用的运行环境,本申请实施例中基于多个检测参数进行检测、其中包括应用的运行系统的版本信息,模拟器的可执行文件信息和缓存架构信息。其中,模拟器的可执行文件信息和缓存架构信息由于具有不会被篡改的特性,从而能够提高用于检测应用是否在模拟器内运行的检测信息的可信度,进而提高检测的准确性。此外,采用模拟器检测模型实现基于多个指标的检测。虽然本申请实施例中采用的版本信息也有可能被篡改,但由于要综合多个参数来确定是否运行在模拟器内,所以版本信息对检测结果并不具有直接的决定性的影响。进一步的,在训练模拟器检测模型时,其检测结果的准确性较高时,才算训练完成,所以通过模拟器检测模型输出的检测结果本身就具有很高的准确性。
综上,由于获取的信息的可信度较高、综合了多种信息进行检测,并且模拟器检测模型本身给出的检测结果也较高,所以本申请实施例提供的技术方案能够从多方面来保证检测结果的准确性,相比现有技术能够提高检测是否运行在模拟器内的准确性。
下面对本申请实施例能够适用的应用场景做一些简单介绍,需要说明的是,该应用场景仅用于说明本申请实施例而非限定。具体实施时,可以根据实际需要应用本申请实施例提供的技术方案。
参考图2,其为本申请实施例提供的应用场景示意图之一,该场景例如可以包括移动终端设备11和PC机12。其中,终端设备11中可安装有各种应用,如用于搜索和观看视频的客户端、搜索和购买商品的客户端等等。在本申请中,检测移动终端应用运行状态的方法提供的功能可以作为应用的小程序配置在应用内,由各个应用作为执行主体进行检测;也可以作为一个单独的检测应用安装在移动终端内,专门对移动终端的应用的运行系统进行检测。
以作为小程序存在为例,当涉及用户敏感信息的应用启动时可以对自身的运行环境进行检测,当确定运行在模拟器内时,可以强制退出,达到保护用户敏感信息的目的。
其中,移动终端设备11和PC机12可通过通信网络进行通信连接,该网络可以为局域网、广域网等,当然也可以通过线连接。终端设备11可以为手机、平板电脑等。
本申请中,检测的步骤主要包括获取检测参数、检测和输出检测结果三部分。其中,检测参数包括运行系统的包括版本信息、可执行文件信息和缓存架构信息。具体的,参考图3,为本申请实施例提供的检测移动终端应用运行状态的方法的流程图,包括:
步骤301:获取待检测移动终端应用的运行系统的检测参数,其中,检测参数包括版本信息、可执行文件信息和缓存架构信息。
步骤302:调用训练好的模拟器检测模型对收集到的检测参数进行检测处理,以确定待检测移动终端应用是否运行在模拟器内;包括以下实现步骤:分析待检测移动终端应用的运行系统的版本信息是否包含有特定的关键字;检查可执行文件信息是否有对应的模拟器可执行文件;读取待检测移动终端应用的运行系统的缓存架构信息,检测是否有指定的缓存架构信息。
其中,分析待检测移动终端应用的运行系统的版本信息是否包含有特定的关键字;检查可执行文件信息是否有对应的模拟器可执行文件;读取待检测移动终端应用的运行系统的缓存架构信息,检测是否有指定的缓存架构信息这三个步骤的执行先后顺序没有限制。
步骤303:输出模拟器检测模型运行检测参数所得到的概率值,若概率值大于预设概率值,则将待检测移动终端应用定义为运行在模拟器内。
具体实施时,预设概率值可以根据训练模拟器检测模型时的经验值进行设定。
为便于进一步理解,下面对步骤302展开论述。其中:
1)、分析待检测移动终端应用的运行系统的版本信息是否包含有特定的关键字:
模拟器代号用于标识模拟器的开发商,通常不会变更。故此,特定的关键字可以是多个已知模拟器的模拟器代号也可以是“unknown”字段,其中,各已知的模拟器代号列举如下:
init.svc.vbox86-setup:(vbox公司的标识);
init.svc.droid4x(droid4x公司的标识);
init.svc.qemud(qemud标识);
init.svc.su_kpbs_daemon(公司标识);
init.svc.noxd(夜神模拟器标识);
init.svc.ttVM_x86-setup(夜神模拟器标识);
init.svc.xxkmsg(夜神模拟器标识);
init.svc.microvirtd(木木模拟器标识);
2)检查可执行文件信息是否有对应的模拟器可执行文件:
模拟器的可执行文件无法被篡改,所以可以用来检测移动终端应用是否运行在模拟器内。具体实施时,可以先收集多个已知模拟器的可执行文件存放路径,然后在检测这多个路径下是否有对应的模拟器可执行文件。
其中,已知模拟器开发公司定制的可执行文件路径下的可执行文件如下所示,其中可执行文件名中包括各已知公司的名称,这里不做详述。
/system/lib/libdroid4x.so;
/system/lib/libc_malloc_debug_qemu.so;
/system/lib/libc_malloc_debug_qemu.so-arm;
/system/bin/qemu_props;
/system/bin/androVM-prop;
/system/bin/microvirt-prop;
/system/bin/droid4x-prop;
/system/bin/windroyed;
/system/bin/microvirtd;
/system/bin/nox-prop;
/system/bin/ttVM-prop;
3)、读取待检测移动终端应用的运行系统的缓存架构信息,检测是否有指定的缓存架构信息:
如前所述,移动终端采用的ARM体系的缓存架构中,指令和数据是分开存储在两个cache中的,当其中一个cache中的数据更新后,另一个cache中的数据不会更新,所以导致两个cache中的数据不同步。例如修改了数据cache中的数据后,对应指令cache中的数据没有同步更新。
而模拟器采用的X86体现的缓存架构中,指令和数据在同一cache中,不会存在数据不同步的问题。所以,根据这样的差别可以采集并识别缓存结构信息。
具体实施时,可以先生成一组循环执行指令并发送给运行系统;在运行系统第二次执行循环执行指令前,改变循环执行指令中的部分指令,得到连续两次循环执行的执行结果。若前述指定的缓存架构信息可以定义为表示X86的缓存架构信息。则获得两次执行结果后比较两次执行结果是否一致,若两次执行结果一致,则确定检测到指定的缓存架构信息;否则,未检测到指定的缓存架构信息。
此外,运行系统的版本号也能够翻译缓存架构信息,所以具体实施时,还可以根据运行系统的版本号和缓存架构信息的对应关系,确定运行系统的缓存架构信息。
需要说明的是,还可以根据现有技术中的其它方法识别缓存架构信息,均适用于本申请实施例。
此外,为了能够结合更多信息对应用运行的系统进行更加全面的检测,检测时所采用的检测参数还可以包括以下信息中的至少一种:近距离通信器件的库文件、外接设备的接口目录、传感器的目录、IP地址、唯一标识码和指定软件信息等等。
由于近距离通信器件、外接设备和传感器具有硬件模拟器不能模拟的特性,所以对应的近距离通信器件的库文件、外接设备的接口目录、传感器的目录的可信度很高,用于检测时能够提高最终检测结果的准确性。此外,可将具有这一特性的信息统称为移动终端特有的且不存在于模拟器内的信息。具体实施时,根据这一特性按需添加其他的移动终端特有的且不存在于模拟器内的信息,均适用于本申请实施例。
下面,为便于进一步理解,对以上各信息的获取进行举例说明:
1)、近距离通信器件的库文件。
其中,近距离通信器件例如蓝牙、红外线发送接收器等等。
大部分模拟器在定制ROM(Read Only Memory image,刷机所用的镜像)时都会移除掉近距离通信器件的库文件。所以获取检测参数可包括:从待检测移动终端应用的运行系统的库文件路径下读取近距离通信器件的库文件。
对应的,调用训练好的模拟器检测模型对收集到的检测参数进行检测处理,以确定待检测移动终端应用是否运行在模拟器内的步骤对应包括:检测库文件路径下是否存在对应的近距离通信器件库的文件。
其中,若读取到近距离通信器件的库文件,则确定获取到表示待检测移动终端应用运行在模拟器内的近距离通信器件信息;否则,确定获取到表示待检测移动终端应用未运行在模拟器内的近距离通信器件信息。
以蓝牙为例,可通过检测系统库文件中是否存在对应的蓝牙库文件来确定是否存在表示待检测移动终端应用运行在模拟器内的蓝牙信息。具体实施时,根据现有的常用蓝牙设备,只需检查以下3种文件的任意一个文件即可。具体执行时可以在接收到读取近距离通信器件信息的读取指令后,读取以下文件:
/system/lib/libbluetooth_mtk.so(so库下蓝牙mtk文件);
/system/lib/libbluetooth_jni.so(so库下蓝牙jni文件);
/system/lib/libbluetoothd.so(so库下蓝牙文件);
若检测到其中任何一种库文件则确定存在表示待检测移动终端应用运行在模拟器内的蓝牙信息。
2)、外接设备的接口目录;
可以从运行系统的目录中读取外接设备的接口目录。则调用训练好的模拟器检测模型对收集到的检测参数进行检测处理,以确定待检测移动终端应用是否运行在模拟器内的步骤对应包括:读取外接设备的接口目录,检查运行系统是否有对应的外接设备的接口目录。
有外接设备的接口目录,则确定检查到表示待检测移动终端应用运行在模拟器内的外接设备信息。
举例说明,外接设备一般通过USB接口接入移动终端,而模拟器不存在USB目录。所以可以检测是否存在外接设备的接口目录,来确定是否获取到表示待检测移动终端应用运行在模拟器内的外接设备信息。对于USB接口,可以通过检查是否存在/sys/class/android_usb(安卓的USB文件)来确定是否存在USB目录,若存在则确定获取到表示待检测移动终端应用运行在模拟器中的信息。
3)、传感器的目录。
传感器例如是温度传感器、湿度传感器、距离传感器、重力传感器等等。
移动终端中可以内置传感器,而模拟器内却不会,可以从运行系统的目录中读取传感器的目录。对应的,调用训练好的模拟器检测模型对收集到的检测参数进行检测处理,以确定待检测移动终端应用是否运行在模拟器内的步骤对应包括:读取运行系统的目录,检查运行系统是否有对应的传感器的目录。
有则确定检查到表示待检测移动终端应用运行在模拟器内的传感器信息;否则,确定检查到表示待检测移动终端应用未运行在模拟器内的传感器信息。
举例说明,以温度传感器,可以通过检测以下文件是否存在来判定是否运行在模拟器中,若存在则确定获取到表示待检测移动终端应用运行在模拟器中的传感器信息,否则,确定获取到表示待检测移动终端应用未运行在模拟器中的传感器信息:
/sys/class/thermal/thermal_zoneX/temp;
/sys/class/thermal/temp:xx;
4)、IP地址:
具体实施时,可以获取运行系统的配置信息,在配置信息中读取运行系统的IP地址。则对应的,调用训练好的模拟器检测模型对收集到的检测参数进行检测处理,以确定待检测移动终端应用是否运行在模拟器内的步骤对应包括:检测运行系统的IP地址是否为表示待检测移动终端应用运行在模拟器内的IP地址。
若检查到表示运行在模拟器内的IP地址,则确定获取到表示待检测移动终端应用运行在模拟器内的IP地址;否则,确定获取到表示待检测移动终端应用未运行在模拟器内的IP地址。
其中,表示运行在模拟器内的IP地址例如可以是10.0.2.15。
5)、唯一识别码:
具体实施时,可以获取运行系统中的移动终端的唯一识别码。对应的,调用训练好的模拟器检测模型对收集到的检测参数进行检测处理,以确定待检测移动终端应用是否运行在模拟器内的步骤对应包括:检测获取的唯一识别码是否为表示待检测移动终端应用运行在模拟器内的唯一识别码。
其中,表示运行在模拟器内的唯一识别码例如可以为0000000000000。
6)、指定软件信息:
指定软件可包括模拟器的应用市场和模拟器的主题软件中的至少一种。
具体实施时,可以读取运行系统中安装的软件的软件信息。对应的,调用训练好的模拟器检测模型对收集到的检测参数进行检测处理,以确定待检测移动终端应用是否运行在模拟器内的步骤对应包括:检测软件信息中是否含有指定软件的信息。
若含有指定软件的信息,则确定检测到表示待检测移动终端应用运行在模拟器内的指定软件信息;否则,确定检测到表示待检测移动终端应用未运行在模拟器内的指定软件信息。
运行系统中有些信息存在容易被篡改的风险,此外有些信息也可能读取不到。所以,现有技术中单单根据一种信息很难准确的确定是否真的运行在模拟器内。而本申请实施例中,模拟器检测模型是根据机器学习方法,对大量的训练样本进行训练得到的。可以获取携带有标签的训练样本,之后根据获取的训练样本,对模拟器检测模型进行训练,得到训练好的模拟器检测模型。
具体的,可以先编写程序采集检测参数。可以采集待检测移动终端应用分别在移动终端和模拟器上运行的检测参数,其中检测参数包括运行系统的版本信息、可执行文件信息和缓存架构信息;对采集到的检测参数的采集来源进行标签化处理;将采集到的检测参数和标签化处理的标签输入机器学习框架,得到模拟器检测模型。
训练时,获取标签化处理后的检测参数作为训练样本,即可以将移动终端应用运行在模拟器时的样本作为正例,移动终端应用运行在移动终端中的样本作为负例。然后根据训练样本,采用预先配置的学习参数对机器学习框架进行训练,得到训练好的模拟器检测模型。
如图4所示为对训练过程和检测过程进行说明的示意图:
步骤A1:获取训练样本。
其中,一个训练样本由检测参数中的各信息构成。如前,可以由运行系统的版本信息、可执行文件信息、缓存架构信息、外接设备的接口目录、传感器的目录和近距离通信器件的库文件这六种信息构成一个训练样本。
在训练模型时,需要人工设置一些训练参数,例如包括初始的权值、学习率和学习步长等,在设置好之后可以继续执行步骤A2来完成对模型的训练。具体的参数设置和训练方法,可以参见现有技术,本申请对此不作限定。
步骤A2:根据为待训练神经网络设置的权值、学习率和学习步长,将训练样本输入待训练神经网络中,得到各训练样本是否表示在模拟器中运行的判断结果。
步骤A3:根据判断结果,计算待训练神经网络的训练结果,判断训练结果是否达到目标训练结果,若否,则执行步骤A4,若是,则得到训练好的模拟器检测模型。
其中,训练结果包括以下中的至少一种:判断准确率、判断精确率和召回率;其中,对于训练样本,待训练神经网络对该样本的判断结果会有如下四种可能:
1)若该样本为正例、将其正确判断为正例时,则称其判断结果为真正,将其错误判断为负例,则称其判断结果为假负。
2)该样本为负例,将其正确判断为负例,则称其判断结果为真负,将其错误判断为正例,则称其判断结果为假正。
所以,准确率=(真正数量+真负数量)/(真正数量+假正数量+真负数量+假负数量);
精确率=真正数量/(真正数量+假正数量);
召回率=真正数量/(真正数量+假负数量);
具体实施时,可以根据检测的精度来确定对应的目标训练结果,例如要求判断准确率为99%。这样,得到的模拟器训练模型将能够以很高的准确率来进行检测。
步骤A4:根据自适应算法调整学习率和/或学习步长,并返回执行步骤A2。
其中,自适应算法可以根据现有技术选择,例如采用基于阿米霍步长准则的线性回溯搜索算法确定学习步长,根据回溯线性搜索和二次差值线性搜索算法确定学习率等。这里不做赘述。
当然,具体实施时,也可以根据训练结果,根据经验值人工调整学习率和/或学习步长。
假设,在训练阶段和检测阶段采用的信息均包括图4所示的各信息,则检测时执行以下步骤:
步骤B111:获取运行系统的版本信息。
步骤B112:获取运行系统的模拟器的可执行文件信息。
步骤B113:获取运行系统的缓存架构信息。
步骤B114:从待检测移动终端应用的运行系统的库文件路径下读取近距离通信器件的库文件。
步骤B115:从运行系统的目录中读取外接设备的接口目录。
步骤B116:从运行系统的目录中读取传感器的目录。
步骤B2:调用模拟器检测模型进行检测,包括:
分析待检测移动终端应用的运行系统的版本信息是否包含有特定的关键字;
检查可执行文件信息是否有对应的模拟器可执行文件;
读取待检测移动终端应用的运行系统的缓存架构信息,检测是否有指定的缓存架构信息;
检测库文件路径下是否存在对应的近距离通信器件库的文件;
读取外接设备的接口目录,检查运行系统是否有对应的外接设备的接口目录;
读取运行系统的目录,检查运行系统是否有对应的传感器的目录。
步骤B3:根据检测结果,得到移动终端应用运行在模拟器内的概率值。
步骤B4:判断得到的概率值是否大于指定概率值,若是,执行步骤B5,否则,执行步骤B6。
步骤B5:确定移动终端应用运行在模拟器内。
步骤B6:确定移动终端应用未运行在模拟器内。
如图5a所示为机器学习方法的训练过程示意图,图5b所示为训练好模拟器检测模型后检测阶段的示意图。其中,在图5a中多个检测条件即为前述的用于检测的检测参数例如前述的近距离通信器件信息、缓存架构信息等,该模型利用训练样本和初始设置好的权值W得到训练结果后和目标训练结果进行比较,然后该模型会自动计算损失,并根据内置的算法来更新W重新训练,如果结果不理想可以通过调整学习率和/或学习步长来继续训练直至结果收敛并理想为止。
图5b中,输入要检测的数据(即包括多个指定信息的待检测样本),该模型即会自动输出检测结果。
综上,通过多次训练,使得模拟器检测模型能够准确的判断出是否运行在模拟器内。即使用于检测的检测参数中的信息对应的是否运行在模拟器的结果之间有冲突,例如USB目录信息表示运行在模拟器内,但其他信息都标识未运行在模拟器内时,也能给出较为准确的检测结果。
基于相同的发明构思,本申请还提供一种检测移动终端应用运行状态的装置,如图6所示,为该装置的结构示意图,包括:
检测参数获取模块601,用于获取待检测移动终端应用的运行系统的检测参数,其中,检测参数包括版本信息、可执行文件信息和缓存架构信息;
检测模块602,用于调用训练好的模拟器检测模型对收集到的检测参数进行检测处理,以确定待检测移动终端应用是否运行在模拟器内;包括以下实现步骤:
分析待检测移动终端应用的运行系统的版本信息是否包含有特定的关键字;
检查可执行文件信息是否有对应的模拟器可执行文件;
读取待检测移动终端应用的运行系统的缓存架构信息,检测是否有指定的缓存架构信息;
输出模块603,用于输出模拟器检测模型运行检测参数所得到的概率值,若概率值大于预设概率值,则将待检测移动终端应用定义为运行在模拟器内。
进一步的,检测参数还包括近距离通信器件的库文件,检测参数获取模块用于:从待检测移动终端应用的运行系统的库文件路径下读取近距离通信器件的库文件;
检测模块用于检测库文件路径下是否存在对应的近距离通信器件库的文件。
进一步的,检测参数还包括外接设备的接口目录,检测参数获取模块还用于从运行系统的目录中读取外接设备的接口目录;
检测模块用于读取外接设备的接口目录,检查运行系统是否有对应的外接设备的接口目录。
进一步的,检测参数中还包括传感器的目录,检测参数获取模块还用于从运行系统的目录中读取传感器的目录;
检测模块用于读取运行系统的目录,检查运行系统是否有对应的传感器的目录。
进一步的,检测参数中还包括IP地址,检测参数获取模块还用于获取运行系统的配置信息;在配置信息中读取运行系统的IP地址在配置信息中读取运行系统的IP地址;
检测模块用于检测运行系统的IP地址是否为表示待检测移动终端应用运行在模拟器内的IP地址。
进一步的,检测参数中还包括唯一识别码,检测参数获取模块还用于获取运行系统中的移动终端的唯一识别码;
检测模块用于检测获取的唯一识别码是否为表示待检测移动终端应用运行在模拟器内的唯一识别码。
进一步的,检测参数中还包括指定软件信息,检测参数获取模块还用于读取运行系统中安装的软件的软件信息;
检测模块,用于读取运行系统中安装的软件的软件信息。
进一步的,该装置还包括:
采集模块,用于采集待检测移动终端应用分别在移动终端和模拟器上运行的检测参数,其中检测参数包括运行系统的版本信息、可执行文件信息和缓存架构信息;
标签化处理模块,用于对采集到的检测参数的采集来源进行标签化处理;
学习模块,用于将采集到的检测参数和标签化处理的标签输入机器学习框架,得到模拟器检测模型。
进一步的,学习模块用于获取标签化处理后的检测参数作为训练样本,其中,训练样本中包括正例和负例;正例为采集的检测参数表示在模拟器内运行的样本,负例表示采集的检测参数表示不在模拟器内运行的样本;根据训练样本,采用预先配置的学习参数对机器学习框架进行训练,得到训练好的模拟器检测模型。
接下来,本申请提供一种计算设备,可包括存储器和处理器,其中,存储器用于存储程序指令,处理器用于调用存储器中存储的程序指令,按照获得的程序指令执行本申请实施例中任一的检测移动终端应用运行状态的方法。请参考图7,其示出了本申请计算设备为的结构方框图。具体来讲:
计算设备700包括中央处理单元(CPU)701、包括随机存取存储器(RAM)702和只读存储器(ROM)703的系统存储器704,以及连接系统存储器704和中央处理单元701的系统总线705。所述计算设备700还包括帮助计算机内的各个器件之间传输信息的基本输入/输出系统(I/O系统)706,和用于存储操作系统713、应用程序714和其他程序模块715的大容量存储设备707。
所述基本输入/输出系统706包括有用于显示信息的显示器708和用于用户输入信息的诸如鼠标、键盘之类的输入设备709。其中所述显示器708和输入设备709都通过连接到系统总线705的输入输出控制器76连接到中央处理单元701。所述基本输入/输出系统706还可以包括输入输出控制器76以用于接收和处理来自键盘、鼠标、或电子触控笔等多个其他设备的输入。类似地,输入输出控制器76还提供输出到显示屏、打印机或其他类型的输出设备。
所述大容量存储设备707通过连接到系统总线705的大容量存储控制器(未示出)连接到中央处理单元701。所述大容量存储设备707及其相关联的计算机可读介质为计算设备700提供非易失性存储。也就是说,所述大容量存储设备707可以包括诸如硬盘或者CD-ROM驱动器之类的计算机可读介质(未示出)。
不失一般性,所述计算机可读介质可以包括计算机存储介质和通信介质。计算机存储介质包括以用于存储诸如计算机可读指令、数据结构、程序模块或其他数据等信息的任何方法或技术实现的易失性和非易失性、可移动和不可移动介质。计算机存储介质包括RAM、ROM、EPROM、EEPROM、闪存或其他固态存储其技术,CD-ROM、DVD或其他光学存储、磁带盒、磁带、磁盘存储或其他磁性存储设备。当然,本领域技术人员可知所述计算机存储介质不局限于上述几种。上述的系统存储器704和大容量存储设备707可以统称为存储器。
根据本申请的各种实施例,所述计算设备700还可以通过诸如因特网等网络连接到网络上的远程计算机运行。也即计算设备700可以通过连接在所述系统总线705上的网络接口单元711连接到网络712,或者说,也可以使用网络接口单元711来连接到其他类型的网络或远程计算机系统(未示出)。
所述存储器还包括一个或者一个以上的程序,所述一个或者一个以上程序存储于存储器中,所述一个或者一个以上程序包含用于进行本申请实施例提供的检测移动终端应用运行状态的方法的指令。
本领域普通技术人员可以理解上述实施例的通过模拟器运行移动终端应用的检测方法中的全部或部分步骤是可以通过程序来指令相关的硬件来完成,该程序可以存储于一计算机可读存储介质中,存储介质可以包括:只读存储器(ROM,Read Only Memory)、随机存取记忆体(RAM,Random Access Memory)、磁盘或光盘等。
请参考图8,其示出了本申请一个实施例提供的终端的结构示意图。该终端800为图2中的移动终端。具体来讲:
终端800可以包括RF(Radio Frequency,射频)电路810、包括有一个或一个以上计算机可读存储介质的存储器820、输入单元830、显示单元840、传感器850、音频电路860、近场通信模块870、包括有一个或者一个以上处理核心的处理器880、以及电源890等部件。本领域技术人员可以理解,图8中示出的终端结构并不构成对终端的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。其中:
RF电路810可用于收发信息或通话过程中,信号的接收和发送,特别地,将基站的下行信息接收后,交由一个或者一个以上处理器880处理。通常,RF电路810包括但不限于天线、至少一个放大器、调谐器、一个或多个振荡器、用户身份模块(SIM)卡、收发信机、耦合器、LNA(Low Noise Amplifier,低噪声放大器)、双工器等。此外,RF电路88还可以通过无线通信与网络和其他设备通信。所述无线通信可以使用任一通信标准或协议,包括但不限于GSM(Global System of Mobile communication,全球移动通讯系统)、GPRS(GeneralPacket Radio Service,通用分组无线服务)、CDMA(Code Division Multiple Access,码分多址)、WCDMA(Wideband Code Division Multiple Access,宽带码分多址)、LTE(LongTerm Evolution,长期演进)、电子邮件、SMS(Short Messaging Service,短消息服务)等。
存储器820可用于存储软件程序以及模块,处理器880通过运行存储在存储器820的软件程序以及模块,从而执行各种功能应用以及数据处理。存储器820可主要包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需的应用程序(比如声音播放功能、图像播放功能等)等;存储数据区可存储根据终端800的使用所创建的数据(比如音频数据、电话本等)等。此外,存储器820可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件、闪存器件、或其他易失性固态存储器件。相应地,存储器820还可以包括存储器控制器,以提供处理器880和输入单元830对存储器820的访问。
输入单元830可用于接收输入的数字或字符信息。
显示单元840可用于显示由用户输入的信息或提供给用户的信息以及终端800的各种图形用户接口,这些图形用户接口可以由图形、文本、图标、视频和其任意组合来构成。显示单元840可包括显示面板841,可选的,可以采用LCD(Liquid Crystal Display,液晶显示器)、OLED(Organic Light-Emitting Diode,有机发光二极管)等形式来配置显示面板841。
终端800还可包括至少一种传感器850,比如光传感器、运动传感器以及其他传感器。具体地,光传感器可包括环境光传感器及接近传感器,其中,环境光传感器可根据环境光线的明暗来调节显示面板841的亮度,接近传感器可在终端800移动到耳边时,关闭显示面板841和/或背光。作为运动传感器的一种,重力加速度传感器可检测各个方向上(一般为三轴)加速度的大小,静止时可检测出重力的大小及方向,可用于识别手机姿态的应用(比如横竖屏切换、相关游戏、磁力计姿态校准)、振动识别相关功能(比如计步器、敲击)等;至于终端800还可配置的陀螺仪、气压计、湿度计、温度计、红外线传感器等其他传感器,在此不再赘述。
音频电路860、扬声器861,传声器862可提供用户与终端800之间的音频接口。音频电路860可将接收到的音频数据转换后的电信号,传输到扬声器861,由扬声器861转换为声音信号输出;另一方面,传声器862将收集的声音信号转换为电信号,由音频电路860接收后转换为音频数据,再将音频数据输出处理器880处理后,经RF电路810以发送给比如另一电子设备,或者将音频数据输出至存储器820以便进一步处理。音频电路860还可能包括耳塞插孔,以提供外设耳机与终端800的通信。
终端800通过近场通信模块870与外部设备建立近场通信连接,并通过该近场通信连接进行数据交互。本实施例中,该近场通信模块870具体包括蓝牙模块和/或WiFi模块。
处理器880是终端800的控制中心,利用各种接口和线路连接整个手机的各个部分,通过运行或执行存储在存储器820内的软件程序和/或模块,以及调用存储在存储器820内的数据,执行终端800的各种功能和处理数据,从而对手机进行整体监控。可选的,处理器880可包括一个或多个处理核心;优选的,处理器880可集成应用处理器和调制解调处理器,其中,应用处理器主要处理操作系统、用户界面和应用程序等,调制解调处理器主要处理无线通信。可以理解的是,上述调制解调处理器也可以不集成到处理器880中。
终端800还包括给各个部件供电的电源890(比如电池),优选的,电源可以通过电源管理系统与处理器880逻辑相连,从而通过电源管理系统实现管理充电、放电、以及功耗管理等功能。电源890还可以包括一个或一个以上的直流或交流电源、再充电系统、电源故障检测电路、电源转换器或者逆变器、电源状态指示器等任意组件。
尽管未示出,终端800还可以包括蓝牙模块等,在此不再赘述。
具体在本实施例中,终端800还包括有存储器,以及一个或者一个以上的程序,其中一个或者一个以上程序存储于存储器中,且经配置以由一个或者一个以上处理器执行以实现上述检测移动终端应用运行状态的方法。
本领域普通技术人员可以理解上述实施例的检测移动终端应用运行状态的方法中的全部或部分步骤是可以通过程序来指令相关的硬件来完成,该程序可以存储于计算机可读存储介质中,存储介质可以包括:只读存储器(ROM,Read Only Memory)、随机存取记忆体(RAM,Random Access Memory)、磁盘或光盘等。
上述本申请实施例序号仅仅为了描述,不代表实施例的优劣。
以上所述仅为本申请的较佳实施例,并不用以限制本申请,凡在本申请的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本申请的保护范围之内。

Claims (12)

1.一种检测移动终端应用运行状态的方法,其特征在于,包括:
获取待检测移动终端应用的运行系统的检测参数,其中,所述检测参数包括版本信息、可执行文件信息和缓存架构信息;
调用训练好的模拟器检测模型对所述收集到的检测参数进行检测处理,以确定所述待检测移动终端应用是否运行在模拟器内;包括以下实现步骤:
分析所述待检测移动终端应用的运行系统的版本信息是否包含有特定的关键字;
检查所述可执行文件信息是否有对应的模拟器可执行文件;
读取所述待检测移动终端应用的运行系统的缓存架构信息,检测是否有指定的缓存架构信息;
输出所述模拟器检测模型运行所述检测参数所得到的概率值,若所述概率值大于预设概率值,则将所述待检测移动终端应用定义为运行在模拟器内。
2.根据权利要求1所述的方法,其特征在于,所述检测参数还包括近距离通信器件的库文件,对应的获取检测参数包括:
从所述待检测移动终端应用的运行系统的库文件路径下读取近距离通信器件的库文件;
所述调用训练好的模拟器检测模型对所述收集到的检测参数进行检测处理,以确定所述待检测移动终端应用是否运行在模拟器内的步骤对应包括:
检测所述库文件路径下是否存在对应的近距离通信器件库的文件。
3.根据权利要求1或2所述的方法,其特征在于,所述检测参数还包括外接设备的接口目录,对应的获取检测参数包括:
从所述运行系统的目录中读取外接设备的接口目录;
所述调用训练好的模拟器检测模型对所述收集到的检测参数进行检测处理,以确定所述待检测移动终端应用是否运行在模拟器内的步骤对应包括:
读取所述外接设备的接口目录,检查所述运行系统是否有对应的外接设备的接口目录。
4.根据权利要求1所述的方法,其特征在于,所述检测参数中还包括传感器的目录,对应的获取检测参数包括:
从所述运行系统的目录中读取传感器的目录;
所述调用训练好的模拟器检测模型对所述收集到的检测参数进行检测处理,以确定所述待检测移动终端应用是否运行在模拟器内的步骤对应包括:
读取所述运行系统的目录,检查所述运行系统是否有对应的传感器的目录。
5.根据权利要求1所述的方法,其特征在于,所述检测参数中还包括网络之间互联的协议IP地址,对应的获取检测参数包括:
获取所述运行系统的配置信息;
在所述配置信息中读取所述运行系统的IP地址;
所述调用训练好的模拟器检测模型对所述收集到的检测参数进行检测处理,以确定所述待检测移动终端应用是否运行在模拟器内的步骤对应包括:
检测所述运行系统的IP地址是否为表示所述待检测移动终端应用运行在模拟器内的IP地址。
6.根据权利要求1所述的方法,其特征在于,所述检测参数中还包括唯一识别码,对应的获取检测参数包括:
获取所述运行系统中的所述移动终端的唯一识别码;
所述调用训练好的模拟器检测模型对所述收集到的检测参数进行检测处理,以确定所述待检测移动终端应用是否运行在模拟器内的步骤对应包括:
检测获取的唯一识别码是否为表示所述待检测移动终端应用运行在模拟器内的唯一识别码。
7.根据权利要求1所述的方法,其特征在于,所述检测参数中还包括指定软件信息,对应的获取检测参数包括:
读取所述运行系统中安装的软件的软件信息;
所述调用训练好的模拟器检测模型对所述收集到的检测参数进行检测处理,以确定所述待检测移动终端应用是否运行在模拟器内的步骤对应包括:
检测所述软件信息中是否含有指定软件的信息。
8.根据权利要求1所述的方法,其特征在于,所述模拟器检测模型通过以下方法进行训练,包括:
采集待检测移动终端应用分别在移动终端和模拟器上运行的检测参数,其中所述检测参数包括运行系统的版本信息、可执行文件信息和缓存架构信息;
对采集到的所述检测参数的采集来源进行标签化处理;
将采集到的所述检测参数和标签化处理的标签输入机器学习框架,得到所述模拟器检测模型。
9.根据权利要求8中任一所述的方法,其特征在于,所述将采集到的所述检测参数和标签化处理的标签输入机器学习框架,得到所述模拟器检测模型包括:
获取标签化处理后的检测参数作为训练样本,其中,训练样本中包括正例和负例;正例为采集的检测参数表示在模拟器内运行的样本,负例表示采集的检测参数表示不在模拟器内运行的样本;
根据训练样本,采用预先配置的学习参数对机器学习框架进行训练,得到训练好的模拟器检测模型。
10.一种检测移动终端应用运行状态的装置,其特征在于,包括:
检测参数获取模块,用于获取待检测移动终端应用的运行系统的检测参数,其中,所述检测参数包括版本信息、可执行文件信息和缓存架构信息;
检测模块,用于调用训练好的模拟器检测模型对所述收集到的检测参数进行检测处理,以确定所述待检测移动终端应用是否运行在模拟器内;包括以下实现步骤:
分析所述待检测移动终端应用的运行系统的版本信息是否包含有特定的关键字;
检查所述可执行文件信息是否有对应的模拟器可执行文件;
读取所述待检测移动终端应用的运行系统的缓存架构信息,检测是否有指定的缓存架构信息;
输出模块,用于输出所述模拟器检测模型运行所述检测参数所得到的概率值,若所述概率值大于预设概率值,则将所述待检测移动终端应用定义为运行在模拟器内。
11.一种计算设备,其特征在于,包括存储器和处理器,其中,所述存储器用于存储程序指令,所述处理器用于调用所述存储器中存储的程序指令,按照获得的程序指令执行如权利要求1~9任一所述的检测移动终端应用运行状态的方法。
12.一种计算机存储介质,其特征在于,所述计算机存储介质存储有计算机可执行指令,所述计算机可执行指令用于使计算机执行如权利要求1~9任一所述的检测移动终端应用运行状态的方法。
CN201810646439.XA 2018-06-21 2018-06-21 检测移动终端应用运行状态的方法及相关装置 Active CN110196795B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201810646439.XA CN110196795B (zh) 2018-06-21 2018-06-21 检测移动终端应用运行状态的方法及相关装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201810646439.XA CN110196795B (zh) 2018-06-21 2018-06-21 检测移动终端应用运行状态的方法及相关装置

Publications (2)

Publication Number Publication Date
CN110196795A true CN110196795A (zh) 2019-09-03
CN110196795B CN110196795B (zh) 2022-03-04

Family

ID=67751329

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201810646439.XA Active CN110196795B (zh) 2018-06-21 2018-06-21 检测移动终端应用运行状态的方法及相关装置

Country Status (1)

Country Link
CN (1) CN110196795B (zh)

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111957050A (zh) * 2020-08-19 2020-11-20 福建天晴在线互动科技有限公司 一种基于输入设备的游戏客户端运行环境的检测方法及其系统
CN112559328A (zh) * 2020-12-04 2021-03-26 北京字节跳动网络技术有限公司 指令模拟引擎的判别方法、装置、设备及介质
CN112733141A (zh) * 2020-12-30 2021-04-30 五八有限公司 一种信息处理方法及装置
CN112905301A (zh) * 2021-03-04 2021-06-04 中国科学院信息工程研究所 一种Android模拟器的检测方法及装置
CN112988325A (zh) * 2021-02-01 2021-06-18 中国科学院信息工程研究所 一种基于用户信息的安卓模拟器识别方法及系统
CN112988324A (zh) * 2021-01-28 2021-06-18 中国科学院信息工程研究所 一种基于cpu信息的安卓模拟器识别方法及系统
CN113590404A (zh) * 2021-08-09 2021-11-02 咪咕文化科技有限公司 模拟器的检测方法、装置、设备以及计算机存储介质

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106201872A (zh) * 2016-07-05 2016-12-07 北京鼎源科技有限公司 一种Android系统的运行环境检测方法
CN106648835A (zh) * 2016-12-26 2017-05-10 武汉斗鱼网络科技有限公司 检测Android应用程序在安卓模拟器中运行的方法及系统
CN106815058A (zh) * 2016-12-08 2017-06-09 同盾科技有限公司 一种模拟器的识别方法和系统
CN107729749A (zh) * 2017-09-30 2018-02-23 北京梆梆安全科技有限公司 结合系统信息和硬件特性的安卓模拟器检测方法及装置
CN108021805A (zh) * 2017-12-18 2018-05-11 上海众人网络安全技术有限公司 检测Android应用程序运行环境的方法、装置、设备及存储介质

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106201872A (zh) * 2016-07-05 2016-12-07 北京鼎源科技有限公司 一种Android系统的运行环境检测方法
CN106815058A (zh) * 2016-12-08 2017-06-09 同盾科技有限公司 一种模拟器的识别方法和系统
CN106648835A (zh) * 2016-12-26 2017-05-10 武汉斗鱼网络科技有限公司 检测Android应用程序在安卓模拟器中运行的方法及系统
CN107729749A (zh) * 2017-09-30 2018-02-23 北京梆梆安全科技有限公司 结合系统信息和硬件特性的安卓模拟器检测方法及装置
CN108021805A (zh) * 2017-12-18 2018-05-11 上海众人网络安全技术有限公司 检测Android应用程序运行环境的方法、装置、设备及存储介质

Cited By (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111957050A (zh) * 2020-08-19 2020-11-20 福建天晴在线互动科技有限公司 一种基于输入设备的游戏客户端运行环境的检测方法及其系统
CN112559328A (zh) * 2020-12-04 2021-03-26 北京字节跳动网络技术有限公司 指令模拟引擎的判别方法、装置、设备及介质
CN112733141A (zh) * 2020-12-30 2021-04-30 五八有限公司 一种信息处理方法及装置
CN112988324A (zh) * 2021-01-28 2021-06-18 中国科学院信息工程研究所 一种基于cpu信息的安卓模拟器识别方法及系统
CN112988324B (zh) * 2021-01-28 2024-05-17 中国科学院信息工程研究所 一种基于cpu信息的安卓模拟器识别方法及系统
CN112988325A (zh) * 2021-02-01 2021-06-18 中国科学院信息工程研究所 一种基于用户信息的安卓模拟器识别方法及系统
CN112905301A (zh) * 2021-03-04 2021-06-04 中国科学院信息工程研究所 一种Android模拟器的检测方法及装置
CN113590404A (zh) * 2021-08-09 2021-11-02 咪咕文化科技有限公司 模拟器的检测方法、装置、设备以及计算机存储介质

Also Published As

Publication number Publication date
CN110196795B (zh) 2022-03-04

Similar Documents

Publication Publication Date Title
CN110196795A (zh) 检测移动终端应用运行状态的方法及相关装置
CN105404585B (zh) 获取代码覆盖率的方法及装置
CN109582579B (zh) 应用程序测试方法、装置、电子设备及存储介质
CN107943683B (zh) 一种测试脚本生成方法、装置、电子设备及存储介质
CN108536416A (zh) 处理用户输入的电子设备和处理用户输入的方法
CN106126411B (zh) 一种对被测程序代码进行测试的方法和装置
CN105320701B (zh) 功能点测试实现方式的筛选方法、装置及终端
CN105740145B (zh) 定位控件中的元素的方法及装置
CN108536594A (zh) 页面测试方法、装置及存储设备
CN108268366A (zh) 测试用例执行方法及装置
CN108228230A (zh) Ufs固件的升级方法、终端及计算机可读存储介质
CN107622200A (zh) 应用程序的安全性检测方法及装置
CN110058850A (zh) 一种应用的开发方法、装置以及存储介质
CN108415741A (zh) 对象序列化和反序列化方法及相关装置
CN109675317A (zh) 外挂程序的检测方法、服务器及终端
CN108073495A (zh) 应用程序崩溃原因的定位方法及装置
CN106294108A (zh) 应用程序测试方法及装置
CN109582565A (zh) 防止应用崩溃的方法、终端及计算机存储介质
CN106708555B (zh) 一种加载插件的方法和装置
CN108492837A (zh) 音频突发白噪声的检测方法、装置及存储介质
CN109857646A (zh) 一种自动化测试方法和装置
CN109344035A (zh) 一种应用程序的运行控制方法、装置、设备及存储介质
CN105608095A (zh) 多媒体播放方法、装置及移动终端
CN109542511A (zh) 一种应用安装包的检测方法、装置及移动设备
CN110347578A (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