【Kotlin/Android】ライブラリを自作する方法!導入と公開の手順
この記事からわかること
- Android Studio/Kotlinでライブラリを自作にする方法
- ライブラリを公開する手順
- AARファイルの作成
index
[open]
\ アプリをリリースしました /
友達や家族の誕生日をメモ!通知も届く-みんなの誕生日-
posted withアプリーチ
環境
- Android Studio:Koala
- Kotlin:1.8.20
Androidで利用できるライブラリを自作して導入する方法と外部に公開して誰でも利用できるようにするまでの流れをまとめていきます。
Androidではライブラリはモジュールとして作成して切り出し、プロジェクトへ導入します。外部へ公開したい場合はAARファイルへ変換し公共のリポジトリへアップロードすることで誰でも利用できるようにすることができます。
自作ライブラリを作成する方法
モジュールを作成するための手順は以下の通りです。モジュール自体は1つのプロジェクト内で特定の処理を切り出して管理するために利用されます。
- Android Studioでプロジェクトを作成
- プロジェクト内に新規でモジュールを作成
- モジュール内にコードを記述
- gradleで読み込み、プロジェクトに反映
1.Android Studioでプロジェクトを作成
Android Studioでプロジェクトを作成します。すでにあればスキップしてください。
2.プロジェクト内に新規でモジュールを作成
上部メニューの「File」>「New」>「New Module...」をクリックします。
左タブから「Android Library」を選択してライブラリのModule名とパッケージ名を設定します。
3.モジュール内にコードを記述
新しくModuleが追加されたのでライブラリとして切り出すコードを実装します。
今回はシンプルにToast
を表示する機能を切り出してみたいと思います。
class MyLibraryClass {
companion object {
public fun showToast(context: Context, msg: String) {
Toast.makeText(context, msg, Toast.LENGTH_SHORT).show()
}
}
}
これでライブラリ自体は完成です。最後にプロジェクト内で利用できるようにしていきます。
4.gradleで読み込み、プロジェクトに反映
app側の「build.gradle」に以下を追加します。
dependencies {
// 〜〜〜〜〜〜〜〜
implementation(project(":mylibrary"))
}
これでアプリから該当のライブラリ(モジュール)が使用できるようになりました。
import android.os.Bundle
import android.widget.Button
import androidx.activity.ComponentActivity
import com.xxxxx.mylibrary.MyLibraryClass
class MainActivity : ComponentActivity() {
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
setContentView(R.layout.activity_main)
val button = findViewById<Button>(R.id.button)
button.setOnClickListener {
MyLibraryClass.showToast(this, "Test")
}
}
}
自作ライブラリを他のプロジェクトに導入する方法
作成したライブラリを他のプロジェクトで導入するにはAAR(Android Archive)ファイルを作成する必要があります。AARファイルとはAndroidアプリケーションのライブラリやモジュールをパッケージ化するための形式で、JARファイルやライブラリのAndroidManifestファイルなどを含んだZIP形式のファイルになります。
AARファイルを生成する
AARファイルを生成するには作成したモジュールを選択した状態で上部メニューの「Build」>「Make Module 'プロジェクト名.モジュール名'」をクリックします。
以下のパスにaarファイルが生成されています。
/プロジェクト名/モジュール名/build/outputs/aar
このAARファイルをそのままローカルに格納して導入したり、外部リポジトリにアップロードすることで他のプロジェクトで利用できるようになります。ローカルに入れ込んで利用する方法は以下の記事を参考にしてください。
Maven Central経由で公開する
作成したライブラリを誰でも利用できるようにするためにはMaven Centralなどの外部リポジトリ経由で公開する必要があります。
まだまだ勉強中ですので間違っている点や至らぬ点がありましたら教えていただけると助かります。
ご覧いただきありがとうございました。