Android 在Gradle中编写依赖项的各种方法有什么不同?

Android 在Gradle中编写依赖项的各种方法有什么不同?,android,android-gradle-plugin,Android,Android Gradle Plugin,我已经看到了在Gradle中编写依赖项的以下不同方式: implementation("com.squareup.okhttp3:okhttp:3.12.0") 及 及 它们是以不同的方式完成同一件事,还是存在差异?编译配置已被弃用,并被实现或api取代 编译配置已弃用,并由实现或api替代 build.gradle文件只是脚本。所以它的语法适用于这里 在Groovy中,调用函数时可以忽略括号,以便 implementation 'com.squareup.okhttp3:okhttp:3.1

我已经看到了在Gradle中编写依赖项的以下不同方式:

implementation("com.squareup.okhttp3:okhttp:3.12.0")

它们是以不同的方式完成同一件事,还是存在差异?

编译配置已被弃用,并被实现或api取代

编译配置已弃用,并由实现或api替代

build.gradle文件只是脚本。所以它的语法适用于这里

在Groovy中,调用函数时可以忽略括号,以便

implementation 'com.squareup.okhttp3:okhttp:3.12.0'
实际上相当于

implementation('com.squareup.okhttp3:okhttp:3.12.0')
在Groovy中,还可以使用表示为的。它们包含嵌入的字符串。在这种特殊情况下,你没有插值任何值,所以

implementation 'com.squareup.okhttp3:okhttp:3.12.0'

它们是等价的。注意,如果你想插值,你会这样做

implementation "com.squareup.okhttp3:okhttp:$okhttpVersion" // this line works
implementation 'com.squareup.okhttp3:okhttp:$okhttpVersion' // this line doesn't work
用于定义依赖项的编译方法已被弃用,取而代之的是实现和api。你可以找到更多信息。您可以考虑,如果您在某种程度上暴露了您的依赖项的类,您将使用API,但如果使用依赖项,则内部实现很好:

Budi.GeDLE文件只是脚本。所以它的语法适用于这里

在Groovy中,调用函数时可以忽略括号,以便

implementation 'com.squareup.okhttp3:okhttp:3.12.0'
实际上相当于

implementation('com.squareup.okhttp3:okhttp:3.12.0')
在Groovy中,还可以使用表示为的。它们包含嵌入的字符串。在这种特殊情况下,你没有插值任何值,所以

implementation 'com.squareup.okhttp3:okhttp:3.12.0'

它们是等价的。注意,如果你想插值,你会这样做

implementation "com.squareup.okhttp3:okhttp:$okhttpVersion" // this line works
implementation 'com.squareup.okhttp3:okhttp:$okhttpVersion' // this line doesn't work

用于定义依赖项的编译方法已被弃用,取而代之的是实现和api。你可以找到更多信息。你可以考虑,如果你在某种程度上暴露了你的依赖关系类,你会使用API,但是如果你使用的是依赖关系,内部实现很好,

你是在寻找另外的方法还是仅仅需要知道差异,检查这个文档“@ AltGaNi”。差异检查此文档@ALTegani后一个很好的解释。理解这些基本概念比盲目复制粘贴要好。很好的解释。理解这些基本概念比盲目地复制和粘贴要好。