Skip to content

Provide proguard rules to ignore missing Huawei classes #313

Open
@katiedotson

Description

@katiedotson

Summary

After updating to use the latest version of Gradle, which has the property android.enableR8.fullMode to be true by default, minified builds were failing due to missing proguard rules related to Huawei. Suggestion is to add these to the SDK so they are provided by default.

Code to reproduce

Gradle 8.0 +
Targeting SDK 34
minifyEnabled true in build configuration

Steps to reproduce

Build a project using the Radar dependency and default Google location services provider with Gradle 8.0+. The build will fail with a message referencing missing Proguard rules:


Missing classes detected while running R8. Please add the missing classes or apply additional keep rules that are generated in .../app/build/outputs/mapping/.../missing_rules.txt

Missing rules text file:


# Please add these rules to your existing keep rules in order to suppress warnings.
# This is generated automatically by the Android Gradle plugin.
-dontwarn com.huawei.hmf.tasks.OnFailureListener
-dontwarn com.huawei.hmf.tasks.OnSuccessListener
-dontwarn com.huawei.hmf.tasks.Task
-dontwarn com.huawei.hms.location.FusedLocationProviderClient
-dontwarn com.huawei.hms.location.Geofence$Builder
-dontwarn com.huawei.hms.location.Geofence
-dontwarn com.huawei.hms.location.GeofenceData
-dontwarn com.huawei.hms.location.GeofenceRequest$Builder
-dontwarn com.huawei.hms.location.GeofenceRequest
-dontwarn com.huawei.hms.location.GeofenceService
-dontwarn com.huawei.hms.location.LocationCallback
-dontwarn com.huawei.hms.location.LocationRequest
-dontwarn com.huawei.hms.location.LocationResult

OS version

Android 14

SDK installation method

Gradle-provided dependency via Maven Central

SDK version

3.8.11

Other information

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions