Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/typo3/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Dependencies Android Studio中的远程二进制是什么?在幕后到底做了什么?_Dependencies_Build.gradle_Android Studio 3.0 - Fatal编程技术网

Dependencies Android Studio中的远程二进制是什么?在幕后到底做了什么?

Dependencies Android Studio中的远程二进制是什么?在幕后到底做了什么?,dependencies,build.gradle,android-studio-3.0,Dependencies,Build.gradle,Android Studio 3.0,我是Android Studio的新手。我正在按照教程构建一个android应用程序。每次需要外部资源时,它都会要求我在build.gradle文件的dependencies块中添加一个实现行。例如,当我需要一个工具来处理http请求时,我需要添加以下内容: implementation 'com.squareup.okhttp3:okhttp:4.2.1' 从页面中,它将其称为远程二进制文件。其格式为group:name:version。我在网上搜索过,但我没有找到关于什么是组和名称的定义。

我是Android Studio的新手。我正在按照教程构建一个android应用程序。每次需要外部资源时,它都会要求我在build.gradle文件的dependencies块中添加一个实现行。例如,当我需要一个工具来处理http请求时,我需要添加以下内容:

implementation 'com.squareup.okhttp3:okhttp:4.2.1'
从页面中,它将其称为远程二进制文件。其格式为
group:name:version
。我在网上搜索过,但我没有找到关于什么是名称的定义。在哪里,谁来定义它。为什么必须调用
com.squareup.okhttp3
,而不仅仅是
okhttp3

我想知道在我构建应用程序时实际做了什么。那么,有人能给我解释一下什么是
远程二进制文件及其故障吗?我感谢你的帮助


远程二进制文件的最佳定义:

它被称为
远程二进制文件
,因为您从发布此二进制文件/lib的远程存储库下载它(即,您的计算机上没有此二进制文件,您需要下载它)


  • 组的定义

您可以将其视为项目的包名

对于您的问题“为什么该组必须被称为
com.squareup.okhttp3
,而不仅仅是
okhttp3
?”

  • 因为如果其他libs/二进制文件的工件匹配,则只需避免与它们发生冲突,例如:

    implementation 'com.squareup.okhttp3:okhttp:4.2.1'
    implementation 'com.foo.bar:okhttp:4.2.1'
    

在这里,不同的lib有相同的名称(工件名称),下载哪一个?因此,重要的是要包括每个人的组的绝对名称

谢谢您的回复!虽然我不太理解你的例子,但似乎让组
com.squareup.okhttp3
比只
okhttp3
可以降低冲突的几率。我大体上能理解。