Github にある Android Library を外部モジュールにして使う

概要

自作の外部モジュールを Android Studio で使いたいという願望が芽生え 1 年位前にやったことを忘れそうなのでまとめる.

目標

dependencies {
    compile 'com.hogefuga:hoge-fuga:0.26.8@aar'
}

build.gradle に記載するだけで外部モジュールを導入できるようにする.

本題

apply plugin:'android-library' を記載する

apply plugin: 'android'apply plugin:'android-library' に変更する.

アーカイブ用スクリプトbuild.gradle に記載

apply plugin: 'maven'

uploadArchives {
    repositories {
        mavenDeployer {
            repository(url: 'file:repository')
            pom.version = '0.26.8'
            pom.groupId = 'com.hogefuga'
            pom.artifactId = 'hoge-fuga'
        }
    }
}

./gradlew uploadArchives を実行すると、 repository ディレクトリに公開用のオブジェクト群が生成されます. (repository ディレクトリに出力する理由は他のオブジェクトが紛れ込まないようにするため)

gh-pages ブランチ に push

repository ディレクトリの中身をルートディレクトリに配置すればOK.

外部モジュールを使う

buildscript {
    repositories {
        maven { url 'http://hoge-labs.github.io/hogefuga' }
    }
    dependencies {
        compile 'com.hogefuga:hoge-fuga:0.26.8@aar'
    }
}

これで Sync すれば完了.

【おまけ】gh-pages に index.html と README.md を付け加える

README.md には使い方等を記載

最低でも上の buildscript くらいは載せておく.

index.html はディレクトリの中身を書く

index.html の中身はこんな感じ

<html>
<body>
<h1>Indexof/</h1>
<hr>
<pre>
<a href="0.26.8/">0.26.8/</a>
<a href="0.26.9/">0.26.9/</a>
<a href="maven-metadata.xml">maven-metadata.xml</a>
<a href="maven-metadata.xml.md5">maven-metadata.xml.md5</a>
<a href="maven-metadata.xml.sha1">maven-metadata.xml.sha1</a>
</pre>
</body>
<html>

Q&A

基本的に本件とは関係のないことを記載しているのでスキップ推奨です.

Eclipse から Android Studio への変換

Eclipse にエクスポート機能があるのでそちらを使う.

.aar とは

こちらを参照

@aar の必要性

@aar がないと .aar ではないものを読み込む可能性があるため指定しておくとその心配がありません.

終わりに

ただのメモです. 詳しい内容は作業時に参考になったこちらを参照して下さい.

Qiita に書いた記事