CN106649098A - 在终端设备上实现发布版本软件调试的方法和装置 - Google Patents

在终端设备上实现发布版本软件调试的方法和装置 Download PDF

Info

Publication number
CN106649098A
CN106649098A CN201610963204.4A CN201610963204A CN106649098A CN 106649098 A CN106649098 A CN 106649098A CN 201610963204 A CN201610963204 A CN 201610963204A CN 106649098 A CN106649098 A CN 106649098A
Authority
CN
China
Prior art keywords
terminal device
debugging
test mark
version software
released version
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
CN201610963204.4A
Other languages
English (en)
Other versions
CN106649098B (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.)
Hisense Group Co Ltd
Original Assignee
Hisense Group 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 Hisense Group Co Ltd filed Critical Hisense Group Co Ltd
Priority to CN201610963204.4A priority Critical patent/CN106649098B/zh
Publication of CN106649098A publication Critical patent/CN106649098A/zh
Application granted granted Critical
Publication of CN106649098B publication Critical patent/CN106649098B/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/36Preventing errors by testing or debugging software
    • G06F11/362Software debugging

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Quality & Reliability (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Stored Programmes (AREA)

Abstract

本公开揭示了一种在终端设备上实现发布版本软件调试的方法和装置。所述方法包括:接收开机指令;判断是否存在预置的外部特征条件,外部特征条件包括插入特制USB线、插入包含特殊文件的TF卡、短接PCB上隐藏的短接点、特殊的按键组合、输入fastboot命令中的至少一种;若存在预置的外部特征条件,在终端设备的指定位置写入测试标志,其中,测试标志用于指示终端设备配置发布版本软件的调试环境;读取测试标志,并根据测试标志配置发布版本软件的调试环境,以使终端设备在调试环境下实现发布版本软件的调试。由此便实现了终端设备上发布版本软件的调试,进而能够对发布版本软件进行问题调查,以保障终端设备发生故障时能够实现终端设备中发布版本软件的调试。

Description

在终端设备上实现发布版本软件调试的方法和装置
技术领域
本公开涉及计算机应用技术领域,特别涉及一种在终端设备上实现发布版本软件调试的方法和装置。
背景技术
终端设备开发阶段,终端设备中软件的版本通常为调试版本,即debug版本。调试版本软件包含有众多调试后门,并能够提供丰富的日志信息,以供开发测试及问题调查的实现。
在终端设备进入测试及发布阶段后,终端设备中软件的版本由调试版本更换为发布版本,即release版本。
发布版本软件中,调试后门被关闭,并且日志信息的提供也将被减少甚至于不再提供,进而无法对发布版本软件进行调试。
具体而言,在终端设备发生故障时,由于终端设备中无法进行发布版本软件的调试,进而无法对发布版本软件实现日志信息的打印,更无法更换为调试版本再进行问题调查。例如,假设将软件由发布版本更换为调试版本,则会因为版本更换而无法复现问题,或者版本更换后出现的问题与发布版本出现的问题并不相同,所以终端设备中存在发布版本下问题调查困难,进度缓慢的局限性。
由此可知,终端设备中,由于并无法实现发布版本软件的调试,而难以进行发布版本软件的问题调查。
发明内容
为了解决相关技术中无法进行发布版本软件的调试,而难以进行发布版本软件的问题调查的技术问题,本公开提供了一种在终端设备上实现发布版本软件调试的方法和装置。
一种在终端设备上实现发布版本软件调试的方法,所述方法包括:
接收开机指令,所述开机指令用于指示所述终端设备开机;
判断是否存在预置的外部特征条件,所述外部特征条件包括插入特制USB线、插入包含特殊文件的TF卡、短接PCB上隐藏的短接点、特殊的按键组合、输入fastboot命令中的至少一种;
若存在所述预置的外部特征条件,在所述终端设备的指定位置写入测试标志,其中,所述测试标志用于指示终端设备配置所述发布版本软件的调试环境;
读取所述测试标志,并根据所述测试标志配置所述发布版本软件的调试环境,以使所述终端设备在所述调试环境下实现所述发布版本软件的调试。
一种在终端设备上实现发布版本软件调试的装置,所述装置包括:
开机指令接收模块,用于接收开机指令,所述开机指令用于指示所述终端设备开机;
特征判断模块,用于判断是否存在预置的外部特征条件,所述外部特征条件包括插入特制USB线、插入包含特殊文件的TF卡、短接PCB上隐藏的短接点、特殊的按键组合、输入fastboot命令中的至少一种;
标志写入模块,用于若存在所述预置的外部特征条件,在所述终端设备的指定位置写入测试标志,其中,所述测试标志用于指示终端设备配置所述发布版本软件的调试环境;
调试环境配置模块,用于读取所述测试标志,并根据所述测试标志配置所述发布版本软件的调试环境,以使所述终端设备在所述调试环境下实现所述发布版本软件的调试。
本公开的实施例提供的技术方案可以包括以下有益效果:
终端设备中存在发布版本软件,终端设备接收开机指令而指示终端设备开机,判断终端设备中预置的外部特征条件的存在,其中,该外部特征条件包括插入USB线、插入包含特殊文件的TF卡、短接PCB上隐藏的短接点、特殊的按键组合、输入fastboot命令中的至少一种,如果存在预置的外部特征条件,则在终端设备的指定位置写入测试标志,该测试标志用于指示终端设备配置发布版本软件的调试环境,因此,在确定终端设备的指定位置写入了测试标志之后,读取测试标志,根据测试标志配置发布版本软件的调试环境,以使终端设备在调试环境下实现发布版本软件的调试,由此便能够实现终端设备中发布版本软件的调试,进而能够对终端设备中的发布版本软件进行问题调查,以保障终端设备发生故障时能够实现终端设备中发布版本软件的调试。
应当理解的是,以上的一般描述和后文的细节描述仅是示例性的,并不能限制本公开。
附图说明
此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本发明的实施例,并于说明书一起用于解释本发明的原理。
图1是根据一示例性实施例示出的一种在终端设备上实现发布版本软件调试的方法的流程图;
图2是根据另一示例性实施例示出的一种在终端设备上实现发布版本软件调试的方法的流程图;
图3是根据一示例性实施例示出的一种在终端设备上实现发布版本软件调试的方法的流程图;
图4是根据一示例性实施例示出的一种实现发布版本软件调试的方法的应用示意图;
图5是根据一示例性实施例示出的智能手机中fastboot模式下调试环境的配置的流程图;
图6是根据一示例性实施例示出的一种在终端设备上实现发布版本软件调试的装置的框图;
图7是根据另一示例性实施例示出的一种在终端设备上实现发布版本软件调试的装置的框图;
图8是根据一示例性实施例示出的一种在终端设备上实现发布版本软件调试的装置的框图;
图9是根据一示例性实施例示出的一种装置的框图。
具体实施方式
这里将详细地对示例性实施例执行说明,其示例表示在附图中。下面的描述涉及附图时,除非另有表示,不同附图中的相同数字表示相同或相似的要素。以下示例性实施例中所描述的实施方式并不代表与本发明相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本发明的一些方面相一致的装置和方法的例子。
图1是根据一示例性实施例示出的一种在终端设备上实现发布版本软件调试的方法的流程图。该在终端设备上实现发布版本软件调试的方法,适用于终端设备中,在一示例性实施例,该在终端设备上实现发布版本软件调试的方法,所适用的终端设备可以是智能手机、智能电视、电脑等各种终端,本发明实施例对此不做限定。
本发明实施例的在终端设备上实现发布版本软件调试的方法,如图1所示,可以包括以下步骤。
在步骤110中,接收开机指令,开机指令用于指示终端设备开机。
其中,终端设备,如前所述的,可以是智能手机等便携移动终端,在一个示例性的实施例中,此终端设备可以是基于Android系统的终端设备。
终端设备中存在着发布版本软件,因此,在需要调试终端设备中的发布版本软件时,借助于所在终端设备的开机流程来实现调试环境的配置。
具体而言,发布版本软件所在终端设备接收到开机指令,便执行开机指令以触发进行终端设备的开机流程。
在步骤130中,判断是否存在预置的外部特征条件,外部特征条件包括插入特制USB线、插入包含特殊文件的TF卡、短接PCB上隐藏的短接点、特殊的按键组合、输入fastboot命令中的至少一种。
其中,发布版本软件的调试,可以通过多种方式发起,并且每一种发起发布版本软件调试的方式,都有其所对应的特征,此特征即为发起发布版本软件调试的外部特征条件。在确认存在预置的任一外部特征条件,都可确定终端设备当前发起了发布版本软件的调试。
当终端设备接收到开机指令之后,终端设备执行该开机指令,在终端设备完成开机之前,判断该终端设备上是否存在预置的外部特征条件。其中,预置的外部特征条件,可以是上述所列举特征中的一种,或者任意组合。而在此需要补充说明的是,预置的外部特征条件中特制USB线的接入,此特制USB线,示例的,可以是D+(绿色线)和地线(黑色线)短接在一起的USB线。
根据如上所述的发起终端设备中发布版本软件调试的外部特征条件,可以清楚地知道,所设定的外部特征条件,都是用户所不易触发或者不易实现的特征,并且如果用户一旦触发,去除相应的外部特征条件并重新启动终端设备之后,便可以消除发起发布版本软件调试的外部特征条件。
因此,通过本公开所提供的在终端设备上实现发布版本软件的调试过程,不会对用户对终端设备的正常使用造成干扰,使得终端设备中发布版本软件的调试具备非常高的可靠性和稳定性。
在一个示例性实施例中,所进行的发起发布版本软件调试的外部特征条件的存在性判断,将是在开机流程中引导加载程序运行阶段进行的,以此来使得后续所进行的发布版本软件调试,可以覆盖终端设备启动运行的全过程,针对发布版本软件在各个阶段所出现的软件问题,均可以实现相应调试功能加载。
其中,开机流程,包括引导加载程序的运行阶段、内核的加载阶段、系统层的运行阶段和应用层的运行阶段。在所触发进行的开机流程中,将顺次执行各个阶段。
开机流程的引导加载程序运行,即为开机流程中的引导加载程序的运行阶段。具体而言,所指的引导加载程序是bootloader程序,其是在嵌入式操作系统内核加载之前运行的,引导加载程序用于实现硬件初始化,建立内存空间等工作的一段程序。
在一个示例性实施例的具体实现中,将是通过在引导加载程序中添加检测代码来实现发起发布版本调试的外部特征条件的存在性判断过程。
具体的,随着引导加载程序的运行,将执行检测代码,进而在开机流程的引导加载程序运行中,判断发起发布版本软件调试的外部特征条件,由此将使得本公开所述的发布版本软件的调试易于实现。
在步骤150中,若存在预置的外部特征条件,在终端设备的指定位置写入测试标志,其中,测试标志用于指示终端设备配置发布版本软件的调试环境。
可以理解的,在开机流程中写入测试标志,将用于在后续的内核加载中配置调试环境。
在一个示例性实施例中,终端设备中写入测试标志的指定位置为共享内存或固定存储区域。
在此需要首先说明的是,共享内存,是指终端设备的嵌入式芯片中存在的内存区域,此内存区域中存储的内容在嵌入式芯片掉电后丢失,上电后需要重新写入,并不会进行内容的持久化存储。
固定存储区域,则是进行持久化存储的一存储位置。在一示例性实施例中,固定存储区域即位于EMMC(Embedded Multi Media Card)中。
如果判断到存在预置的外部特征条件,直接在共享内存或者终端设备中的固定存储区域写入测试标志。
也就是说,一方面,测试标志可以写入共享内存中,以作用于本次开机,在本次开机中配置终端设备中发布版本软件的调试环境;另一方面,测试标志可以按照固定存储区域写入,以作用于后续所有的开机过程,直至被擦除才不再起作用,由此,可以使得后续所有的开机过程不再需要进行测试标志的写入和外部特征条件的存在性判断,而直接进行调试环境的配置,进而对于需要进行多次调试的终端设备而言,提供了极大的方便性,也提高了设备中发布版本软件调试的效率。
通过如上所述的过程,实现终端设备中测试标志的写入,进而为后续测试标志的读取甚至于调试环境的配置提供了实现基础,并通过终端设备中测试标志的动态写入,即检测到外部特征条件时写入,来在终端设备中动态配置调试环境,使得终端设备中发布版本软件能够动态获得调试手段,而并不需要更换版本就能够实现调试,也保证了问题调查的准确性。
在步骤170中,读取测试标志,并根据测试标志配置发布版本软件的调试环境,以使终端设备在调试环境下实现发布版本软件的调试。
其中,如前述步骤所描述的,在通过引导加载程序的运行阶段完成外部特征条件的存在性判断和写入之后便可读取到测试标志。
在一个示例性实施例中,终端设备的开机过程中,如果执行至内核加载阶段,则在此内核加载阶段进行测试标志的读取。
可以理解的,内核的加载将为终端设备中发布版本软件的运行提供了环境,因此,也将在内核的加载阶段进行测试标志的读取,以在需要进行调试时在此内核的加载阶段进行调试环境的配置,进而方能够使得发布版本软件的运行能够在调试环境的作用下获得调试手段,实现发布版本软件中调试手段的动态获得。
在实现了测试标志的读取之后,随之根据测试标志进行终端设备中发布版本软件的调试环境的配置。
在一个示例性实施例中,调试环境的配置,便是发布版本软件配置调试手段的过程,以通过此过程构建发布版本软件调试所需要的调试环境。
可以理解的,调试手段,是指发布版本软件的调试和日志信息打印等功能的各种手段,在一个示例性实施例中,调试手段,即为调试版本软件所相关的调试后门及驱动。例如,调试手段,可以包括但不限于:设备死机进入ramdump模式、开启fastboot端口、开启ADB(Android Debug Bridge,调度桥)端口和授予临时root权限等。通过配置调试环境而为发布版本软件所配置的调试手段,可以是上述列举的一种或者任意组合。
通过此过程的执行,使得终端设备中发布版本软件可以获得调试环境,进而能够进行发布版本软件的调试,由此便可以在终端设备中实现发布版本软件的问题调查。
终端设备中开机流程执行完毕时,便可以直接通过配置的调试环境进行发布版本软件的调试,在此调试环境中,与调试版本软件相类似的,发布版本软件可以获得调试后门,可以进行日志信息的打印,还可以进入ramdump模式,以获得dump文件用以分析。dump文件即为发布版本软件运行时相应进程的内存镜像,保存了发布版本软件的执行状态等信息,供调试时使用。
在一个示例性实施例中,步骤130之后,该在终端设备上实现发布版本软件调试的方法,还包括以下步骤。
若不存在预置的外部特征条件,执行开机指令,完成终端设备上的开机流程。
其中,终端设备中,如果并不存在任一预置的外部特征条件,则仅执行开机执行,完成终端设备上的整个开机流程即可,不需要进行终端设备中发布版本软件的调试,即终端设备实现正常开机,以供用户正常使用该终端设备。
图2是根据一示例性实施例示出的一种在终端设备上实现发布版本软件调试的方法的流程图。指定位置为共享内存,步骤170之后,该在终端设备上实现发布版本软件调试的方法,还包括以下步骤。
在步骤210中,接收关机指令,关机指令用于指示终端设备关机。
其中,如前所述的,图1对应实施例中写入测试标志的指定位置,是共享内存,则与之相对应的,图1对应实施例中写入的测试标志,将仅存在于本次开机之后的终端设备运行中,而必然在终端设备关机时被清除。
读取到测试标志,并配置了调试环境的终端设备,将在触发自身的关机时接收到关机指令,此时,对于本发明所进行的发布版本软件调试而言,将依据此关机指令结束当前所进行的调试过程。
在步骤230中,清除终端设备的指定位置写入的测试标志。
其中,在接收到关机指令之后,执行关机执行的同时,对写入共享内存的测试标志进行清除,以使得作为指定位置的共享内存中不存在测试标志。
在步骤250中,执行关机指令将终端设备关机。
通过如上所述的过程,使得缓存的测试标志在终端设备关机时被清除,进而为终端设备中发布版本软件调试过程的终止提供了具体实现,进而保障了终端设备中发布版本软件的调试不会对终端设备的正常使用造成影响。
图3是根据一示例性实施例示出的一种在终端设备上实现发布版本软件调试的方法的流程图。终端设备的指定位置为固定存储区域,步骤170之后,该在终端设备上实现发布版本软件调试的方法,如图3所示,可以包括以下步骤。
在步骤310中,接收测试测试标志擦除命令。
在步骤330中,根据测试测试标志擦除命令,擦除固定存储区域写入的测试标志。
其中,如前所述的,测试标志在固定存储区域的写入,将使得后续所有的开机过程,都进行调试环境的配置,以方便需要连续进行发布版本软件调试的终端设备。
此终端设备,在所进行的发布版本软件连续调试的过程中,如果不再对发布版本软件进行调试,即不再需要进行相应调试环境的配置,则需要对固定存储区域写入的测试标志予以擦除。
在一个示例性实施例的具体实现中,测试测试标志擦除命令,可以是fastboot命令的形式。
在此需要说明的是,fastboot模式,是指基于Android操作系统的终端设备所具备的一种底层调试模式,可用于进行开发和问题调查。而fastboot端口的开启便是在终端设备自身进入fastboot模式时开启的端口,通过fastboot端口的开启,进入fastboot模式的终端设备方能够接收到调试操控端下发的fastboot命令。
具体而言,为向终端设备下发测试测试标志擦除命令,可以使用一计算机设备作为调试操控端,首先获取支持指定fastboot命令的fastboot工具,并将终端设备通过USB母亲与调试操控端连接。
此时,终端设备重新启动即可进入fastboot模式,而作为调试操控端的计算机设备,则可以通过windows操作系统自带的cmd终端或第三方命令行终端来进行指定fastboot命令的输入,即测试测试标志擦除命令的输入。
fastboot命令形式的测试测试标志擦除命令输入完成并确认后,测试测试标志擦除命令将被下发至终端设备中。
终端设备中进行测试测试标志擦除命令的接收,将得到测试测试标志擦除命令,响应此测试测试标志擦除命令,而进行固定存储区域中测试标志的擦除。
由此,便将使得终端设备中发布版本软件调试的实现是与终端设备中存在的调试需求相应适应。
相对应的,在终端设备中存在调试需求时,也可通过fastboot命令形式向终端设备下发测试测试标志写入命令,以通过此外部特征条件来实现终端设备上发布版本软件的调试。
通过输入fastboot命令这一外部特征条件所实现的终端设备上发布版本软件的调试,能够在终端设备的每次启动之后,都进行发布版本软件的调试,进而无需重复发起发布版本软件的调试即可获得调试手段,有效节省时间。
由此,既可兼顾正常发布版本软件的运行,又兼顾了发布版本软件的调试,进而使得发布版本软件中存在问题时,得以动态获得所需要的调试手段,不再需要进行版本更换,保障了发布版本软件中问题调查的准确性和效率。
以终端设备为智能手机为例,结合具体应用场景,描述该在终端设备上实现发布版本软件调试的方法。
图4是根据一示例性实施例示出的一种实现发布版本软件调试的方法的应用示意图。如图4所示,智能手机开机时,首先执行步骤410,芯片内部固件启动并执行,以发起开机流程。
在此开机流程的执行中,首先执行引导加载程序的运行阶段,例如,如步骤420所示的,Bootloader镜像加载并执行。在步骤420执行完毕之后,执行步骤430判断外部特征条件是否满足,在外部特征条件满足时,执行步骤440,向共享内部(或EMMC)指定位置写入(或者擦除)测试标志。
在外部特征条件并未满足,或者测试标志的写入或擦除已经完成,则执行步骤450,在Bootloader代码执行完毕时,加载内核代码。
在内核代码的执行中,将判断测试标志是否存在,即执行步骤460。在测试标志并不存在时,正常加载kernel代码,即正常进行内核代码的加载。在指定标记存在时,加载kernel代码,并在加载kernel代码的同时,配置相关调试环境,即执行步骤480。
最后进行system等镜像的加载,即系统层的运行阶段的执行,以继续整个开机程序,由此即可使得完成开机流程的智能手机可以进行自身发布版本软件的调试。
下面以智能手机通过进入fastboot模式来进行发布版本软件调试的过程进行详细阐述。图5是根据一示例性实施例示出的智能手机中fastboot模式下调试环境的配置的流程图。
如图5所示,智能手机开机时,进入fastboot模式,此时将根据用户是否输入命令来控制智能手机中的响应过程。
具体而言,如图5所示的,用户所输入的命令,为fastboot命令,其可以包括但不限于:测试标志写入命令、测试标志擦除命令、fastboot continue命令和其它fastboot命令。
智能手机中,在接收到下发的fastboot命令时,将响应并执行此fastboot命令,即分别对应于步骤510至步骤560所示的过程。
在此需要说明的是,在响应并执行测试标志写入命令和测试标志擦除命令时,写入或擦除测试标志,并返回成功提示,此时,将执行fastboot continue命令,进行内核镜像的加载,即执行步骤570。
在内核镜像的加载中,判断测试标志是否存在,即执行步骤580,如果存在,则执行步骤590,加载kernel代码,并在此kernel代码的执行中配置调试环境。
至此,便可以进行智能手机中开发版本软件的调试,进而对于发生故障的智能手机而言,能够便捷快速地实现问题调查。
下述为本公开装置实施例,可以用于执行本公开上述在终端设备上实现发布版本软件调试的方法实施例。对于本公开装置实施例中未披露的细节,请参照本公开的在终端设备上实现发布版本软件调试的方法实施例。
图6是根据一示例性实施例示出的一种在终端设备上实现发布版本软件调试的装置的框图。该终端设备上实现发布版本软件调试的装置,如图6所示,可以包括:开机指令接收模块610、特征判断模块630、标志写入模块650和调试环境配置模块670。
开机指令接收模块610,用于接收开机指令,开机指令用于指示终端设备开机。
特征判断模块630,用于判断是否存在预置的外部特征条件,外部特征条件包括插入特制USB线、插入包含特殊文件的TF卡、短接PCB上隐藏的短接点、特殊的按键组合、输入fastboot命令中的至少一种。
标志写入模块650,用于若存在预置的外部特征条件,在终端设备的指定位置写入测试标志,其中,测试标志用于指示终端设备配置发布版本软件的调试环境。
调试环境配置模块670,用于读取测试标志,并根据测试标志配置发布版本软件的调试环境,以使终端设备在调试环境下实现发布版本软件的调试。
在一个示例性实施例中,该在终端设备上实现发布版本软件调试的装置还包括关机模块。
关机模块用于若不存在预置的外部特征条件,执行开机指令,完成终端设备上的开机流程。
图7是根据一示例性实施例示出的一种在终端设备上实现发布版本软件调试的装置的框图。该在终端设备上实现发布版本软件调试的装置,如图7所示,还包括关机指令接收模块710、标志清除模块730和关机执行模块750。
关机指令接收模块710,用于接收关机指令,关机指令用于指示终端设备关机。
标志清除模块730,用于清除终端设备的指定位置写入的测试标志。
关机执行模块750,用于执行关机指令将终端设备关机。
在一个示例性实施例中。调试环境配置模块670用于根据测试标志配置发布版本软件的调试环境,其中,调试环境包括死机进入ramdump模式、开启fastboot端口、开启ADB端口、开启临时root权限中的至少一个。
图8是根据一示例性实施例示出的一种在终端设备上实现发布版本软件调试的装置的框图。终端设备的指定位置为固定存储位置,该在终端设备上实现发布版本软件调试的装置,如图8所示,还包括命令接收模块810和标志擦除模块830。
命令接收模块810,用于接收测试标志擦除命令。
标志擦除模块830,用于根据测试标志擦除命令,擦除固定存储区域写入的测试标志。
图9是根据一示例性实施例示出的一种装置900的框图。该装置900可以是智能硬件。
参照图9,装置900可以包括以下一个或多个组件:处理组件902,存储器904,电源组件906,多媒体组件908,音频组件910,传感器组件914以及通信组件916。
处理组件902通常控制装置900的整体操作,诸如与显示,电话呼叫,数据通信,相机操作以及记录操作相关联的操作等。处理组件902可以包括一个或多个处理器918来执行指令,以完成下述的方法的全部或部分步骤。此外,处理组件902可以包括一个或多个模块,便于处理组件902和其他组件之间的交互。例如,处理组件902可以包括多媒体模块,以方便多媒体组件908和处理组件902之间的交互。
存储器904被配置为存储各种类型的数据以支持在装置900的操作。这些数据的示例包括用于在装置900上操作的任何应用程序或方法的指令。存储器904可以由任何类型的易失性或非易失性存储设备或者它们的组合实现,如静态随机存取存储器(SRAM),电可擦除可编程只读存储器(EEPROM),可擦除可编程只读存储器(EPROM),可编程只读存储器(PROM),只读存储器(ROM),磁存储器,快闪存储器,磁盘或光盘。存储器904中还存储有一个或多个模块,该一个或多个模块被配置成由该一个或多个处理器918执行,以完成上述图1、图2和图3任一所示方法中的全部或者部分步骤。
电源组件906为装置900的各种组件提供电力。电源组件906可以包括电源管理系统,一个或多个电源,及其他与为装置900生成、管理和分配电力相关联的组件。
多媒体组件908包括在所述装置900和用户之间的提供一个输出接口的屏幕。在一些实施例中,屏幕可以包括液晶显示器(LCD)和触摸面板(TP)。如果屏幕包括触摸面板,屏幕可以被实现为触摸屏,以接收来自用户的输入信号。触摸面板包括一个或多个触摸传感器以感测触摸、滑动和触摸面板上的手势。所述触摸传感器可以不仅感测触摸或滑动动作的边界,而且还检测与所述触摸或滑动操作相关的持续时间和压力。屏幕还可以包括有机电致发光显示器(OLED)。
音频组件910被配置为输出和/或输入音频信号。例如,音频组件910包括一个麦克风(MIC),当装置900处于操作模式,如呼叫模式、记录模式和语音识别模式时,麦克风被配置为接收外部音频信号。所接收的音频信号可以被进一步存储在存储器904或经由通信组件916发送。在一些实施例中,音频组件910还包括一个扬声器,用于输出音频信号。
传感器组件914包括一个或多个传感器,用于为装置900提供各个方面的状态评估。例如,传感器组件914可以检测到装置900的打开/关闭状态,组件的相对定位,传感器组件914还可以检测装置900或装置900一个组件的位置改变以及装置900的温度变化。在一些实施例中,该传感器组件914还可以包括磁传感器,压力传感器或温度传感器。
通信组件916被配置为便于装置900和其他设备之间有线或无线方式的通信。装置900可以接入基于通信标准的无线网络,如WiFi。在一个示例性实施例中,通信组件916经由广播信道接收来自外部广播管理系统的广播信号或广播相关信息。在一个示例性实施例中,所述通信组件916还包括近场通信(NFC)模块,以促进短程通信。例如,在NFC模块可基于射频识别(RFID)技术,红外数据协会(IrDA)技术,超宽带(UWB)技术,蓝牙(BT)技术和其他技术来实现。
在示例性实施例中,装置900可以被一个或多个应用专用集成电路(ASIC)、数字信号处理器(DSP)、数字信号处理设备(DSPD)、可编程逻辑器件(PLD)、现场可编程门阵列(FPGA)、控制器、微控制器、微处理器或其他电子元件实现,用于执行上述方法。
可选的,本公开还提供一种终端设备,该终端设备可以用于图9所示实施环境中,执行图1、图2和图3任一所示的在终端设备上实现发布版本软件调试的方法的全部或者部分步骤。所述装置包括:
处理器;
用于存储处理器可执行指令的存储器;
其中,所述处理器被配置为执行:
接收开机指令,所述开机指令用于指示所述终端设备开机;
判断是否存在预置的外部特征条件,所述外部特征条件包括插入特制USB线、插入包含特殊文件的TF卡、短接PCB上隐藏的短接点、特殊的按键组合、输入fastboot命令中的至少一种;
若存在所述预置的外部特征条件,在所述终端设备的指定位置写入测试标志,其中,所述测试标志用于指示终端设备配置所述发布版本软件的调试环境;
读取所述测试标志,并根据所述测试标志配置所述发布版本软件的调试环境,以使所述终端设备在所述调试环境下实现所述发布版本软件的调试。
该实施例中的装置的处理器执行操作的具体方式已经在有关该在终端设备上实现发布版本软件调试的方法的实施例中执行了详细描述,此处将不做详细阐述说明。
在示例性实施例中,还提供了一种存储介质,该存储介质为计算机可读存储介质,例如可以为包括指令的临时性和非临时性计算机可读存储介质。该存储介指例如包括指令的存储器904,上述指令可由装置900的处理器918执行以完成上述在终端设备上实现发布版本软件调试的方法。
应当理解的是,本发明并不局限于上面已经描述并在附图中示出的精确结构,并且可以在不脱离其范围执行各种修改和改变。本发明的范围仅由所附的权利要求来限制。

Claims (10)

1.一种在终端设备上实现发布版本软件调试的方法,其特征在于,所述方法包括:
接收开机指令,所述开机指令用于指示终端设备开机;
判断是否存在预置的外部特征条件,所述外部特征条件包括插入特制USB线、插入包含特殊文件的TF卡、短接PCB上隐藏的短接点、特殊的按键组合、输入fastboot命令中的至少一种;
若存在所述预置的外部特征条件,在所述终端设备的指定位置写入测试标志,其中,所述测试标志用于指示终端设备配置所述发布版本软件的调试环境;
读取所述测试标志,并根据所述测试标志配置所述发布版本软件的调试环境,以使所述终端设备在所述调试环境下实现所述发布版本软件的调试。
2.根据权利要求1所述的方法,其特征在于,所述判断是否存在预置的外部特征条件之后,还包括:
若不存在所述预置的外部特征条件,执行所述开机指令,完成所述终端设备上的开机流程。
3.根据权利要求1所述的方法,其特征在于,所述指定位置为共享内存,所述读取所述测试标志,并根据所述测试标志配置所述发布版本软件的调试环境,之后还包括:
接收关机指令,所述关机指令用于指示所述终端设备关机;
清除所述终端设备的指定位置写入的所述测试标志;
执行所述关机指令将所述终端设备关机。
4.根据权利要求1~3任一项所述的方法,其特征在于,所述根据所述测试标志配置所述发布版本软件的调试环境,包括:
根据所述测试标志配置所述发布版本软件的调试环境,其中,所述调试环境包括死机进入ramdump模式、开启fastboot端口、开启ADB端口、开启临时root权限中的至少一个。
5.根据权利要求1~2任一项所述的方法,其特征在于,所述终端设备的指定位置为固定存储区域,相应的,所述读取所述测试标志,并根据所述测试标志配置所述发布版本软件的调试环境,之后还包括:
接收测试标志擦除命令;
根据所述测试标志擦除命令,擦除所述固定存储区域写入的所述测试标志。
6.一种在终端设备上实现发布版本软件调试的装置,其特征在于,所述装置包括:
开机指令接收模块,用于接收开机指令,所述开机指令用于指示终端设备开机;
特征判断模块,用于判断是否存在预置的外部特征条件,所述外部特征条件包括插入特制USB线、插入包含特殊文件的TF卡、短接PCB上隐藏的短接点、特殊的按键组合、输入fastboot命令中的至少一种;
标志写入模块,用于若存在所述预置的外部特征条件,在所述终端设备的指定位置写入测试标志,其中,所述测试标志用于指示终端设备配置所述发布版本软件的调试环境;
调试环境配置模块,用于读取所述测试标志,并根据所述测试标志配置所述发布版本软件的调试环境,以使所述终端设备在所述调试环境下实现所述发布版本软件的调试。
7.根据权利要求6所述的装置,其特征在于,所述装置还包括:
关机模块,用于若不存在所述预置的外部特征条件,执行所述开机指令,完成所述终端设备上的开机流程。
8.根据权利要求6所述的装置,其特征在于,所述指定位置为共享内存,所述装置还包括:
关机指令接收模块,用于接收关机指令,所述关机指令用于指示所述终端设备关机;
标志清除模块,用于清除所述终端设备的指定位置写入的所述测试标志;
关机执行模块,用于执行所述关机指令将所述终端设备关机。
9.根据权利要求6~8任一项所述的装置,其特征在于,所述调试环境配置模块用于根据所述测试标志配置所述发布版本软件的调试环境,其中,所述调试环境包括死机进入ramdump模式、开启fastboot端口、开启ADB端口、开启临时root权限中的至少一个。
10.根据权利要求6~7任一项所述的装置,其特征在于,所述终端设备的指定位置为固定存储区域,所述装置还包括:
命令接收模块,用于接收测试标志擦除命令;
标志擦除模块,用于根据所述测试标志擦除命令,擦除所述固定存储区域写入的所述测试标志。
CN201610963204.4A 2016-11-04 2016-11-04 在终端设备上实现发布版本软件调试的方法和装置 Active CN106649098B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201610963204.4A CN106649098B (zh) 2016-11-04 2016-11-04 在终端设备上实现发布版本软件调试的方法和装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201610963204.4A CN106649098B (zh) 2016-11-04 2016-11-04 在终端设备上实现发布版本软件调试的方法和装置

Publications (2)

Publication Number Publication Date
CN106649098A true CN106649098A (zh) 2017-05-10
CN106649098B CN106649098B (zh) 2019-06-04

Family

ID=58821672

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201610963204.4A Active CN106649098B (zh) 2016-11-04 2016-11-04 在终端设备上实现发布版本软件调试的方法和装置

Country Status (1)

Country Link
CN (1) CN106649098B (zh)

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107329865A (zh) * 2017-06-29 2017-11-07 努比亚技术有限公司 打开调试桥adb功能方法、移动终端和计算机可读介质
CN107688536A (zh) * 2017-08-23 2018-02-13 上海与德科技有限公司 一种获取终端系统日志的方法及装置
CN109857638A (zh) * 2018-12-28 2019-06-07 北京航天测控技术有限公司 一种测试系统软件通用框架
CN111209059A (zh) * 2020-01-14 2020-05-29 中国北方车辆研究所 一种嵌入式软件多版本控制系统及方法
CN112202952A (zh) * 2020-10-22 2021-01-08 Tcl通讯(宁波)有限公司 移动终端测试方法、装置、存储介质及移动终端
CN115686978A (zh) * 2023-01-04 2023-02-03 深圳市大晶光电科技有限公司 一种老化测试方法、系统以及pcb板

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20080209400A1 (en) * 2007-02-27 2008-08-28 Kevin Christopher Parker Approach for versioning of services and service contracts
CN102495736A (zh) * 2011-12-19 2012-06-13 曙光信息产业(北京)有限公司 一种在可执行文件中标识软件代码svn版本的方法和系统
CN103164643A (zh) * 2011-12-08 2013-06-19 北京深思洛克软件技术股份有限公司 一种通过硬件进行反调试的方法和装置

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20080209400A1 (en) * 2007-02-27 2008-08-28 Kevin Christopher Parker Approach for versioning of services and service contracts
CN103164643A (zh) * 2011-12-08 2013-06-19 北京深思洛克软件技术股份有限公司 一种通过硬件进行反调试的方法和装置
CN102495736A (zh) * 2011-12-19 2012-06-13 曙光信息产业(北京)有限公司 一种在可执行文件中标识软件代码svn版本的方法和系统

Cited By (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107329865A (zh) * 2017-06-29 2017-11-07 努比亚技术有限公司 打开调试桥adb功能方法、移动终端和计算机可读介质
CN107329865B (zh) * 2017-06-29 2021-06-15 努比亚技术有限公司 打开调试桥adb功能方法、移动终端和计算机可读介质
CN107688536A (zh) * 2017-08-23 2018-02-13 上海与德科技有限公司 一种获取终端系统日志的方法及装置
CN109857638A (zh) * 2018-12-28 2019-06-07 北京航天测控技术有限公司 一种测试系统软件通用框架
CN111209059A (zh) * 2020-01-14 2020-05-29 中国北方车辆研究所 一种嵌入式软件多版本控制系统及方法
CN111209059B (zh) * 2020-01-14 2023-03-03 中国北方车辆研究所 一种嵌入式软件多版本控制系统及方法
CN112202952A (zh) * 2020-10-22 2021-01-08 Tcl通讯(宁波)有限公司 移动终端测试方法、装置、存储介质及移动终端
CN112202952B (zh) * 2020-10-22 2022-04-22 Tcl通讯(宁波)有限公司 移动终端测试方法、装置、存储介质及移动终端
CN115686978A (zh) * 2023-01-04 2023-02-03 深圳市大晶光电科技有限公司 一种老化测试方法、系统以及pcb板
CN115686978B (zh) * 2023-01-04 2023-03-21 深圳市大晶光电科技有限公司 一种老化测试方法、系统以及pcb板

Also Published As

Publication number Publication date
CN106649098B (zh) 2019-06-04

Similar Documents

Publication Publication Date Title
CN106649098A (zh) 在终端设备上实现发布版本软件调试的方法和装置
CN105094903B (zh) 对固件进行升级的方法及装置
CN102629206B (zh) 一种嵌入式系统软件升级方法及系统
CN103514065B (zh) 具自动检测和恢复功能的电子装置及方法
CN101937349A (zh) 一种无线通信终端及其软件升级方法
CN110515634B (zh) 通过远端工具程序更新固件的方法、电脑系统以及介质
CN105988843A (zh) 移动终端固件升级方法及固件升级装置
CN103309709A (zh) 一种固件升级方法、装置及通信设备
CN101694621A (zh) 一种升级移动终端软件的方法和移动终端
CN106528158A (zh) 挂载存储卡的方法、装置及移动终端
CN105892889A (zh) 一种指纹操作方法及终端设备
CN107291626A (zh) 数据存储方法和装置
CN106125884B (zh) 一种移动终端的后台任务的处理方法及移动终端
CN102609290B (zh) 电子产品的软件升级方法
CN106980436A (zh) 录屏方法及录屏终端
CN113077834A (zh) 存储设备测试方法、装置、电视机以及存储介质
CN107066343A (zh) 移动终端中分区表的修复方法、装置及移动终端
CN111163203A (zh) 进液监测装置、移动终端和移动终端的进液监测方法
CN104199726A (zh) 设备功能扩展方法及装置
CN112463199A (zh) 一种系统升级方法及终端
CN104503786A (zh) 固件刷新方法及装置
CN104765631B (zh) 一种移动终端的应用程序恢复方法及装置
CN109491825B (zh) 一种定位开机异常问题的方法、装置、存储介质及终端
CN107423075A (zh) 驱动的注册方法以及用户终端
CN104503881B (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