CN117667248A - 一种第三方库管理方法、装置、电子设备及存储介质 - Google Patents

一种第三方库管理方法、装置、电子设备及存储介质 Download PDF

Info

Publication number
CN117667248A
CN117667248A CN202311363966.7A CN202311363966A CN117667248A CN 117667248 A CN117667248 A CN 117667248A CN 202311363966 A CN202311363966 A CN 202311363966A CN 117667248 A CN117667248 A CN 117667248A
Authority
CN
China
Prior art keywords
party library
party
instruction
library management
project
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
Application number
CN202311363966.7A
Other languages
English (en)
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.)
Tianyi Digital Life Technology Co Ltd
Original Assignee
Tianyi Digital Life Technology 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 Tianyi Digital Life Technology Co Ltd filed Critical Tianyi Digital Life Technology Co Ltd
Priority to CN202311363966.7A priority Critical patent/CN117667248A/zh
Publication of CN117667248A publication Critical patent/CN117667248A/zh
Pending legal-status Critical Current

Links

Classifications

    • YGENERAL 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
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE 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/00Energy efficient computing, e.g. low power processors, power management or thermal management

Landscapes

  • Stored Programmes (AREA)

Abstract

本申请实施例提供了一种第三方库管理方法、装置、电子设备及存储介质,属于软件开发领域。该方法包括:在Android Studio中启动项目和第三方库管理插件;通过第三方库管理插件检测项目中未被使用的第三方库,删除第三方库的文件,并在项目的配置文件中删除第三方库的配置;响应于第一指令,在Android Studio上显示第三方库管理页面;响应于第二指令,在第三方库管理页面显示第二指令对应的操作结果,第二指令包括搜索指令,操作结果包括根据搜索指令查询得到的第三方库的位置信息,本申请实施例能够减小项目的体积,搜索定位第三方库的位置,提高第三方库的管理效率。

Description

一种第三方库管理方法、装置、电子设备及存储介质
技术领域
本申请涉及软件开发技术领域,尤其涉及一种第三方库管理方法、装置、电子设备及存储介质。
背景技术
目前,Android Studio项目中会有大量的本地依赖库,而在需要更新、替换项目中某些第三方库的时候,经常会忘记删除弃用的第三方库文件,造成打包的时候的程序包的体积增大。目前Android Studio项目的第三方库,一般都是开发人员手动放置在libs文件夹内,libs文件夹用于存储Android Studio项目的第三方库文件。如果某个项目的依赖很多,这会导致开发人员在管理第三方库的时候,操作冗长、麻烦、效率低下。
因此,以上技术问题,亟待业内解决。
发明内容
本申请实施例的主要目的在于提出一种第三方库管理方法、装置、电子设备及存储介质,以克服现有技术中的不足。
本申请实施例公开了如下技术方案:
一方面,本申请实施例提供了一种第三方库管理方法,所述方法包括:
在Android Studio中启动项目和第三方库管理插件,所述第三方库管理插件是通过intellij工具构建的插件;
通过第三方库管理插件检测所述项目中未被使用的第三方库,删除所述第三方库的文件,并在所述项目的配置文件中删除所述第三方库的配置;
响应于第一指令,在Android Studio上显示第三方库管理页面,所述第三方库管理页面包括列表展示区域,所述列表展示区域包括搜索区域,所述列表展示区域用于列表显示所述项目中所有的第三方库;
响应于第二指令,在所述第三方库管理页面显示所述第二指令对应的操作结果,所述第二指令包括搜索指令,所述操作结果包括根据所述搜索指令查询得到的第三方库的位置信息。
在其中一个实施例中,所述第二指令还包括新增指令,所述响应于第二指令,在所述第三方库管理页面显示所述第二指令对应的操作结果,包括:
响应于第二指令,将新增的第三方库的文件导入所述项目,在所述项目的配置文件中完成所述第三方库的配置,在所述第三方库管理页面的列表展示区域中显示新增操作后所述项目中所有的第三方库。
在其中一个实施例中,所述第二指令还包括删除指令,所述响应于第二指令,在所述第三方库管理页面显示所述第二指令对应的操作结果,包括:
响应于第二指令,在所述项目的配置文件中删除第三方库的配置,删除所述第三方库的文件,在所述列表展示区域显示删除操作后所述项目中所有的第三方库。
在其中一个实施例中,所述第二指令还包括替换指令,所述响应于第二指令,在所述第三方库管理页面显示所述第二指令对应的操作结果,包括:
响应于第二指令,在所述项目的配置文件中删除替换前的第三方库的配置,删除所述替换前的第三方库的文件,将替换后的第三方库的文件导入所述项目,在所述项目的配置文件中完成所述替换后的第三方库的配置,在所述第三方库管理页面的列表展示区域中显示替换操作后所述项目中所有的第三方库。
在其中一个实施例中,所述在Android Studio中启动项目和第三方库管理插件,包括:
在Android Studio中启动项目;
若所述第三方库管理插件初次启动,响应于启动指令,启动所述第三方库管理插件;
若所述第三方库管理插件并非初次启动,则控制所述第三方库管理插件与所述Android Studio同步启动。
在其中一个实施例中,所述方法还包括:
采用ModelWizard对象构建所述第三方库管理插件,所述第三方库管理插件的样式采用Android Studio样式。
在其中一个实施例中,所述方法还包括:
通过intellij工具构建所述第三方库管理插件;
在Android Studio的设置中安装所述第三方库管理插件。
另一方面,本申请实施例提供了一种第三方库管理装置,所述装置包括:
启动模块,用于在Android Studio中启动项目和第三方库管理插件,所述第三方库管理插件是通过intellij工具构建的插件;
删除模块,用于通过第三方库管理插件检测所述项目中未被使用的第三方库,删除所述第三方库的文件,并在所述项目的配置文件中删除所述第三方库的配置;
页面显示模块,用于响应于第一指令,在Android Studio上显示第三方库管理页面,所述第三方库管理页面包括列表展示区域,所述列表展示区域包括搜索区域,所述列表展示区域用于列表显示所述项目中所有的第三方库;
结果显示模块,用于响应于第二指令,在所述第三方库管理页面显示所述第二指令对应的操作结果,所述第二指令包括搜索指令,所述操作结果包括根据所述搜索指令查询得到的第三方库的位置信息。
另一方面,本申请实施例提供了一种电子设备,所述电子设备包括存储器和处理器,所述存储器存储有计算机程序,所述处理器执行所述计算机程序时实现上述的第三方库管理方法。
另一方面,本申请实施例提供了一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,所述计算机程序被处理器执行时实现上述的第三方库管理方法。
本申请提出的第三方库管理方法、装置、电子设备及存储介质,其通过在AndroidStudio中启动项目和第三方库管理插件,通过第三方库管理插件检测项目中未被使用的第三方库,自动删除未被使用的第三方库的文件,并在项目的配置文件中自动删除对应的配置,从而减小了项目的体积;通过响应于第一指令,在Android Studio上显示第三方库管理页面,从而对第三方库文件进行可视化管理,提高了第三方库的管理效率,还通过响应于第二指令,在第三方库管理页面显示第二指令对应的操作结果,第二指令包括搜索指令,操作结果包括根据搜索指令查询得到的第三方库的位置信息,从而通过搜索定位第三方库的位置,便于管理Android Studio项目的第三方库。
附图说明
图1是本申请实施例提供的第三方库管理方法的流程图;
图2是图1中的步骤S104的一种流程图;
图3是图1中的步骤S104的一种流程图;
图4是图1中的步骤S104的一种流程图;
图5是图1中的步骤S101的一种流程图;
图6是图1中的步骤S101的一种流程图;
图7是图1中的步骤S101的一种流程图;
图8是本申请实施例的一种第三方库管理界面图;
图9是本申请实施例提供的第三方库管理装置的结构示意图;
图10是本申请实施例提供的电子设备的硬件结构示意图。
具体实施方式
为了使本申请的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本申请进行进一步详细说明。应当理解,此处所描述的具体实施例仅用以解释本申请,并不用于限定本申请。
需要说明的是,虽然在装置示意图中进行了功能模块划分,在流程图中示出了逻辑顺序,但是在某些情况下,可以以不同于装置中的模块划分,或流程图中的顺序执行所示出或描述的步骤。说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。
除非另有定义,本文所使用的所有的技术和科学术语与属于本申请的技术领域的技术人员通常理解的含义相同。本文中所使用的术语只是为了描述本申请实施例的目的,不是旨在限制本申请。
首先,对本申请中涉及的若干名词进行解析:
Intellij(IntelliJ IDEA):是一款由JetBrains开发的集成开发环境(IDE),主要用于Java开发。它提供了丰富的功能,能够帮助开发人员高效地编写、调试和部署Java应用程序。IntelliJ IDEA提供了许多强大的特性,包括智能代码完成、代码导航、代码重构、代码质量分析、版本控制集成、内置终端、数据库工具等。它还支持各种插件,可以扩展其功能,适应不同的开发需求。
Android Studio:是一款由Google开发的集成开发环境(IDE),专门用于Android应用程序的开发。它是基于IntelliJ IDEA构建的,并且提供了许多针对Android开发的特定功能和工具。Android Studio提供了丰富的开发工具和功能,包括代码编辑器、智能代码完成、代码导航、调试器、布局编辑器、资源管理器、版本控制等。它还集成了Android SDK,可以方便地管理Android平台的API和工具。
第三方库:是由独立的开发者或组织创建和维护的软件库,用于扩展和增强编程语言、框架或平台的功能。第三方库通常可以与主要的开发工具或框架集成,并提供额外的功能模块、工具或服务。
JAR(Java Archive):是一种用于存储Java类、资源文件和相关元数据的压缩文件格式。它类似于ZIP文件,但是专门用于Java应用程序或库的分发和部署。
插件(Plugin):是一种扩展软件或应用程序功能的模块,它可以与主要的软件或应用程序进行集成,并提供额外的功能、工具或服务。
ModelWizard:是Android Studio中的一个库,用于辅助开发者创建和配置MVP(Model-View-Presenter)架构中的各个组件。
build.gradle:是Android Studio中用于配置和管理项目构建的文件,分为项目级和模块级两种形式。通过编辑build.gradle文件,可以指定Gradle插件版本、依赖关系、仓库地址等构建相关的设置,以满足项目的需求。
libs:项目中的libs文件夹通常用于存放第三方库(libraries)或外部依赖项(dependencies)。
在从事Android开发的时候,很难会绕开Android开发工具:Android Studio。在Android软件开发过程中,项目难免会引入大量的第三方依赖库,虽然在技术更替迅速的当今,我们也会使用maven库依赖,但是项目中难免还会有大量的本地依赖库,而在需要更新、替换项目中某些第三方依赖库的时候,经常会忘记删除弃用的第三方依赖库文件,造成打包的时候的程序包的体积增大。
通常Android Studio项目中会有大量的本地依赖库,而在需要更新、替换项目中某些第三方库的时候,经常会忘记删除弃用的第三方库文件,造成打包的时候的程序包的体积增大。目前Android Studio项目的第三方库,一般都是开发人员手动放置在libs文件夹内,libs文件夹用于存储Android Studio项目的第三方库文件。如果某个项目的依赖很多,这会导致开发人员在更换第三方库的时候,操作冗长、麻烦、效率低下。
基于此,本申请实施例提供了一种第三方库管理方法、装置、电子设备及存储介质,旨在减小项目的体积,搜索定位第三方库的位置,提高第三方库的管理效率。
本申请实施例提供的第三方库管理方法、装置、电子设备及存储介质,具体通过如下实施例进行说明,首先描述本申请实施例中的第三方库管理方法。
本申请实施例提供的第三方库管理方法,涉及软件开发技术领域。本申请实施例提供的第三方库管理方法可应用于终端中,也可应用于服务器端中,还可以是运行于终端或服务器端中的软件。在一些实施例中,终端可以是智能手机、平板电脑、笔记本电脑、台式计算机等;服务器端可以配置成独立的物理服务器,也可以配置成多个物理服务器构成的服务器集群或者分布式系统,还可以配置成提供云服务、云数据库、云计算、云函数、云存储、网络服务、云通信、中间件服务、域名服务、安全服务、CDN以及大数据和人工智能平台等基础云计算服务的云服务器;软件可以是实现第三方库管理方法的应用等,但并不局限于以上形式。
本申请可用于众多通用或专用的计算机系统环境或配置中。例如:个人计算机、服务器计算机、手持设备或便携式设备、平板型设备、多处理器系统、基于微处理器的系统、置顶盒、可编程的消费电子设备、网络PC、小型计算机、大型计算机、包括以上任何系统或设备的分布式计算环境等等。本申请可以在由计算机执行的计算机可执行指令的一般上下文中描述,例如程序模块。一般地,程序模块包括执行特定任务或实现特定抽象数据类型的例程、程序、对象、组件、数据结构等等。也可以在分布式计算环境中实践本申请,在这些分布式计算环境中,由通过通信网络而被连接的远程处理设备来执行任务。在分布式计算环境中,程序模块可以位于包括存储设备在内的本地和远程计算机存储介质中。
图1是本申请实施例提供的第三方库管理方法的一个可选的流程图,图1中的方法可以包括但不限于包括步骤S101至步骤S104。
在本实施例中,在Android Studio中启动项目和第三方库管理插件,通过第三方库管理插件检测项目中未被使用的第三方库,自动删除未被使用的第三方库的文件,并在项目的配置文件中自动删除对应的配置,从而减小了项目的体积;通过响应于第一指令,在Android Studio上显示第三方库管理页面,从而对第三方库文件进行可视化管理,提高了第三方库的管理效率,还通过响应于第二指令,在第三方库管理页面显示第二指令对应的操作结果,第二指令包括搜索指令,操作结果包括根据搜索指令查询得到的第三方库的位置信息,从而通过搜索定位第三方库的位置,便于管理Android Studio项目的第三方库。
步骤S101,在Android Studio中启动项目和第三方库管理插件。
具体地,第三方库管理插件是通过IntelliJ IDEA工具开发的用于管理AndroidStudio项目的本地第三方库的插件工具。
在一些实施例中,通过IntelliJ IDEA工具中开发第三方库管理插件,首先创建一个项目,然后新建一个action,确定第三方库管理插件的位置,完成第三方库管理插件开发。示例性地,第三方库管理插件可位于菜单的最下方。其中,菜单包括但不限于AndroidStudio中的Edit菜单页面,菜单用于提供一些常用的编辑操作和功能。
在一些实施例中,可将intellij中的第三方库管理插件打包成一个jar文件,在Android Studio的设置中安装第三方库管理插件的.jar文件,重启Android Studio。
在本实施例中,第三方库管理插件可以与项目同步启动,也可以在点击菜单中的对应选项时启动。
在本实施例中,在Android Studio中启动项目和第三方库管理插件,为后续的删除未被使用的第三方库、第三方库管理和通过搜索定位第三方库的位置做了准备。
步骤S102,通过第三方库管理插件检测项目中未被使用的第三方库,删除第三方库的文件,并在项目的配置文件中删除第三方库的配置。
具体地,第三方库管理插件在启动时可以检测项目中未被使用的第三方库,并删除第三方库的文件,并在项目的配置文件中删除第三方库的配置。
可以理解的是,本申请对未被使用的第三方库不做具体的限定,可以结合实际的管理需要进行灵活选取。示例性地,未被使用的第三方库可以理解为未被引用的第三方库、未被配置的第三方库,也可以理解为被弃用的第三方库。
在一些实施例中,本申请对项目的配置文件不做具体的限定,可以结合实际的管理需要进行灵活选取。示例性地,项目的配置文件可以包括位于项目根目录下的build.gradle文件,项目的配置文件也可以包括位于各个模块目录下的build.gradle文件。
在本实施例中,通过第三方库管理插件检测项目中未被使用的第三方库,删除第三方库的文件,并在项目的配置文件中删除第三方库的配置,简化了项目依赖关系,减小了项目的体积,减少不必要的第三方库依赖,加快了项目的构建速度,使项目更加整洁和可维护,降低了代码复杂性,并且由于每个库都可能存在漏洞或安全问题,因此删除未使用的库可以减少潜在的安全风险。
步骤S103,响应于第一指令,在Android Studio上显示第三方库管理页面。
具体地,第三方库管理页面包括列表展示区域,列表展示区域包括搜索区域,列表展示区域用于列表显示项目中所有的第三方库。
具体地,第一指令在第三方库管理插件被选中时触发,用于显示第三方库管理页面。
在一些实施例中,第一指令在第三方库管理插件被点击时触发。
其中,本申请中不对第三方库管理插件的位置进行具体的限定,本领域的技术人员可以根据实际的需要进行选取。示例性地,第三方库管理插件可以位于菜单的最下方,第三方库管理插件也可以位于菜单的最上方。
在本实施例中,响应于第一指令,在Android Studio上显示第三方库管理页面,为第三方库管理和通过搜索定位第三方库的位置做了准备。
步骤S104,响应于第二指令,在第三方库管理页面显示第二指令对应的操作结果。
具体地,第二指令包括搜索指令,操作结果包括根据搜索指令查询得到的第三方库的位置信息,搜索指令由搜索区域中的搜索控件触发。第二指令由第三方库管理页面上的控件触发。
在一些实施例中,第二指令可在搜索控件中的搜索按钮被点击时触发,也可在用户按下回车键时触发。
在一些实施例中,用户输入搜索信息,触发搜索指令,第三方库管理页面的列表展示区域展示查询得到的第三方库的位置信息。
需要说明的是,本申请中不对搜索指令的触发进行具体的限定,本领域的技术人员可以根据实际的需要进行选取。示例性地,搜索指令可以通过点击搜索控件的搜索按钮触发,搜索指令也可以通过快捷键触发。
本申请中不对第三方库的位置信息进行具体的限定,本领域的技术人员可以根据实际的需要进行选取。示例性地,第三方库的位置信息可以包括第三方库的存储路径,第三方库的位置信息也可以包括第三方库的文件名称。
在一些实施例中,第二指令还包括新增指令、替换指令和删除指令,第三方库管理页面还包括新增区域、替换区域和删除区域。
在本实施例中,响应于第二指令,在第三方库管理页面显示第二指令对应的操作结果,可以快速定位到搜索的第三方库,在第三方库管理页面中显示查询结果,可以更方便地浏览和查看相关的第三方库位置信息。
请参阅图2,在一些实施例中,步骤S104可以包括但不限于包括步骤S201至步骤S203:
步骤S201,响应于第二指令,将新增的第三方库的文件导入项目。
具体地,第二指令包括新增指令,第三方库管理页面包括新增区域,新增区域用于触发新增指令。
在一些实施例中,新增指令在新增区域中的新增控件被选中时触发,用于新增第三方库。
可选地,当新增指令触发时,会出现一个弹窗来引导用户确定新增的第三方库的文件。
可以理解的是,Android Studio项目的libs文件夹是用于存放第三方库或模块的文件夹,因此,在一些实施例中,第三方库管理插件将新增的第三方库的文件导入本地Android Studio项目中的libs文件夹。
可以理解的是,本申请中不对新增的第三方库的文件的确定方式进行具体的限定,本领域的技术人员可以根据实际的需要进行选取。示例性地,新增的第三方库的文件可以通过选中本地文件的方式确定,新增的第三方库的文件也可以通过复制粘贴文件的方式确定。
需要说明的是,本申请中不对新增的第三方库的数量进行具体的限定,本领域的技术人员可以根据实际的需要进行选取。示例性地,新增的第三方库可以包括单个第三方库,也可以包括多个第三方库。
在本实施例中,响应于第二指令,将新增的第三方库的文件导入项目,便于通过可视化的方式管理项目的第三方库。
步骤S202,在项目的配置文件中完成第三方库的配置。
具体地,第三方库在导入项目后,还需要在配置文件中完成配置。
在一些实施例中,将第三方库的相关配置信息添加到项目的配置文件中,可以集中管理各个第三方库的配置信息,保持项目构建配置的一致性和清晰性,简化项目配置,方便统一修改和维护。
步骤S203,在第三方库管理页面的列表展示区域中显示新增操作后项目中所有的第三方库。
具体地,第三方库管理页面的列表展示区域用于显示项目中所有的第三方库。
可以理解的是,当项目中新增新的第三方库后,第三方库管理页面的列表展示区域需要更新显示内容,第三方库管理页面的列表展示区域显示新增操作后项目中所有的第三方库。
在本实施例中,在第三方库管理页面的列表展示区域中显示新增操作后项目中所有的第三方库,保证了第三方库管理页面的列表展示区域的实时性和准确性,便于可视化管理第三方库。
本申请实施例所示意的步骤S201至步骤S203,通过响应于第二指令,将新增的第三方库的文件导入项目,在项目的配置文件中完成第三方库的配置,在第三方库管理页面的列表展示区域中显示新增操作后项目中所有的第三方库,从而实现可视化新增第三方库,便于可视化管理Android Studio项目的第三方库。
请参阅图3,在一些实施例中,步骤S104可以包括但不限于包括步骤S301至步骤S303:
步骤S301,响应于第二指令,在项目的配置文件中删除第三方库的配置。
具体地,第二指令包括删除指令,第三方库管理页面包括删除区域,删除区域用于触发删除指令,配置文件内存储有第三方库的配置信息。
在一些实施例中,删除指令在删除区域中的删除控件被选中时触发,用于删除第三方库。
可选地,当删除指令触发时,会出现一个弹窗引导用户确定被删除的第三方库。
可以理解的是,本申请中不对被删除的第三方库进行具体的限定,本领域的技术人员可以根据实际的需要进行选取。示例性地,被删除的第三方库可以包括单个第三方库,也可以包括多个第三方库。
在一些实施例中,本申请中不对被删除的第三方库的确定方式进行具体的限定,本领域的技术人员可以根据实际的需要进行选取。示例性地,被删除的第三方库可以通过勾选的方式确定,也可以通过拖拽的方式确定。
在一些实施例中,用户选定被删除的第三方库,第三方管理插件在AndroidStudio项目的build.gradle文件中删除对应的第三方库的配置信息。
在本实施例中,响应于第二指令,在项目的配置文件中删除第三方库的配置,可以预防编译错误的产生,保持项目构建配置的一致性和清晰性,简化项目配置,使其更易于管理和维护。
步骤S302,删除第三方库的文件。
具体地,第三方库的文件是根据用户选择的被删除的第三方库确定的。
在一些实施例中,用户选定被删除的第三方库,第三方库管理插件在AndroidStudio项目中的libs文件夹中删除对应的第三方库的文件。
在本实施例中,删除第三方库的文件,便于通过可视化的方式管理项目的第三方库。
步骤S303,在第三方库管理页面的列表展示区域显示删除操作后项目中所有的第三方库。
具体地,第三方库管理页面的列表展示区域用于显示项目中所有的第三方库。
可以理解的是,当项目中删除第三方库后,第三方库管理页面的列表展示区域需要更新显示内容,第三方库管理页面的列表展示区域显示删除操作后项目中所有的第三方库。
在本实施例中,在第三方库管理页面的列表展示区域中显示新增操作后项目中所有的第三方库,保证了第三方库管理页面的列表展示区域的一致性、实时性和准确性,便于可视化管理第三方库。
本申请实施例所示意的步骤S301至步骤S303,通过响应于第二指令,删除第三方库的文件,在项目的配置文件中删除第三方库的配置,在第三方库管理页面的列表展示区域显示删除操作后项目中所有的第三方库,预防了编译错误的产生,保证了项目中第三方库文件、配置文件和第三方库管理页面的一致性、实时性和准确性,便于可视化管理第三方库。
请参阅图4,在一些实施例中,步骤S104可以包括但不限于包括步骤S401至步骤S405:
步骤S401,响应于第二指令,在项目的配置文件中删除替换前的第三方库的配置。
具体地,第二指令包括替换指令,第三方库管理页面包括替换区域,替换区域用于触发替换指令。
在一些实施例中,替换指令在替换区域中的替换控件被选中时触发,用于替换第三方库。
可选地,当替换指令触发时,会出现一个弹窗引导用户确定替换前的第三方库的文件。
在一些实施例中,本申请中不对替换前的第三方库的确定方式进行具体的限定,本领域的技术人员可以根据实际的需要进行选取。示例性地,替换前的第三方库可以通过勾选的方式确定,也可以通过拖拽的方式确定。
需要说明的是,本申请中不对替换前的第三方库的数量进行具体的限定,本领域的技术人员可以根据实际的需要进行选取。示例性地,替换前的第三方库可以包括单个第三方库,也可以包括多个第三方库。
在一些实施例中,用户选定替换前的第三方库,第三方管理插件在AndroidStudio项目的build.gradle文件中删除对应的第三方库的配置信息。
在本实施例中,响应于第二指令,在项目的配置文件中删除替换前的第三方库的配置,防止出现第三方库有配置信息却无对应文件的情况,可以预防编译错误的产生,保持项目构建配置的一致性和清晰性,简化项目配置,使其更易于管理和维护。
步骤S402,删除替换前的第三方库的文件。
具体地,换前的第三方库的文件是根据用户选择的被删除的第三方库确定的。
在一些实施例中,用户选定换前的的第三方库,第三方库管理插件在AndroidStudio项目中的libs文件夹中删除对应的第三方库的文件。
在本实施例中,删除第三方库的文件,便于通过可视化的方式管理项目的第三方库。
步骤S403,将替换后的第三方库的文件导入项目。
可选地,当替换指令触发时,会出现一个弹窗引导用户确定替换后的第三方库的文件。
在一些实施例中,本申请中不对替换后的第三方库的确定方式进行具体的限定,本领域的技术人员可以根据实际的需要进行选取。示例性地,替换后的第三方库可以通过勾选的方式确定,也可以通过拖拽的方式确定。
在一些实施例中,将替换后的第三方库的文件导入本地Android Studio项目中的libs文件夹。
可以理解的是,本申请中不对替换后的第三方库的文件的确定方式进行具体的限定,本领域的技术人员可以根据实际的需要进行选取。示例性地,替换后的第三方库的文件可以通过勾选本地文件的方式确定,替换后的第三方库的文件也可以通过拖拽文件的方式确定。
需要说明的是,本申请中不对替换后的第三方库的数量进行具体的限定,本领域的技术人员可以根据实际的需要进行选取。示例性地,替换后的第三方库可以包括单个第三方库,也可以包括多个第三方库。
在本实施例中,响应于第二指令,将替换后的第三方库的文件导入项目,便于通过可视化的方式管理项目的第三方库。
步骤S404,在项目的配置文件中完成替换后的第三方库的配置。
具体地,替换后的第三方库在导入项目后,还需要在配置文件中完成替换后的第三方库的配置。
在一些实施例中,在项目的配置文件中完成替换后的第三方库的配置,可以集中管理各个第三方库的配置信息,保持项目构建配置的一致性和清晰性,简化项目配置,方便统一修改和维护。
步骤S405,在第三方库管理页面的列表展示区域中显示替换操作后项目中所有的第三方库。
可以理解的是,当项目中替换了第三方库后,第三方库管理页面的列表展示区域需要更新显示内容,第三方库管理页面的列表展示区域显示替换操作后项目中所有的第三方库。
在本实施例中,在第三方库管理页面的列表展示区域中显示替换操作后项目中所有的第三方库,保证了第三方库管理页面的列表展示区域的一致性、实时性和准确性,便于可视化管理第三方库。
本申请实施例所示意的步骤S401至步骤S405,通过响应于第二指令,删除替换前的第三方库的文件,在项目的配置文件中删除替换前的第三方库的配置,将替换后的第三方库的文件导入项目,在项目的配置文件中完成替换后的第三方库的配置,在第三方库管理页面的列表展示区域中显示替换操作后项目中所有的第三方库,预防了编译错误的产生,保证了项目中第三方库文件、配置文件和第三方库管理页面的一致性、实时性和准确性,便于可视化管理第三方库。
请参阅图5,在一些实施例中,步骤S101包括但不限于包括步骤S501至步骤S504:
步骤S501,在Android Studio中启动项目。
具体地,在Android Studio中打开项目文件。
步骤S502,判断第三方库管理插件是否初次启动,若是,则执行步骤S503;反之,则执行步骤S504。
具体地,初次启动为安装第三方库管理插件后,第三方库管理插件的第一次启动。
步骤S503,响应于启动指令,启动第三方库管理插件;
具体地,启动指令在第三方库管理插件被选中时触发,示例性地,在AndroidStudio中点击对应的菜单启动第三方库管理插件。
在一些实施例中,当第三方库管理插件从未启动过,此次启动为初次启动时,通过在Android Studio中点击对应的菜单启动第三方库管理插件。
在本实施例中,在Android Studio中点击对应的菜单启动第三方库管理插件,为后续通过第三方库管理插件管理Android Studio项目的第三方库做了准备。
步骤S504,控制第三方库管理插件与Android Studio同步启动。
在一些实施例中,当第三方库管理插件的此次启动不为初次启动时,第三方库管理插件与Android Studio同步启动。
在本实施例中,第三方库管理插件与Android Studio同步启动,为后续通过第三方库管理插件管理Android Studio项目的第三方库做了准备。
请参阅图6,在一些实施例中,步骤S101还可以包括但不限于包括步骤S601至步骤S602:
步骤S601,采用ModelWizard对象构建第三方库管理插件。
具体地,ModelWizard对象用于构建第三方库管理插件,使第三方库管理插件与Android Studio相同。
在一些实施例中,在Android Studio项目的build.gradle文件中添加ModelWizard库的依赖项。
在一些实施例中,将ModelWizard对象作为参数放入构造器中来构建第三方库管理插件。
步骤S602,在Android Studio中启动项目和第三方库管理插件。
在本实施例中,采用ModelWizard对象构建第三方库管理插件,使第三方库管理插件与Android Studio相同,提高了用户体验。
请参阅图7,在一些实施例中,步骤S101还可以包括但不限于包括步骤S701至步骤S703:
步骤S701,通过intellij工具构建第三方库管理插件。
在一些实施例中,通过IntelliJ IDEA工具中开发第三方库管理插件,首先创建一个项目,然后新建一个action,确定第三方库管理插件的位置,完成第三方库管理插件开发。示例性地,第三方库管理插件位于菜单的最下方。
步骤S702,在Android Studio的设置中安装第三方库管理插件。
在一些实施例中,将intellij中的第三方库管理插件打包成一个jar文件,在Android Studio的设置中安装第三方库管理插件的.jar文件,重启Android Studio。
步骤S703,在Android Studio中启动项目和第三方库管理插件。
在本实施例中,通过intellij工具构建第三方库管理插件,在Android Studio的设置中安装第三方库管理插件,在Android Studio中启动项目和第三方库管理插件,为后续通过第三方库管理插件管理Android Studio项目的第三方库做了准备。
以图8的第三方库管理界面为例,应用本申请的方法来管理Android Studio项目的第三方库,其具体过程包括以下步骤:
通过intellij工具和ModelWizard对象构建第三方库管理插件;
在Android Studio的设置中安装第三方库管理插件;
在Android Studio中启动项目;
判断第三方库管理插件是否初次启动;
若第三方库管理插件初次启动,在Android Studio中点击对应的菜单启动第三方库管理插件;
若第三方库管理插件并非初次启动,控制第三方库管理插件与Android Studio同步启动;
通过第三方库管理插件检测项目中未被使用的第三方库,删除第三方库的文件,并在项目的配置文件中删除第三方库的配置;
响应于第一指令,在Android Studio上显示第三方库管理页面;
在第三方库管理页面的搜索区域802触发搜索指令,响应于搜索指令,在第三方库管理页面的列表展示区域801显示根据搜索指令查询得到的第三方库的位置信息;
在第三方库管理页面的新增区域803触发新增指令,响应于新增指令,将新增的第三方库的文件导入项目,在项目的配置文件中完成第三方库的配置,在第三方库管理页面的列表展示区域801中显示新增操作后项目中所有的第三方库;
在第三方库管理页面的删除区域804触发删除指令,响应于删除指令,删除第三方库的文件,在项目的配置文件中删除第三方库的配置,在第三方库管理页面的列表展示区域801显示删除操作后项目中所有的第三方库;
在第三方库管理页面的替换区域805触发替换指令,响应于替换指令,删除替换前的第三方库的文件,在项目的配置文件中删除替换前的第三方库的配置,将替换后的第三方库的文件导入项目,在项目的配置文件中完成替换后的第三方库的配置,在第三方库管理页面的列表展示区域801中显示替换操作后项目中所有的第三方库。
请参阅图9,本申请实施例还提供一种第三方库管理装置,可以实现上述第三方库管理方法,该装置包括:
启动模块901,用于在Android Studio中启动项目和第三方库管理插件,第三方库管理插件是通过intellij工具构建的插件;
删除模块902,用于通过第三方库管理插件检测项目中未被使用的第三方库,删除第三方库的文件,并在项目的配置文件中删除第三方库的配置;
页面显示模块903,用于响应于第一指令,在Android Studio上显示第三方库管理页面,第三方库管理页面包括列表展示区域,列表展示区域包括搜索区域,列表展示区域用于列表显示项目中所有的第三方库;
结果显示模块904,用于响应于第二指令,在第三方库管理页面显示第二指令对应的操作结果,第二指令包括搜索指令,操作结果包括根据搜索指令查询得到的第三方库的位置信息。
该第三方库管理装置的具体实施方式与上述第三方库管理方法的具体实施例基本相同,在此不再赘述。
本发明方法实施例的内容均适用于本装置实施例,本装置实施例所具体实现的功能与上述方法实施例相同,并且达到的有益效果与上述方法达到的有益效果也相同。
本申请实施例还提供了一种电子设备,电子设备包括存储器和处理器,存储器存储有计算机程序,处理器执行计算机程序时实现上述第三方库管理方法。该电子设备可以为包括平板电脑、车载电脑等任意智能终端。
本发明方法实施例的内容均适用于本电子设备实施例,本电子设备实施例所具体实现的功能与上述方法实施例相同,并且达到的有益效果与上述方法达到的有益效果也相同。
请参阅图10,图10示意了另一实施例的电子设备的硬件结构,电子设备包括:
处理器1001,可以采用通用的CPU(CentralProcessingUnit,中央处理器)、微处理器、应用专用集成电路(ApplicationSpecificIntegratedCircuit,ASIC)、或者一个或多个集成电路等方式实现,用于执行相关程序,以实现本申请实施例所提供的技术方案;
存储器1002,可以采用只读存储器(ReadOnlyMemory,ROM)、静态存储设备、动态存储设备或者随机存取存储器(RandomAccessMemory,RAM)等形式实现。存储器1002可以存储操作系统和其他应用程序,在通过软件或者固件来实现本说明书实施例所提供的技术方案时,相关的程序代码保存在存储器1002中,并由处理器1001来调用执行本申请实施例的第三方库管理方法;
输入/输出接口1003,用于实现信息输入及输出;
通信接口1004,用于实现本设备与其他设备的通信交互,可以通过有线方式(例如USB、网线等)实现通信,也可以通过无线方式(例如移动网络、WIFI、蓝牙等)实现通信;
总线1005,在设备的各个组件(例如处理器1001、存储器1002、输入/输出接口1003和通信接口1004)之间传输信息;
其中处理器1001、存储器1002、输入/输出接口1003和通信接口1004通过总线1005实现彼此之间在设备内部的通信连接。
本申请实施例还提供了一种计算机可读存储介质,该计算机可读存储介质存储有计算机程序,该计算机程序被处理器执行时实现上述第三方库管理方法。
本发明方法实施例的内容均适用于本存储介质实施例,本存储介质实施例所具体实现的功能与上述方法实施例相同,并且达到的有益效果与上述方法达到的有益效果也相同。
存储器作为一种非暂态计算机可读存储介质,可用于存储非暂态软件程序以及非暂态性计算机可执行程序。此外,存储器可以包括高速随机存取存储器,还可以包括非暂态存储器,例如至少一个磁盘存储器件、闪存器件、或其他非暂态固态存储器件。在一些实施方式中,存储器可选包括相对于处理器远程设置的存储器,这些远程存储器可以通过网络连接至该处理器。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。
本申请实施例提供的第三方库管理方法、装置、电子设备及存储介质,其通过在Android Studio中启动项目和第三方库管理插件,第三方库管理插件检测项目中未被使用的第三方库,删除第三方库的文件,并在项目的配置文件中删除第三方库的配置,从而减小了项目的体积,并通过响应于第一指令,在Android Studio上显示第三方库管理页面,从而对第三方库文件进行可视化管理,提高了第三方库的管理效率,还通过响应于第二指令,在第三方库管理页面显示第二指令对应的操作结果,第二指令包括搜索指令,操作结果包括根据搜索指令查询得到的第三方库的位置信息,从而通过搜索定位第三方库的位置,便于管理Android Studio项目的第三方库。
本申请实施例描述的实施例是为了更加清楚的说明本申请实施例的技术方案,并不构成对于本申请实施例提供的技术方案的限定,本领域技术人员可知,随着技术的演变和新应用场景的出现,本申请实施例提供的技术方案对于类似的技术问题,同样适用。
本领域技术人员可以理解的是,图中示出的技术方案并不构成对本申请实施例的限定,可以包括比图示更多或更少的步骤,或者组合某些步骤,或者不同的步骤。
以上所描述的装置实施例仅仅是示意性的,其中作为分离部件说明的单元可以是或者也可以不是物理上分开的,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。
本领域普通技术人员可以理解,上文中所公开方法中的全部或某些步骤、系统、设备中的功能模块/单元可以被实施为软件、固件、硬件及其适当的组合。
本申请的说明书及上述附图中的术语“第一”、“第二”、“第三”、“第四”等(如果存在)是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本申请的实施例能够以除了在这里图示或描述的那些以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
应当理解,在本申请中,“至少一个(项)”是指一个或者多个,“多个”是指两个或两个以上。“和/或”,用于描述关联对象的关联关系,表示可以存在三种关系,例如,“A和/或B”可以表示:只存在A,只存在B以及同时存在A和B三种情况,其中A,B可以是单数或者复数。字符“/”一般表示前后关联对象是一种“或”的关系。“以下至少一项(个)”或其类似表达,是指这些项中的任意组合,包括单项(个)或复数项(个)的任意组合。例如,a,b或c中的至少一项(个),可以表示:a,b,c,“a和b”,“a和c”,“b和c”,或“a和b和c”,其中a,b,c可以是单个,也可以是多个。
在本申请所提供的几个实施例中,应该理解到,所揭露的装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,上述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
上述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本申请各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括多指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本申请各个实施例的方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(Read-Only Memory,简称ROM)、随机存取存储器(Random Access Memory,简称RAM)、磁碟或者光盘等各种可以存储程序的介质。
以上参照附图说明了本申请实施例的优选实施例,并非因此局限本申请实施例的权利范围。本领域技术人员不脱离本申请实施例的范围和实质内所作的任何修改、等同替换和改进,均应在本申请实施例的权利范围之内。

Claims (10)

1.一种第三方库管理方法,其特征在于,所述方法包括:
在Android Studio中启动项目和第三方库管理插件,所述第三方库管理插件是通过intellij工具构建的插件;
通过第三方库管理插件检测所述项目中未被使用的第三方库,删除所述第三方库的文件,并在所述项目的配置文件中删除所述第三方库的配置;
响应于第一指令,在Android Studio上显示第三方库管理页面,所述第三方库管理页面包括列表展示区域,所述列表展示区域包括搜索区域,所述列表展示区域用于列表显示所述项目中所有的第三方库;
响应于第二指令,在所述第三方库管理页面显示所述第二指令对应的操作结果,所述第二指令包括搜索指令,所述操作结果包括根据所述搜索指令查询得到的第三方库的位置信息。
2.根据权利要求1所述的方法,其特征在于,所述第二指令还包括新增指令,所述响应于第二指令,在所述第三方库管理页面显示所述第二指令对应的操作结果,包括:
响应于第二指令,将新增的第三方库的文件导入所述项目,在所述项目的配置文件中完成所述第三方库的配置,在所述第三方库管理页面的列表展示区域中显示新增操作后所述项目中所有的第三方库。
3.根据权利要求1所述的方法,其特征在于,所述第二指令还包括删除指令,所述响应于第二指令,在所述第三方库管理页面显示所述第二指令对应的操作结果,包括:
响应于第二指令,在所述项目的配置文件中删除第三方库的配置,删除所述第三方库的文件,在所述列表展示区域显示删除操作后所述项目中所有的第三方库。
4.根据权利要求1所述的方法,其特征在于,所述第二指令还包括替换指令,所述响应于第二指令,在所述第三方库管理页面显示所述第二指令对应的操作结果,包括:
响应于第二指令,在所述项目的配置文件中删除替换前的第三方库的配置,删除所述替换前的第三方库的文件,将替换后的第三方库的文件导入所述项目,在所述项目的配置文件中完成所述替换后的第三方库的配置,在所述第三方库管理页面的列表展示区域中显示替换操作后所述项目中所有的第三方库。
5.根据权利要求1所述的方法,其特征在于,所述在Android Studio中启动项目和第三方库管理插件,包括:
在Android Studio中启动项目;
若所述第三方库管理插件初次启动,响应于启动指令,启动所述第三方库管理插件;
若所述第三方库管理插件并非初次启动,则控制所述第三方库管理插件与所述Android Studio同步启动。
6.根据权利要求1所述的方法,其特征在于,所述方法还包括:
采用ModelWizard对象构建所述第三方库管理插件,所述第三方库管理插件的样式采用Android Studio样式。
7.根据权利要求1所述的方法,其特征在于,所述方法还包括:
通过intellij工具构建所述第三方库管理插件;
在Android Studio的设置中安装所述第三方库管理插件。
8.一种第三方库管理装置,其特征在于,所述装置包括:
启动模块,用于在Android Studio中启动项目和第三方库管理插件,所述第三方库管理插件是通过intellij工具构建的插件;
删除模块,用于通过第三方库管理插件检测所述项目中未被使用的第三方库,删除所述第三方库的文件,并在所述项目的配置文件中删除所述第三方库的配置;
页面显示模块,用于响应于第一指令,在Android Studio上显示第三方库管理页面,所述第三方库管理页面包括列表展示区域,所述列表展示区域包括搜索区域,所述列表展示区域用于列表显示所述项目中所有的第三方库;
结果显示模块,用于响应于第二指令,在所述第三方库管理页面显示所述第二指令对应的操作结果,所述第二指令包括搜索指令,所述操作结果包括根据所述搜索指令查询得到的第三方库的位置信息。
9.一种电子设备,其特征在于,所述电子设备包括存储器和处理器,所述存储器存储有计算机程序,所述处理器执行所述计算机程序时实现权利要求1至7任一项所述的第三方库管理方法。
10.一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现权利要求1至7中任一项所述的第三方库管理方法。
CN202311363966.7A 2023-10-19 2023-10-19 一种第三方库管理方法、装置、电子设备及存储介质 Pending CN117667248A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202311363966.7A CN117667248A (zh) 2023-10-19 2023-10-19 一种第三方库管理方法、装置、电子设备及存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202311363966.7A CN117667248A (zh) 2023-10-19 2023-10-19 一种第三方库管理方法、装置、电子设备及存储介质

Publications (1)

Publication Number Publication Date
CN117667248A true CN117667248A (zh) 2024-03-08

Family

ID=90074124

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202311363966.7A Pending CN117667248A (zh) 2023-10-19 2023-10-19 一种第三方库管理方法、装置、电子设备及存储介质

Country Status (1)

Country Link
CN (1) CN117667248A (zh)

Similar Documents

Publication Publication Date Title
CN108363587B (zh) 应用程序运行监控方法、装置、计算机设备和存储介质
US11620117B2 (en) Systems and methods for code clustering analysis and transformation
US12003591B2 (en) Automatic discovery and registration of service applications for files introduced to a user interface
US10684846B2 (en) Using semantic annotations to control compatibility behaviors
US20140279903A1 (en) Version control system using commit manifest database tables
EP4009162A1 (en) Code change method and device
CN111176717B (zh) 生成安装包的方法、装置及电子设备
WO2015195418A1 (en) Software package management
EP4184330A1 (en) Code analysis method and system, and computing device
CN108563440A (zh) 列表控制器代码自动添加方法、装置及可读存储介质
CN111932207A (zh) 项目数据处理方法、装置、计算机设备和存储介质
US20230259358A1 (en) Documentation enforcement during compilation
US8527940B2 (en) Integrated development environment with automatic working sets
US9411618B2 (en) Metadata-based class loading using a content repository
CN102902770A (zh) 一种镜像文件拼装方法及系统
CN103646055A (zh) 一种程序配置信息的获取方法和装置
CN111984248A (zh) 页面编辑方法和装置、存储介质及电子装置
CN117667248A (zh) 一种第三方库管理方法、装置、电子设备及存储介质
US20150347402A1 (en) System and method for enabling a client system to generate file system operations on a file system data set using a virtual namespace
CN115562993A (zh) 测试脚本录制方法和装置、电子设备及存储介质
CN115291935A (zh) 组件更新方法、组件更新装置、设备和存储介质
CN114816470A (zh) 元数据库的管理方法、装置、电子设备和介质
US20210240596A1 (en) Source code file retrieval
US10204106B2 (en) Management method, management device, and management system
CN114077575A (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