如何离线创建Android Studio项目?

问题描述

我想离线创建我的android项目。我尝试了几种技巧,但没有一种对我有用! 我已经从developers.android.com网站下载了用于创建离线项目的离线组件(Android Gradle插件和Google Maven依赖项),但是问题是我不知道如何使它们与android studio一起使用?请帮忙!

解决方法

如此处https://developer.android.com/studio/build/optimize-your-build#offline_mode

如果您的网络连接速度较慢,则可能会缩短构建时间 当Gradle尝试使用网络资源来解决依赖关系时。 您可以通过只使用Gradle来告诉Gradle避免使用网络资源。 它已本地缓存的工件。

要在使用Android Studio进行构建时离线使用Gradle,请按照 如下:

  • 通过单击“文件”>“设置”(在Mac上为Android Studio>“首选项”)打开“首选项”窗口。
  • 在左窗格中,单击“构建,执行,部署> Gradle”。
  • 选中“离线工作”复选框。
  • 单击“应用”或“确定”。

如果要从命令行进行构建,请传递--offline选项。

无论何时添加依赖项,都需要下载。如果是这样,则需要建立连接。

您还可以通过网络连接一次导入所有依赖项,然后切换到离线模式。

,

理论上,您可以通过转至文件>设置>构建,执行,部署> Gradle并选中脱机工作来脱机工作。不幸的是,您必须至少在一次有效的Internet连接上同步项目一次,才能为项目下载必要的依赖项。

,

您要查找的说明位于从 Android 开发者网站下载的 zip 文件中的 README 文件中。

但在继续执行说明之前,您可能想知道:

即使它位于主下载页面并且看起来很新并且是最新的,但事实并非如此!它的最后一次修改是 2019 年 5 月 7 日,因此包含的最后一个 Android Gradle 插件版本 是 3.4.0,这是相当旧的... (这是今天检查的 2021/06/27

离线使用 Android Gradle 插件

本文档介绍了如何使用 Android Studio 进行离线下载 Android Gradle 插件和 Google Maven 存储库依赖项。

下载并解压离线组件

如果您还没有这样做,download the offline components 来自官方 Android Studio 网站。

下载离线组件后,将其内容解压缩到 以下目录,如果尚不存在,您可能需要创建该目录: %USER_HOME%/.android/manual-offline-m2/

要更新这些组件,只需重新下载离线组件,解压 他们的内容到您的 %USER_HOME%/.android/manual-offline-m2/ 目录中, 并根据需要替换任何文件。

在您的 Gradle 项目中包含离线组件

离线组件下载解压后,需要创建脚本 告诉 Gradle 使用包含您下载的离线组件 搜索您项目的 Android Gradle 插件和 Google Maven 依赖项。

注意:此脚本适用于您在工作站上打开的所有 Gradle 项目。

要创建脚本,请按照以下说明进行操作。请记住,您需要 仅创建和保存此脚本一次,即使在离线更新之后 组件。

  1. 使用以下路径和文件名创建一个空文本文件: %USER_HOME%/.gradle/init.d/offline.gradle
  2. 打开文本文件并包含以下脚本:
def reposDir = new File(System.properties['user.home'],".android/manual-offline-m2")
def repos = new ArrayList()
reposDir.eachDir {repos.add(it) }
repos.sort()

allprojects {
  buildscript {
    repositories {
      for (repo in repos) {
        maven {
          name = "injected_offline_${repo.name}"
          url = repo.toURI().toURL()
        }
      }
    }
  }
  repositories {
    for (repo in repos) {
      maven {
        name = "injected_offline_${repo.name}"
        url = repo.toURI().toURL()
      }
    }
  }
}
  1. 保存文本文件。
  2. (可选)如果您想验证离线组件是否正常工作 打算,从您的项目的 build.gradle 文件,如下图。在您确认您的项目构建后 如果没有这些存储库,您可以将它们放回您的 build.gradle 个文件。
buildscript {
    repositories {
        // Hide these repositories to test your build against
        // the offline components. You can include them again after
        // you’ve confirmed that your project builds ‘offline’.
        // google()
        // jcenter()
    }
    …
}
allprojects {
    repositories {
        // google()
        // jcenter()
    }
    ...
}

相关问答

依赖报错 idea导入项目后依赖报错,解决方案:https://blog....
错误1:代码生成器依赖和mybatis依赖冲突 启动项目时报错如下...
错误1:gradle项目控制台输出为乱码 # 解决方案:https://bl...
错误还原:在查询的过程中,传入的workType为0时,该条件不起...
报错如下,gcc版本太低 ^ server.c:5346:31: 错误:‘struct...