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
ReLinker is "A robust native library loader for Android"
SoLoader is a native code loader for Android. It takes care of unpacking your native libraries and recursively loads dependencies on platforms that don't support that out of the box.
What should I choose for native library loading? What is the difference between the two?
The text was updated successfully, but these errors were encountered:
They originated as two different libraries that approached the same problem in different ways. Relinker was the first to properly handle transitive dependencies by parsing elf files, but I believe SoLoader has grown that capability by now.
Basically the difference is down to the internal approach. SoLoader attempts to hook in to the native machinery underpinning System.loadLibrary, while ReLinker does its fixes at a higher level, without reflecting in to the runtime. Each approach has its merits, but ReLinker ends up being a lighter dependency, if only by a bit. Certainly it's easier to build, hack on, and debug relinker, due to SoLoader using Buck for its build system - though since you're asking which library to use, that's probably not so relevant to you :)
As far as I'm aware, both libraries do the job just fine.
Edited to add: I don't know SoLoader very well. If I've misrepresented it, or left out something important, I'd love to be corrected!
ReLinker is "A robust native library loader for Android"
SoLoader is a native code loader for Android. It takes care of unpacking your native libraries and recursively loads dependencies on platforms that don't support that out of the box.
What should I choose for native library loading? What is the difference between the two?
The text was updated successfully, but these errors were encountered: