3

In my current code till android 6 (API-23) i was able to open libjavacore.so libcrypto.so and libwebviewchromium.so using dlopen() function. but in Android N access of private library are restricted by Google. So any one can help me how to load these libraries. Your app directly accesses private platform libraries. You should update your app to include its own copy of those libraries or use the public NDK APIs.

How to create copy of those library?

vinit
  • 131
  • 2
  • 9

1 Answers1

0

Seems like there is no way to workaround it correctly. In general you should write you own dynamic linker, that loads required libraries (or look to crazy_linker from NDK). Then you should perform symbol lookup manually. If library is already loaded by the system - you need only the latter.

Anyway such approach is fragile and doesn't guarantee that such tricks won't be disabled in the future. So better is to avoid using of private libraries and use your own versions or public NDK API instead.

Sergio
  • 8,099
  • 2
  • 26
  • 52