libhardware.so 未能在 Android N 中加载。这是由于新的 Android N 政策造成的吗?
libhardware.so is failing to load in Android N. Is this due to new Android N policies?
我的应用使用 android system/lib 中的 libhardware.so。这是一个本地应用程序。最多 Android M 它工作正常但是当尝试 运行 它与 Android N 时。它显示 dlopen 失败库 libhardware.so 未找到。
最近看到这篇文章https://developer.android.com/about/versions/nougat/android-7.0-changes.html#ndk
失败的原因是什么?
我也这么认为。您应该使用随您的应用提供的库。
是的。您可以从系统加载的库列表是 https://android.googlesource.com/platform/ndk/+/cc508145a36939c74399a90b9092673cf54e67f4/build/core/build-binary.mk#61
system_libs := \
android \
c \
dl \
jnigraphics \
log \
m \
m_hard \
stdc++ \
z \
EGL \
GLESv1_CM \
GLESv2 \
GLESv3 \
vulkan \
OpenSLES \
OpenMAXAL \
mediandk \
atomic
我的应用使用 android system/lib 中的 libhardware.so。这是一个本地应用程序。最多 Android M 它工作正常但是当尝试 运行 它与 Android N 时。它显示 dlopen 失败库 libhardware.so 未找到。
最近看到这篇文章https://developer.android.com/about/versions/nougat/android-7.0-changes.html#ndk
失败的原因是什么?
我也这么认为。您应该使用随您的应用提供的库。
是的。您可以从系统加载的库列表是 https://android.googlesource.com/platform/ndk/+/cc508145a36939c74399a90b9092673cf54e67f4/build/core/build-binary.mk#61
system_libs := \
android \
c \
dl \
jnigraphics \
log \
m \
m_hard \
stdc++ \
z \
EGL \
GLESv1_CM \
GLESv2 \
GLESv3 \
vulkan \
OpenSLES \
OpenMAXAL \
mediandk \
atomic