oss-licenses-plugin を使うと、アプリが依存するOSSライブラリのライセンス一覧画面を簡単に表示できる。
依存の追加
settings.gradle.kts の pluginManagement ブロックに resolutionStrategy を追加する。
pluginManagement {
resolutionStrategy {
eachPlugin {
if (requested.id.id == "com.google.android.gms.oss-licenses-plugin") {
useModule("com.google.android.gms:oss-licenses-plugin:0.12.0")
}
}
}
}
libs.versions.toml にバージョンとライブラリ、プラグインを追加する。
[versions]
ossLicenses = "17.5.1"
ossLicensesPlugin = "0.12.0"
[libraries]
play-services-oss-licenses = { module = "com.google.android.gms:play-services-oss-licenses", version.ref = "ossLicenses" }
[plugins]
oss-licenses = { id = "com.google.android.gms.oss-licenses-plugin", version.ref = "ossLicensesPlugin" }
app/build.gradle.kts にプラグインと依存を追加する。
plugins {
alias(libs.plugins.oss.licenses)
}
dependencies {
implementation(libs.play.services.oss.licenses)
}
OssLicensesMenuActivity の呼び出し
import android.content.Intent
import com.google.android.gms.oss.licenses.v2.OssLicensesMenuActivity
context.startActivity(Intent(context, OssLicensesMenuActivity::class.java))
実行するとライセンス一覧が表示される。

タイトルを変更する
タイトルを変更するにはOssLicensesMenuActivity.setActivityTitle()を事前に呼び出す。
OssLicensesMenuActivity.setActivityTitle("ライセンス一覧")
context.startActivity(Intent(context, OssLicensesMenuActivity::class.java))

テーマを変更する
OssLicensesMenuActivityは一部のスタイルを変更できる。
変更する場合は事前にOssLicensesMenuActivity.setTheme()を呼び出す。
val lightColorScheme =
lightColorScheme(
surface = Color(0xFFD0BCFF),
onSurface = Color(0xFF000000),
)
val darkColorScheme =
darkColorScheme(
surface = Color(0xFFD0BCFF),
onSurface = Color(0xFF000000),
)
OssLicensesMenuActivity.setTheme(lightColorScheme, darkColorScheme, null)
context.startActivity(Intent(context, OssLicensesMenuActivity::class.java))

debugビルドでライセンス一覧をすべて表示する
debugビルドでライセンス一覧をすべて表示する方法は 【Android】debugビルドでoss-licenses-pluginのライセンス一覧をすべて表示する を参照。
\確かな知識を身に着けたい、Androidアプリ開発を学びたい人にオススメ!/
