Slide 29
Slide 29 text
02 / 03
EXTENSION & SOURCESET
AGP 9, no more type parameters
BEFORE AGP 8.x
fun CommonExtension<*, *, *, *>.something() { }
fun CommonExtension<*, *, *, *, *>.something() { }
fun CommonExtension<*, *, *, *, *, *>.something() { }
// AGP 7.0 - 8.0
// AGP 8.1
// AGP 8.3
AFTER AGP 9.0
interface com.android.build.api.dsl.CommonExtension
interface com.android.build.api.dsl.ApplicationExtension : CommonExtension
fun CommonExtension.something() { }
Type Parameter が増減していたため ソース互換性 が低かった
AGP 9 で CommonExtension の Type Parameter を全廃し、DSL ブロックをサブタイプ側へ移した