You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
replace the two AndroidX Core convenience APIs used by the provider with their equivalent platform APIs, available since the provider's minimum SDK 23
remove the provider's direct androidx.core:core dependency and refresh dependency locking and verification metadata
add regression coverage for granted and denied phone-state permission handling and device UUID persistence
This avoids publishing AndroidX Core as a direct transitive dependency of the provider. In particular, it avoids requiring consumers to adopt compile SDK 37 solely because AndroidX Core 1.19 declares minCompileSdk 37.
Maven-local publication and external consumer compilation/assembly with compile SDK 36
candidate and previous AAR class lists and public JVM ABI compared with no differences
The instrumentation APK compiles successfully. The connected test was not run locally because no emulator or device was attached; it will run in the existing connected-test CI job.
This PR stems from Dependabot recommendation #302 .
The problem with upgrading Core to 1.19 is that it will require compileSDK 37 and that would cause potential issues for users. So, I'd rather delay this upgrade until using SDK 37 is more common. It's not really clear WHY this version requires the compileSDK bump either.
So, I then looked at simply staying at Core 1.18 but Amp suggested there there is an opportunity to remove the dependency on it. The provider now resolves Core 1.13 transitively through AppCompat rather than requesting Core 1.18 directly. The sample app continues to resolve Core 1.18 through its own AndroidX dependency graph, which is acceptable, the published provider no longer imposes it on customers.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
androidx.core:coredependency and refresh dependency locking and verification metadataThis avoids publishing AndroidX Core as a direct transitive dependency of the provider. In particular, it avoids requiring consumers to adopt compile SDK 37 solely because AndroidX Core 1.19 declares
minCompileSdk37.Validation
./gradlew --no-daemon spotlessCheck provider:test./gradlew --no-daemon app:lint provider:lint provider:assembleDebug app:assembleDebug./gradlew --no-daemon app:assembleDebugAndroidTestThe instrumentation APK compiles successfully. The connected test was not run locally because no emulator or device was attached; it will run in the existing connected-test CI job.