CN107479870A - 一种第三方类库调用方法、装置、移动终端及存储介质 - Google Patents
一种第三方类库调用方法、装置、移动终端及存储介质 Download PDFInfo
- Publication number
- CN107479870A CN107479870A CN201710507888.1A CN201710507888A CN107479870A CN 107479870 A CN107479870 A CN 107479870A CN 201710507888 A CN201710507888 A CN 201710507888A CN 107479870 A CN107479870 A CN 107479870A
- Authority
- CN
- China
- Prior art keywords
- class
- party
- function
- libraries
- management
- 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
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/30—Creation or generation of source code
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- General Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Mobile Radio Communication Systems (AREA)
Abstract
本发明公开一种第三方类库调用方法、装置、移动终端及存储介质,涉及计算机技术领域,用以解决现有技术中对第三方类库的调用和修改复杂效率低的问题。所述方法包括:构建管理类,所述管理类中包括实现预设目标的所有成员函数,所述成员函数中包括对第三方类库的调用;通过调用所述管理类对所述第三方类库进行调用。
Description
技术领域
本发明涉及计算机技术领域,特别是涉及一种第三方类库调用方法、装置、移动终端及存储介质。
背景技术
在进行软件开发时,常常会引用第三方的类库,例如网络请求等类库。现有技术中一般做法是在需要时直接调用相应的类库。
然而,反复的直接调用会造成代码冗余,并且一旦需要对类库相关的代码进行修改,则需要对每一条调用语句进行修改,工作量很大且容易出错。
发明内容
本发明要解决的技术问题是提供一种第三方类库调用方法、装置、移动终端及存储介质,用以解决现有技术中对第三方类库的调用和修改复杂效率低的问题。
一方面,本发明提供一种第三方类库调用方法,包括:构建管理类,所述管理类中包括实现预设目标的所有成员函数,所述成员函数中包括对第三方类库的调用;通过调用所述管理类对所述第三方类库进行调用。
可选的,所述管理类的类型包括class类型或activity类型。
可选的,所述构建管理类包括:根据所述预设目标,对所述第三方类库的调用函数进行整合以形成所述成员函数;根据所述成员函数构建所述管理类。
可选的,所述通过调用所述管理类对所述第三方类库进行调用包括:调用所述成员函数;通过所述成员函数调用所述第三方类库中的标准函数;接收所述标准函数的返回值并生成所述成员函数的返回值。
可选的,所述管理类包括以下至少一种:网络请求管理类、存储管理类、登录管理类、分享管理类、支付管理类。
另一方面,本发明还提供一种第三方类库调用装置,包括:构建单元,用于构建管理类,所述管理类中包括实现预设目标的所有成员函数,所述成员函数中包括对第三方类库的调用;调用单元,用于通过调用所述构建单元构建的管理类对所述第三方类库进行调用。
可选的,所述构建单元包括:整合模块,用于根据所述预设目标,对所述第三方类库的调用函数进行整合以形成所述成员函数;构建模块,用于根据所述成员函数构建所述管理类。
可选的,所述调用单元用于:调用所述成员函数;通过所述成员函数调用所述第三方类库中的标准函数;接收所述标准函数的返回值并生成所述成员函数的返回值。
另一方面,本发明还提供一种移动终端,包括:处理器和存储器;所述存储器用于存储计算机指令,所述处理器用于运行所述存储器存储的计算机指令,以实现本发明提供的任一种第三方类库调用方法。
另一方面,本发明还提供一种计算机可读介质,所述计算机可读存储介质存储有一个或者多个程序,所述一个或者多个程序可被一个或者多个处理器执行,以实现本发明提供的任一种第三方类库调用方法。
本发明的实施例提供的第三方类库调用方法、装置、移动终端及存储介质,能够在自身与第三方类库之间建立管理类,在管理类中设置了可以实现各种调用功能的成员函数,该成员函数与第三方类库之间存在调用关系,通过调用该管理类来实现对第三方类库的调用。这样,调用主体与第三方类库即可实现解耦,当需要对第三方类库相关的代码进行修改时,无需对代码中的每次调用逐个修改,只需要修改manger即可,因此大大提高了工作效率、有效降低了维护成本。
附图说明
图1是本发明实施例提供的第三方类库调用方法的一种流程图;
图2是本发明实施例提供的第三方类库调用方法的一种过程示意图;
图3是本发明实施例提供的第三方类库调用方法的另一种过程示意图;
图4是本发明实施例提供的第三方类库调用装置的一种结构示意图。
具体实施方式
以下结合附图对本发明进行详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不限定本发明。
如图1所示,本发明实施例提供一种第三方类库调用方法,包括:
S11,构建管理类,所述管理类中包括实现预设目标的所有成员函数,所述成员函数中包括对第三方类库的调用;
S12,通过调用所述管理类对所述第三方类库进行调用。
本发明的实施例提供的第三方类库调用方法,能够在自身与第三方类库之间建立管理类,在管理类中设置了可以实现各种调用功能的成员函数,该成员函数与第三方类库之间存在调用关系,通过调用该管理类来实现对第三方类库的调用。这样,调用主体与第三方类库即可实现解耦,当需要对第三方类库相关的代码进行修改时,无需对代码中的每次调用逐个修改,只需要修改manger即可,因此大大提高了工作效率、有效降低了维护成本。
可选的,根据第三方类库的类型的不同,构建的管理类的类型也有所不同。例如,对于不涉及界面实现的第三方类库,可以构建class类型的管理类,而对于涉及界面实现的第三方类库,可以构建activity类型的管理类。
具体而言,在步骤S11中构建管理类可具体包括:
根据所述预设目标,对所述第三方类库的调用函数进行整合以形成所述成员函数;
根据所述成员函数构建所述管理类。
也就是说,可以根据调用主体对第三方类库调用的目标,对调用实现的各种功能进行整合。例如,在本发明的一个实施例中,存在对第三方类库中的两个不同函数的连续调用,然后用这两个函数的调用返回值进行进一步处理,则可以在构建的管理类中将这两个函数整合成一个成员函数,从而简化了调用步骤。当然,这种对调用函数的整合也可以基于资源的共享和有效利用,例如将具有公共资源需求的函数整合在一起等,本发明的实施例对此不做限定。需要说明的是,本发明实施例中的整合并不是简单的相加,而是具有一定逻辑关系的结合。
具体的,在步骤S12中,通过调用所述管理类对所述第三方类库进行调用可包括:
调用所述成员函数;
通过所述成员函数调用所述第三方类库中的标准函数;
接收所述标准函数的返回值并生成所述成员函数的返回值。
举例说明,在发明的一个实施例中,管理类中包括成员函数A,在管理类中有A=f(B,C),即A是B、C的函数,其中,B和C为第三方类库中的标准函数,则当需要调用第三方类库中的标准函数B和标准函数C,并令其生成A时,可以不直接调用第三方类库中的B和C,而是通过管理类调用成员函数A,从而简化了调用主体的复杂度。
可选的,根据第三方类库实现功能的不同,对应的管理类也具有不同的功能,并且同一个管理类也可以包括对多个不同的第三方类库的调用。本发明的实施例对此不作限定。可选的,管理类可以包括以下一种或多种:网络请求管理类、存储管理类、登录管理类、分享管理类、支付管理类。
下面通过具体实施例对本发明提供的第三方类库调用方法进行详细说明。
如图2所示,本实施例中,构建的管理类为网络请求管理类,用于调用第三方类库以实现网络请求操作,本实施例中的第三方类库的调用方法可包括如下步骤:
当调用主体需要进行网络通信,调用网络请求时,可以调用网络请求管理类;可选的,该调用请求中可以携带调用参数,以使管理类根据该调用参数实现相应的功能;
网络请求管理类根据具体的调用请求在内部进行调用转换,将该调用请求转换成对第三方类库的调用;可选的,如果调用主体携带了调用参数,可以将该调用参数传递给第三方类库;
第三方类库执行网络请求操作,并将操作返回值返回给管理类,由管理类进行进一步处理后,返回给调用主体。
即,当接入一个网络请求类库,管理类manager中会实现所有请求操作,请求回来的数据也会经过他的处理返给调用主体。
如图3所示,在本发明的另一个实施例中,接入的第三方类库是一个登录注册带有界面的类库,则本实施例中的管理类可以是一个Activity类型的管理类,通过调用主体传过来的参数来区分需要显示什么界面调用第三方类库中的哪个sdk函数。
本发明的实施例提供的第三方类库的调用方法,在调用主体中创建一个Manager类,它可以为一个class文件也可以是一个Activity,主要取决于所接入的第三方类库是什么类型。在管理类manager中所做的就是创建各个方法来为调用主体提供调用。可选的,可以通过单例模式为manager设置一个或多个对象,将第三方类库中需要调用的方法都封装在manager中,而调用主体中只是调用管理类manager而不会直接与第三方类库交互。这样,调用主体与第三方类库即可实现解耦,当需要对第三方类库相关的代码进行修改时,无需对代码中的每次调用逐个修改,只需要修改manger即可,因此大大提高了工作效率、有效降低了维护成本。
相应的,如图4所示,本发明的实施例还提供一种第三方类库调用装置,包括:
构建单元41,用于构建管理类,所述管理类中包括实现预设目标的所有成员函数,所述成员函数中包括对第三方类库的调用;
调用单元42,用于通过调用所述构建单元构建的管理类对所述第三方类库进行调用。
本发明的实施例提供的第三方类库调用装置,能够在自身与第三方类库之间建立管理类,在管理类中设置了可以实现各种调用功能的成员函数,该成员函数与第三方类库之间存在调用关系,通过调用该管理类来实现对第三方类库的调用。这样,调用主体与第三方类库即可实现解耦,当需要对第三方类库相关的代码进行修改时,无需对代码中的每次调用逐个修改,只需要修改manger即可,因此大大提高了工作效率、有效降低了维护成本。
可选的,构建单元41可包括:
整合模块,用于根据所述预设目标,对所述第三方类库的调用函数进行整合以形成所述成员函数;
构建模块,用于根据所述成员函数构建所述管理类。
可选的,调用单元42可用于:
调用所述成员函数;
通过所述成员函数调用所述第三方类库中的标准函数;
接收所述标准函数的返回值并生成所述成员函数的返回值。
可选的,所述管理类的类型包括class类型或activity类型。
可选的,所述管理类包括以下至少一种:网络请求管理类、存储管理类、登录管理类、分享管理类、支付管理类。
相应的,本发明的实施例还提供一种移动终端,包括:处理器和存储器;所述存储器用于存储计算机指令,所述处理器用于运行所述存储器存储的计算机指令,以实现前述实施例提供的任一种第三方类库调用方法,因此也能实现相应的技术效果,前文已经进行了详细的说明,此处不再赘述。
相应的,本发明的实施例还提供一种计算机可读介质,所述计算机可读存储介质存储有一个或者多个程序,所述一个或者多个程序可被一个或者多个处理器执行,以实现前述实施例提供的任一种第三方类库调用方法,因此也能实现相应的技术效果,前文已经进行了详细的说明,此处不再赘述。
需要说明的是,在本文中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者装置不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者装置所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括该要素的过程、方法、物品或者装置中还存在另外的相同要素。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到上述实施例方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质(如ROM/RAM、磁碟、光盘)中,包括若干指令用以使得一台终端设备(可以是手机,计算机,服务器,空调器,或者网络设备等)执行本发明各个实施例所述的方法。
尽管为示例目的,已经公开了本发明的优选实施例,本领域的技术人员将意识到各种改进、增加和取代也是可能的,因此,本发明的范围应当不限于上述实施例。
Claims (10)
1.一种第三方类库调用方法,其特征在于,包括:
构建管理类,所述管理类中包括实现预设目标的所有成员函数,所述成员函数中包括对第三方类库的调用;
通过调用所述管理类对所述第三方类库进行调用。
2.根据权利要求1所述的方法,其特征在于,所述管理类的类型包括class类型或activity类型。
3.根据权利要求1所述的方法,其特征在于,所述构建管理类包括:
根据所述预设目标,对所述第三方类库的调用函数进行整合以形成所述成员函数;
根据所述成员函数构建所述管理类。
4.根据权利要求1至3中任一项所述的方法,其特征在于,所述通过调用所述管理类对所述第三方类库进行调用包括:
调用所述成员函数;
通过所述成员函数调用所述第三方类库中的标准函数;
接收所述标准函数的返回值并生成所述成员函数的返回值。
5.根据权利要求1至3中任一项所述的方法,其特征在于,所述管理类包括以下至少一种:网络请求管理类、存储管理类、登录管理类、分享管理类、支付管理类。
6.一种第三方类库调用装置,其特征在于,包括:
构建单元,用于构建管理类,所述管理类中包括实现预设目标的所有成员函数,所述成员函数中包括对第三方类库的调用;
调用单元,用于通过调用所述构建单元构建的管理类对所述第三方类库进行调用。
7.根据权利要求6所述的装置,其特征在于,所述构建单元包括:
整合模块,用于根据所述预设目标,对所述第三方类库的调用函数进行整合以形成所述成员函数;
构建模块,用于根据所述成员函数构建所述管理类。
8.根据权利要求6或7所述的装置,其特征在于,所述调用单元用于:
调用所述成员函数;
通过所述成员函数调用所述第三方类库中的标准函数;
接收所述标准函数的返回值并生成所述成员函数的返回值。
9.一种移动终端,其特征在于,包括:处理器和存储器;
所述存储器用于存储计算机指令,所述处理器用于运行所述存储器存储的计算机指令,以实现权利要求1至5中任一项所述的第三方类库调用方法。
10.一种计算机可读介质,其特征在于,所述计算机可读存储介质存储有一个或者多个程序,所述一个或者多个程序可被一个或者多个处理器执行,以实现权利要求1至5中任一项所述的第三方类库调用方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710507888.1A CN107479870A (zh) | 2017-06-28 | 2017-06-28 | 一种第三方类库调用方法、装置、移动终端及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710507888.1A CN107479870A (zh) | 2017-06-28 | 2017-06-28 | 一种第三方类库调用方法、装置、移动终端及存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN107479870A true CN107479870A (zh) | 2017-12-15 |
Family
ID=60596112
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201710507888.1A Pending CN107479870A (zh) | 2017-06-28 | 2017-06-28 | 一种第三方类库调用方法、装置、移动终端及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN107479870A (zh) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110928607A (zh) * | 2019-11-21 | 2020-03-27 | 浙江大搜车软件技术有限公司 | 业务实现方法、装置、计算机设备及存储介质 |
CN111966355A (zh) * | 2020-09-03 | 2020-11-20 | 平安国际智慧城市科技股份有限公司 | 项目运行方法、装置、设备及计算机存储介质 |
CN112579060A (zh) * | 2019-09-30 | 2021-03-30 | 北京国双科技有限公司 | 类库构建方法和装置、存储介质及电子设备 |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106446672A (zh) * | 2016-07-25 | 2017-02-22 | 中国科学院大学 | 一种Android第三方类库权限隔离方法及装置 |
-
2017
- 2017-06-28 CN CN201710507888.1A patent/CN107479870A/zh active Pending
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106446672A (zh) * | 2016-07-25 | 2017-02-22 | 中国科学院大学 | 一种Android第三方类库权限隔离方法及装置 |
Non-Patent Citations (1)
Title |
---|
佚名: "Android 网络工具类NetworkUtils使用", 《HTTPS://BLOG.CSDN.NET/DHL_1986/ARTICLE/DETAILS/53612781》 * |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112579060A (zh) * | 2019-09-30 | 2021-03-30 | 北京国双科技有限公司 | 类库构建方法和装置、存储介质及电子设备 |
CN110928607A (zh) * | 2019-11-21 | 2020-03-27 | 浙江大搜车软件技术有限公司 | 业务实现方法、装置、计算机设备及存储介质 |
CN110928607B (zh) * | 2019-11-21 | 2024-05-14 | 浙江大搜车软件技术有限公司 | 业务实现方法、装置、计算机设备及存储介质 |
CN111966355A (zh) * | 2020-09-03 | 2020-11-20 | 平安国际智慧城市科技股份有限公司 | 项目运行方法、装置、设备及计算机存储介质 |
CN111966355B (zh) * | 2020-09-03 | 2023-12-12 | 深圳赛安特技术服务有限公司 | 项目运行方法、装置、设备及计算机存储介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN102375731B (zh) | 一种免编码集成应用软件平台*** | |
US10936589B1 (en) | Capability-based query planning for heterogenous processing nodes | |
CN100594498C (zh) | 海量数据实时处理架构及用于该架构的实时随需处理平台 | |
CN102033848B (zh) | 基于soa的三维设计***集成方法及*** | |
CN108431796A (zh) | 分布式资源管理***和方法 | |
CA2386272A1 (en) | Collaborative design | |
CA3000422A1 (en) | Workflow service using state transfer | |
CN110162388A (zh) | 一种任务调度方法、***及终端设备 | |
CN110661842B (zh) | 一种资源的调度管理方法、电子设备和存储介质 | |
CN108255614A (zh) | 一种基于微服务架构的接口调用***及方法 | |
CN102917052A (zh) | 一种云计算***中资源分配的方法 | |
CN105159736A (zh) | 一种支持性能分析的SaaS软件部署方案的构建方法 | |
CN112732466A (zh) | 一种服务调用方法、装置和*** | |
CN110245029A (zh) | 一种数据处理方法、装置、存储介质和服务器 | |
CN107479870A (zh) | 一种第三方类库调用方法、装置、移动终端及存储介质 | |
CN104754008A (zh) | 网络存储节点、网络存储***以及用于网络存储节点的装置和方法 | |
US20060031444A1 (en) | Method for assigning network resources to applications for optimizing performance goals | |
CN108600344A (zh) | 一种网络访问请求调度方法、装置和存储介质 | |
CN110096258A (zh) | 一种基于Terraform的OpenStack基础设施架构管理的方法 | |
CN113326123A (zh) | 一种基于容器技术的生物信息分析计算***及方法 | |
CN116795647A (zh) | 一种数据库异构资源管理与调度方法、装置、设备及介质 | |
CN103561113B (zh) | Web Service接口的生成方法及装置 | |
CN109739872A (zh) | 一种sql语句处理的实现方法、***及操作方法 | |
CN107402807A (zh) | 在计算机***中有效提升多任务执行效率的方法、***和处理器 | |
CN104166581A (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 | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20171215 |
|
RJ01 | Rejection of invention patent application after publication |