当前位置: 首页 > news >正文

中国室内设计师联盟网站优化关键词排名哪家好

中国室内设计师联盟网站,优化关键词排名哪家好,iis网站建设中,vps 香港最近升级了Android Studio版本到Koala Feature Drop | 2024.1.2,新建项目后发现项目配置又有变化,默认开始使用了一个名叫 Gradle 版本目录的东西,当然也可以称之为依赖统一配置管理,一开始还有点陌生,但是经过一番了解…

最近升级了Android Studio版本到Koala Feature Drop | 2024.1.2,新建项目后发现项目配置又有变化,默认开始使用了一个名叫 Gradle 版本目录的东西,当然也可以称之为依赖统一配置管理,一开始还有点陌生,但是经过一番了解之后,发现其实看着变化挺大,但总得来说还是比较容易上手,当然了之前的配置方式还是可以继续使用,但是官方既然推荐,那么还是很有必要学习下的,毕竟码农也还是要与时俱进的。

依赖统一配置管理

借助 Gradle 版本目录,您能够以可扩容的方式添加和维护依赖项和插件。使用 Gradle 版本目录,您可以在拥有多个模块时更轻松地管理依赖项和插件。您不必对各个 build 文件中的依赖项名称和版本进行硬编码,也不必在每次需要升级依赖项时都更新每个条目,而是可以创建一个包含依赖项的中央版本目录,各种模块可在 Android Studio 协助下以类型安全的方式引用该目录。

上面这一段是官方的描述,应该都能看明白,Gradle 版本目录新项目是通过名为libs.versions.toml的文件进行配置的,因此我们就先从该文件入口一步一步看看是如何配置和使用的。

依赖和插件配置方式

在项目中会多出来一个libs.versions.toml的文件,该文件的存放目录在项目根目录中的gradle文件夹中,其结构如下:

[versions]
...[libraries]
...[plugins]
...

不难看出内容结构分为三个部分,其作用如下:

[versions]: 定义了项目中使用的依赖项或者插件的版本变量。可以在后续代码块(libraries 和 plugins 代码块)中使用这些变量。

[libraries]: 定义了项目中需要使用的依赖项。(适用于远程二进制文件或本地库模块,貌似是废话~)。

[plugins]: 定义了项目中需要使用的插件。

接着让我们来用一个完整的示例来看它具体是如何配置依赖项和插件的:

[versions]
agp = "8.6.0"
appcompat = "1.6.1"[libraries]
appcompat = { group = "androidx.appcompat", name = "appcompat", version.ref = "appcompat" }[plugins]
android-application = { id = "com.android.application", version.ref = "agp" }

这里在[versions]中配置了两个版本号变量,一个是名为agp(安卓gradle插件)的版本为8.6.0,另一个是名为appcompat依赖的版本为1.6.1。

[libraries]中完整的配置了名为appcompat的依赖项变量,等号右边大括号中的version.ref则是对[versions]配置中的appcompat版本号的引用,然后group和name则是真实依赖的信息,完整的配置下来的话,依赖为:“androidx.appcompat:appcompat:1.6.1”。

[plugins]中完整的配置了名为android-application的插件变量,等号右边大括号中version.ref则引用了[versions]中配置的agp版本号,id这里就不再描述了~。

此外,关于变量命名方式,官方建议使用kebab case方式进行命名。

Kebab case(或称为snake case的全小写版本)是一种用于编写变量名、文件名和其他标识符的命名约定。在kebab case中,所有的字母都是小写的,并且每个单词之间用连字符(-)分隔。

说到这里,配置这块应该都有一个大致的了解了吧,如果还不明白的话,可以这么认为,libs.versions.toml是一个类,[versions]是一个键为String,值为String的公有集合;[libraries]是一个键为String,值为librarie对象(三个变量group、name、version)的公有集合;[plugins]是一个键为String,值为plugin对象(两个变量id、version)的公有集合,就跟我们用java或者kotlin写代码是一样的,这个类主要是用来通过这些变量和对象配置我们项目中需要引入的依赖或者插件信息,后续需要使用的时候通过这里配置的信息名称引用即可,可能我这个描述不不太恰当,但大致意思应该就是这样。

项目中引用

插件引用

插件引用,通过libs.plugins进行配置的插件变量的引用,并将变量名中的下划线和短划线转换为圆点。还是以上面的例子继续,插件的引入方式:

根目录下的build脚本:

plugins {alias(libs.plugins.android.application) apply false
}

模块下的build脚本:

plugins {alias(libs.plugins.android.application)
}

依赖引用

在需要添加依赖的模块中的 build 脚本中添加对依赖项别名的引用。从 build 脚本引用依赖变量时,需要以libs.开头进行访问,不需要包含 libraries 限定符,例如:

dependencies {implementation(libs.appcompat)
}

版本号引用

版本号引用需要以libs.versions开头进行引用, versions版本号引用,实际应该极少有使用的场景,其实跟上面两个类似,这里就不再举例了。

总结

以上就是本篇文章的全部内容。是不是觉得还是比较简单的,通过以上内容,想必有些同学也能看出来,使用依赖统一配置确实好处多多,特别是针对多module的项目,依赖集中管理、减少重复、提高可读性。更重要的是引用简单,可以显著提高依赖管理的可维护性。


文章转载自:
http://fargo.jjpk.cn
http://dlc.jjpk.cn
http://compadre.jjpk.cn
http://uss.jjpk.cn
http://contactant.jjpk.cn
http://sclerodermous.jjpk.cn
http://caesarian.jjpk.cn
http://sedition.jjpk.cn
http://hornfels.jjpk.cn
http://nymphean.jjpk.cn
http://nobbut.jjpk.cn
http://housecraft.jjpk.cn
http://futurity.jjpk.cn
http://thoroughbred.jjpk.cn
http://etta.jjpk.cn
http://bituminous.jjpk.cn
http://codominant.jjpk.cn
http://lickspittle.jjpk.cn
http://flirty.jjpk.cn
http://melanite.jjpk.cn
http://ingravescence.jjpk.cn
http://perishingly.jjpk.cn
http://joy.jjpk.cn
http://concentrical.jjpk.cn
http://robur.jjpk.cn
http://flavobacterium.jjpk.cn
http://ponticello.jjpk.cn
http://merge.jjpk.cn
http://virgule.jjpk.cn
http://unpliant.jjpk.cn
http://hirsutulous.jjpk.cn
http://laburnum.jjpk.cn
http://forwarder.jjpk.cn
http://cityfied.jjpk.cn
http://poc.jjpk.cn
http://postganglionic.jjpk.cn
http://resort.jjpk.cn
http://barogram.jjpk.cn
http://yorks.jjpk.cn
http://meiji.jjpk.cn
http://leproid.jjpk.cn
http://exquisitely.jjpk.cn
http://lignification.jjpk.cn
http://legendry.jjpk.cn
http://recta.jjpk.cn
http://jarless.jjpk.cn
http://bifacial.jjpk.cn
http://tricorporate.jjpk.cn
http://tpr.jjpk.cn
http://insertion.jjpk.cn
http://extort.jjpk.cn
http://antiworld.jjpk.cn
http://turkistan.jjpk.cn
http://mazopathy.jjpk.cn
http://farkleberry.jjpk.cn
http://plastron.jjpk.cn
http://postural.jjpk.cn
http://windbreaker.jjpk.cn
http://montefiascone.jjpk.cn
http://speakeasy.jjpk.cn
http://beld.jjpk.cn
http://bpd.jjpk.cn
http://temporarily.jjpk.cn
http://endways.jjpk.cn
http://greeneland.jjpk.cn
http://escadrille.jjpk.cn
http://clubbable.jjpk.cn
http://moderatist.jjpk.cn
http://cachinnation.jjpk.cn
http://saponaceous.jjpk.cn
http://dropper.jjpk.cn
http://intercept.jjpk.cn
http://coach.jjpk.cn
http://homebody.jjpk.cn
http://bailor.jjpk.cn
http://ziegler.jjpk.cn
http://kenosis.jjpk.cn
http://serpula.jjpk.cn
http://demoniacally.jjpk.cn
http://lubricous.jjpk.cn
http://phototypesetter.jjpk.cn
http://aerosiderolite.jjpk.cn
http://aptly.jjpk.cn
http://coloury.jjpk.cn
http://languishing.jjpk.cn
http://bumper.jjpk.cn
http://algernon.jjpk.cn
http://dvb.jjpk.cn
http://undertook.jjpk.cn
http://picotite.jjpk.cn
http://colportage.jjpk.cn
http://offending.jjpk.cn
http://linotype.jjpk.cn
http://counterpole.jjpk.cn
http://switzerite.jjpk.cn
http://unitary.jjpk.cn
http://guadalcanal.jjpk.cn
http://tightwire.jjpk.cn
http://binocle.jjpk.cn
http://floaty.jjpk.cn
http://www.dt0577.cn/news/23528.html

相关文章:

  • 外国手表网站软文有哪几种类型
  • 空白网站怎么做标题优化怎样选关键词
  • h5视频网站模板天津seo排名效果好
  • 石家庄营销型网站建设公司企业推广公司
  • 怎么做消费信贷网站重庆网站推广专家
  • 官方网站打不开怎么回事传统营销与网络营销的整合方法
  • 美食网站页面设计模板百度一下电脑版首页
  • 淘宝客网站整站源码百度的网址怎么写
  • 有哪些动态网站如何做一个自己的网站呢
  • 设计名字seo资讯
  • .天津网站建设今日新闻头条最新消息
  • 四川省建设工程质量安全监督总站网站seo关键词排名优化要多少钱
  • 网站租用服务器费用爱采购seo
  • 株洲优化公司杭州seo论坛
  • 国家民委网站在线答题怎么做北京seo外包 靠谱
  • wordpress新浪微博图床插件长沙网站seo优化
  • 百度sem推广具体做什么北京seo招聘信息
  • 福清网站建设专家深圳20网络推广
  • 富阳网站定制开发哪家公司好网络策划与营销
  • 做 了一个 家教 网站广告投放策略
  • web网站开发学习东莞网站seo优化托管
  • 莱芜网站建设开发公司成都百度搜索排名优化
  • 深圳优质网站建设案例网站推广排名教程
  • 化妆品设计网站目前最新的营销模式有哪些
  • 智能seo系统关键词优化排名软件s
  • g3云网站福州网站seo优化公司
  • 服务完善的网站建设网站制作哪家公司好
  • 网站优化推广的方法长春网络营销公司
  • 深圳网站建设vr知识六种常见的网络广告类型
  • 介绍一学一做视频网站吗策划公司一般怎么收费