admin 管理员组

文章数量: 1086019


2024年4月20日发(作者:ssl协议未开启怎么修复)

(19)中华人民共和国国家知识产权局

(12)发明专利说明书

(21)申请号 CN2.4

(22)申请日 2012.10.31

(71)申请人 广州市久邦数码科技有限公司

地址 510055 广东省广州市中山三路33号中华国际中心A座16-17层

(72)发明人 邓裕强 黄爱华 梁国盛 朱海鑫 黄定伍

(74)专利代理机构 广州新诺专利商标事务所有限公司

代理人 华辉

(51)

G06F9/44

权利要求说明书 说明书 幅图

(10)申请公布号 CN 102981824 A

(43)申请公布日 2013.03.20

(54)发明名称

一种获取安卓应用程序的入口及图

标的方法

(57)摘要

本发明公开了一种获取安卓应用程

序的入口及图标的方法,用于查找安卓应

用程序的入口及图标,包括以下步骤:反

编译所述安卓应用程序,获取安卓应用程

序的配置文件;解析所述配置文件,查找

安卓应用程序的启动入口,获取该启动入

口的入口信息;根据所述入口信息获取安

卓应用程序的入口程序名称和入口图标。

本发明解决了反编译安卓应用程序后,用

户无法获知入口图标的具体位置的问题,

也解决了用户无法获知该安卓应用程序有

多少个入口图标的问题。

法律状态

法律状态公告日

法律状态信息

法律状态

权 利 要 求 说 明 书

1.一种获取安卓应用程序的入口及图标的方法,用于查找安卓应用程序的入口及图

标,

步骤一:反编译所述安卓应用程序,获取安卓应用程序的配置文件;

步骤二:解析所述配置文件,查找安卓应用程序的启动入口,获取该启动入口的入

口信

步骤三:根据所述入口信息获取安卓应用程序的入口程序名称和入口图标。

2.根据权利要求1所述的获取安卓应用程序的入口及图标的方法,其特征在于,步

骤一 具体包括:通过JAVA虚拟主机合并所述反编译安卓应用程

线程,获取安卓应用程序的

息;

其特征在于,包括以下步骤:

序的线程和所述读取错误输出流的

配置文件,所述配置文件包括工程配置文件、基本信息配置文件

和资源配置文件。

3.根据权利要求2所述的获取安卓应用程序的入口及图标的方法,其特征在于,步

骤二 具体包括:通过SAX遍历工程配置文件,判断工程配置文件

是否与预设的属性值相同,若是,

面控制

中各个界面控制器组件的属性值

该界面控制器组件为安卓应用程序的启动入口,获取该界

组件的入口程序名称值和入口图标名称值。

4.根据权利要求3所述的获取安卓应用程序的入口及图标的方法,其特征在于,所

述步 骤三具体是:所述入口图标名称值主要由目标地址和目标图标

主要由目标地址和目标程序值组成,

称,根

值组成,所述入口程序名称值

根据入口程序名称值从基本配置文件中查找入口程序名

据入口图标名称值从资源配置文件中查找入口图标。

5.根据权利要求4所述的获取安卓应用程序的入口及图标的方法,其特征在于,所

述步 骤三具体是:根据入口程序名称值的目标地址,从目标地址指

值与目标程序值相同的入口程序名

资源配

向的基本配置文件中查找程序

称;根据入口程序图标值的目标地址,从目标地址指向的

置文件中查找图标值与目标图标值相同的入口图标。

6.根据权利要求1所述的获取安卓应用程序的入口及图标的方法,其特征在于,步

骤三

该路径。

之后还包括以下步骤:根据预设的路径,存储所述入口图标至

说 明 书

技术领域

本发明涉及安卓应用程序领域,尤其是一种获取安卓应用程序的入口及图标的方法。

背景技术

安卓系统(Android)是基于Linux开放性内核的操作系统。随着越来越多的人使

用安卓 系统手机,安卓应用程序也越来越多,安卓应用程序的图标给

丰富了安卓的UI系统。由于安卓应用程

市面上原有的解压安

用户带来了界面的炫酷体验,

序可能有多个入口,每个入口对应一个图标。因此,

卓应用程序再到用户自己到相应的目录查找图标的方法已经无法满足用

户的需求。原因是一般用户根本不知道安卓应用程序图标具体的位置也不知

几个。这样获取Android安卓应用程序的入口及图标则

自己的源码与素材。一般用户也很

怎样才能更加

道程序的入口有

显得越来越困难,开发者也不愿开放

难在网上找到相应的Android安卓应用程序的入口与图标,

高效更加快速的获取Android安卓应用程序的入口与图标显的尤为重要。用户

获得这些入口程序名称和入口图标之后,可以根据自己的习惯,修改相应的

程序名称。 入口图标和入口

发明内容

本发明的目的,就是克服现有技术的不足,提供一种可以获取安卓应用程序名称和

入口 图标名称的方法,本方法可以获取安卓应用程序所有入口程序名称和

手动查找多个入口图标,进而修改所需入口程序

入口图标,免除了用户

名称和入口图标的麻烦。

为了达到上述目的,采用如下技术方案:

一种获取安卓应用程序的入口及图标的方法,用于查找安卓应用程序的入口及图标,

步骤一:反编译所述安卓应用程序,获取安卓应用程序的配置文件;

步骤二:解析所述配置文件,查找安卓应用程序的启动入口,获取该启动入口的入

口信

步骤三:根据所述入口信息获取安卓应用程序的入口程序名称和入口图标。

进一步地,步骤一具体包括:通过JAVA虚拟主机合并所述反编译安卓应用程序

的线程和 所述读取错误输出流的线程,获取安卓应用程序的配置文件,

件、基本信息配置文件和资源配置文件。

息;

括以下步骤:

所述配置文件包括工程配置文

进一步地,步骤二具体包括:通过SAX遍历工程配置文件,判断工程配置文件中

各个界 面控制器组件的属性值是否与预设的属性值相同,若是,该界

的启动入口,获取该界面控制组件的入口

面控制器组件为安卓应用程序

程序名称值和入口图标名称值。

进一步地,所述步骤三具体是:所述入口图标名称值主要由目标地址和目标图标值

组成, 所述入口程序名称值主要由目标地址和目标程序值组成,根据

件中查找入口程序名称,根据入口图标名

入口程序名称值从基本配置文

称值从资源配置文件中查找入口图标。

进一步地,所述步骤三具体是:根据入口程序名称值的目标地址,从目标地址指向

的基 本配置文件中查找程序值与目标程序值相同的入口程序名称;根据入

址,从目标地址指向的资源配置文件中查找图标

口程序图标值的目标地

值与目标图标值相同的入口图标。

进一步地,根据预设的路径,存储所述入口图标至该路径。

与现有技术相比,本发明的有益效果在于:

1.本发明解决了反编译安卓应用程序后,用户无法获知入口图标的具体位置的问

题,也

2.本发明可以通过合并反编译安卓应用程序的线程和读取错误输出流的线程,可

以有效

3.本发明可以获取到安卓应用程序的所有入口图标,用户可以根据反编译的结果

找到入

4.本发明可以获取安卓应用程序的入口程序的名称,让用户可以获得每个入口程

序的名

附图说明

图1是本发明第一实施例所述的获取安卓应用程序的入口及图标的方法的步骤流程

图;

图2是本发明第一实施例步骤二的具体实现方法的步骤流程图;

图3是本发明第二实施例所述的获取安卓应用程序的入口及图标的方法的步骤流程

称,还可以修改入口程序的名称。

口图标,修改入口图标。

快速地获得反编译后的应用图标具体位置。

解决了用户无法获知该安卓应用程序有多少个入口图标的问题。

图。

具体实施方式

下面将结合附图以及具体实施方法来详细说明本发明,在本发明的示意性实施及说

明用

实施例一

请参阅图1,其为本发明的一种获取安卓应用程序的入口及图标的方法的步骤流程

图,用

S10:反编译所述安卓应用程序,获取安卓应用程序的配置文件。

具体地,提供一安卓应用程序,通过JAVA虚拟主机合并所述反编译安卓应用程

序的线程 和所述读取错误输出流的线程,获取安卓应用程序的配置文件,

文件、基本信息配置文件和资源配置文件,

安卓应用程序的全局模块,

图标名

于查找安卓应用程序的入口及入口图标,包括以下步骤:

来解释本发明,但并不作为对本发明的限定。

所述配置文件包括工程配置

所述工程配置文件()包括

所述基本信息配置文件()定义安卓应用程序的名称,

称以及一些配置信息。所述资源配置文件包括drawable-hdpi文件夹、drawable-

mdpi 文件和drawable文件夹,所述资源配置文件主要用来存放安卓应用

片文件。反编译过程中主要是通过java虚拟机

线程与读取错误输出流的线

程序所要用到的声音、图

的进程合并机制,执行反编译安卓应用程序的

程进行合并为一个进程,这个进程合并线程的技术主要是采用由

Java API官方文档所提供的技术接口实现。通过合并进程加快了反编译

速度。 Android应用程序的

S20:解析所述配置文件,查找安卓应用程序的启动入口,获取该启动入口的入口

信息。

请参阅图2,其为步骤S20的具体实现方法的步骤流程图。通过SAX遍历工程配

置文件 (),判断工程配置文件中各个界面控制

<activity-alias>)的属性值是否与预设的属

用程序的启动入口,获取该

器组件(<activity>与

性值相同。若是,该界面控制器组件为安卓应

界面控制组件的入口程序名称值和入口图标名称值。所述

SAX(Simple API for XML)是个循序存取XML的解析器API。SAX提供一个

取资料。 机制从XML文件读

对工程配置文件()进行解析,主要是去遍历工程配置文件,

获取 根节点<application>下的所有子节点<activity>与

与<activity-alias>的属<activity-alias>,然后再对<activity>

性值进行判断。主要是根据<activity>与<activity-alias>的子节

点<intent-filter>下的子节点<action>的属性值是否等于

与<category>的属性值是否等于

点<activity>与

“”

“ER”。若等于,则子节

<activity-alias>是安卓应用程序的启动入口。只有同时满足这两个条件才

是安卓应用程序的启动入口。在节点<activity>与<activity-alias>

包括入口图标名称值和入口程序名称值。 中查找所述入口信息,

具体地,所述入口图标名称值主要由目标地址和目标图标值组成,所述入口程序名

称值 主要由目标地址和目标程序值组成,根据入口程序名称值从基本配置

称,根据入口图标名称值从资源配置文件中查找文件中查找入口程序名

入口图标。

进一步地,根据入口程序名称值的目标地址,从目标地址指向的基本配置文件中查

找程 序值与目标程序值相同的入口程序名称;根据入口程序图标值的目标

的资源配置文件中查地址,从目标地址指向

找图标值与目标图标值相同的入口图标。

以Android应用程序Go联系人的安装程序为例:首先上传Go联系人的apk安装

文件, 然后进行反编译安卓应用程序Go联系人,获得工程配置文件

工程配置文件,从工程配置文件中找到根

<activity-

()。遍历

节点<application>下的所有子节点<activity>与

alias>,然后再对每个<activity>与<activity-alias>下的子节点进行判断。

首 先找到的是工程配置文件中第一个节点<activity>,该节点

的<action>属性值等于<activity>下的<intent-filter>

“”且<category>属性值等于

“ER”,则满足安卓应用程序的入口条件,所

<activity>节点是本安卓应用程序的一个启动入口。以一

<activity>节点的入口程序名

以这个

款GO联系人安卓应用程序为例,其

称值为“string/application_name”与入口图标名称值为

S30:根据所述启动入口的入口信息获取安卓应用程序的入口程序名称和入口图标。

根据入口信息“string/application_name”和“drawable/app_icon_contact”,所

述“”代表指向,所述“/”指目标地址和目标图标值的分界线,所述“string”是

址,入口信息指向基本配置文件()。同理,所述

信息指向drawable-hdpi文件夹、

“application_name”、

“drawable/app_icon_contact”。所述“string/application_name”和

“drawable/app_icon_contact”为入口信息。

目标地

“drawable”是目标地址,入口

drawable-mdpi文件夹和drawable文件夹。所述

“app_icon_contact”为目标图标值。从基本配置文件() 中查找

与目标图标值“application_name”相同的入口图标,从drawable-hdpi文件夹、

drawable-mdpi文件夹、drawable文件夹中查找与目标图标值

入口图标。 “app_icon_contact”相同的

接着,再往下继续遍历<activity-alias>的<intent-filter>,判断

<action>与 <category>是否满足程序入口的条件,若满足,再

直到工程配置文件解析完毕。

去获取<activity-alias>对应的入口图标,

解析完工程配置文件后,可以获得一个以上的入口图标。

以安卓应用程序Go联系人查找入口图标为例:首先解析工程配置文件获取到启动

入口

的入口图标名称值,两个程序入口的启动入口的入口图标名称值分别

“drawable/app_icon_dialer”、“drawable/app__icon_contact”。先提取入

的目标地址“drawable”,目标图标值“app_icon_dialer”和

到res目录下的drawable-hdpi文件夹、

分别为

口图标名称值

“app__icon_contact”,再分别

drawable-mdpi文件夹和drawable文件夹找图片名

“app_icon_dialer”、“app_icon_contact”的图标,获得入口图标。

从解析工程配置文件获取到程序的启动入口的入口程序名称值,根据入口程序名称

值分 别在安卓应用程序的res目录下的values

文件进行解析,再根文件夹下找到基本信息配置文件,对基本信息配置

据入口程序名称值找到相应的入口程序的入口程序名称。以安卓应用程

序Go联系人查找入口程序的名称为例:首先解析工程配置文件获得入口程

值,2个入口程序的入口程序名称值分别为

“string/contact_shortcut”。先对入口程序名称值进行处

再提取目标程序值“go_dial”和

夹下的基本信息配置文件进

序的入口程序名称

“string/go_dial”、

理,提取目标地址“string”,

“contact_shortcut”,再对res目录下的values文件

行解析。所述基本信息配置文件中对目标程序值“go_dial”和

“contact_shortcut”的入口程序的名称的定义。从基本信息配置文件获取目标

“go_dial”和“contact_shortcut”的入口程序的名称分别为:

程序值

GO Dialer、GO Contacts。

到本步骤为止,已经可以从获得入口程序名称和入口图标。获取安卓应用程序的入

口图 标实际就是获取了该入口图标的存放路径。用户可以根据获得的入口

在解析的配置文件中修改相应入口程序名称,以

图标。通过重命名配置文件

新的入

程序名称和入口图标,

及使用其他的图标代替安卓应用程序的入口

中的入口图标名称,将该重命名的入口图标名称指向需要使用的

口图标或者使用原来入口图标名称命名需要使用的入口图标,将新的入口图标放置

到 原有入口图标的路径就可以替换原入口图标。本实施例可以自动获取

序名称,通过修改或者替换入口图标或者入口程

符合用户的需求,在一定程

到入口图标以及入口程

序名称,让新的入口图标或者入口程序名称

度上丰富了用户的体验。

实施例二

请参阅图3,其为本实施的获取安卓应用程序的入口及图标的方法的步骤流程图。

本实施

S40:根据预设的路径,存储所述入口图标至该路径。

根据用户预设的路径,将获得的入口图标复制或剪切至该路径。存储获得的入口图

标, 可以对入口图标备份,防止用户用新入口图标替换原入口图标后,无

获取的入口图标存储至预设的路径,也可以让用

用户可以根据所述路径的入

入口图

例与实施例一的区别在于,步骤S30之后还包括以下步骤:

法改回原入口图标。将

户对安卓应用程序的所有入口图标一目了然。

口图标名称,修改新入口图标名称与原入口图标名称一致,将新

标放置在原入口图标的路径,实现入口图标的替换。

以上对本发明实施例所提供的技术方案进行了详细介绍,本文中应用了具体个例对

本发 明实施例的原理以及实施方式进行了阐述,以上实施例的说明只适用

例的原理;同时,对于本领域的一般技术人员,

用范围上均会有改变之处,

于帮助理解本发明实施

依据本发明实施例,在具体实施方式以及应

综上所述,本说明书内容不应理解为对本发明的限制。


本文标签: 入口 图标 应用程序 配置文件 名称