Skip to content

Support Android 17 Safer Dynamic Code Loading (DCL)  #184861

Description

@jmagman

For apps targeting API 37+, native libraries loaded via System.load() must be marked as read-only, otherwise the system throws an UnsatisfiedLinkError.

  • Ensure Flutter .so files are marked as read-only at build time.
  • Verify libapp.so loading via dlopen() remains unaffected by the libcore changes.
  • Stop using the ReLinker dependency to load native libraries on Android 17 and above. ReLinker programmatically modifies file permissions in its fallback mode, which conflicts with the new API 37 requirements.

https://developer.android.com/about/versions/17/behavior-changes-17#safer-dcl

Metadata

Metadata

Assignees

Labels

engineflutter/engine related. See also e: labels.platform-androidAndroid applications specificallyteam-androidOwned by Android platform team

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions