Подтвердить что ты не робот

Как использовать локальную зависимость aar?

i google о локальном ааре, каждый говорит, что он может работать, но он не работает в android studio 1.1.0.

Я пытаюсь использовать:

compile fileTree(dir: 'libs', include: ['*.aar'])

но подсказка:

Warning:Project app: Only Jar-type local dependencies are supported. Cannot handle: /Users/kycq/AndroidStudioProjects/QingTaJiao/app/libs/KycqBasic-release.aar

как мне сделать, чтобы использовать локальный аар? если я должен использовать:

compile 'com.example.library:library:[email protected]'

как это сделать?

4b9b3361

Ответ 2

В моем случае a должен распространять aar. Когда я импортирую aar в другой проект, появляется эта ошибка. Я решаю эту проблему, распределяя aar с помощью структуры зависимостей maven (pom, md5 и т.д.)

publishing {
  publications {
    maven(MavenPublication) {
      groupId "<GROUP_ID>"
      artifactId "<ARTIFACT_ID>"
      version <VERSION>
      artifact "$buildDir/outputs/aar/<AAR_FILE>"
      pom.withXml {
        def dependenciesNode = asNode().appendNode("dependencies")
        configurations.compile.allDependencies.each { dependency ->
          def dependencyNode = dependenciesNode.appendNode("dependency")
          dependencyNode.appendNode("groupId", dependency.group)
          dependencyNode.appendNode("artifactId", dependency.name)
          dependencyNode.appendNode("version", dependency.version)
        }
      }
    }
  }
  repositories {
    maven {
      url "$buildDir/repo"
    }
  }
}

В приложении Android вам нужно добавить локальный репозиторий maven:

allprojects {
  repositories {
    jcenter()
    maven {
      url "<LOCAL_REPO>"
    }
  }
}

И добавьте зависимость:

compile("<GROUP_ID>:<ARTIFACT_ID>:<VERSION>@aar") {
  transitive = true
}