Today (v0.1.x) the precompiled AAR is committed to this repo and shipped inside the npm tarball. Host APKs consume it with:
```kotlin
dependencies {
implementation(files("../../node_modules/@perryts/play-billing/android/play-billing-bridge.aar"))
implementation("com.android.billingclient:billing-ktx:7.1.1")
implementation("org.jetbrains.kotlinx:kotlinx-coroutines-android:1.8.1")
}
```
The two extra `implementation` lines exist because a `files(...)` Gradle dependency carries no POM metadata, so transitive deps don't resolve.
Goal
Publish the AAR to Maven Central as `com.perryts:play-billing-bridge` so the host APK shrinks to:
```kotlin
dependencies {
implementation("com.perryts:play-billing-bridge:0.2.0")
}
```
`billing-ktx` and `kotlinx-coroutines-android` get pulled in transitively from the published POM.
Work
Why deferred
Maven Central trusted publishing infrastructure is a meaningful one-time setup (DNS verification, Sonatype account approval, plugin wiring). The `files(...)` recipe in v0.1.x lets us ship a working binding today. This issue tracks the polish.
Today (v0.1.x) the precompiled AAR is committed to this repo and shipped inside the npm tarball. Host APKs consume it with:
```kotlin
dependencies {
implementation(files("../../node_modules/@perryts/play-billing/android/play-billing-bridge.aar"))
implementation("com.android.billingclient:billing-ktx:7.1.1")
implementation("org.jetbrains.kotlinx:kotlinx-coroutines-android:1.8.1")
}
```
The two extra `implementation` lines exist because a `files(...)` Gradle dependency carries no POM metadata, so transitive deps don't resolve.
Goal
Publish the AAR to Maven Central as `com.perryts:play-billing-bridge` so the host APK shrinks to:
```kotlin
dependencies {
implementation("com.perryts:play-billing-bridge:0.2.0")
}
```
`billing-ktx` and `kotlinx-coroutines-android` get pulled in transitively from the published POM.
Work
Why deferred
Maven Central trusted publishing infrastructure is a meaningful one-time setup (DNS verification, Sonatype account approval, plugin wiring). The `files(...)` recipe in v0.1.x lets us ship a working binding today. This issue tracks the polish.