Skip to content

add android r8 consumer keep rules #140

Description

@ovitrif

Ship R8 consumer keep rules in the Android AAR for the UniFFI/JNA FFI surface.

Deliverable

  • Package consumer-rules.pro into the AAR as proguard.txt.
  • Keep com.sun.jna.Structure$FieldOrder.
  • Keep annotated com.synonym.bitkitcore struct classes, fields, and constructors.
  • Keep com.sun.jna.* JNI names used by libjnidispatch.
  • Keep classes that extend com.sun.jna.*, including com.sun.jna.ptr ByReference types.
  • Keep JNA Structure fields and constructors in com.synonym.bitkitcore.
  • Keep JNA Callback methods in com.synonym.bitkitcore.
  • Keep UniffiLib and IntegrityCheckingUniffiLib native method names in com.synonym.bitkitcore.
  • Fail bundleReleaseAar when those consumer keep rules are missing or empty.

Acceptance

  • The release AAR contains a non-empty proguard.txt with those keep rules.
  • A minified Bitkit build loads com.synonym.bitkitcore without an app keep for that package.

Metadata

Metadata

Assignees

Labels

No labels
No labels

Type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions