Small
Small copied to clipboard
增加或修改插件中ndk module覆盖安装不生效
- [x] 我已阅读并理解 贡献指南,严格遵循其约定。
错误报告
你做了什么?
-
使用small sample代码打包并运行,安装成功并能够正常运行
-
在jni_plugin的jniLibs中添加libsignature.so,在HelloPluginJni.java中
System.loadLibrary("signature"); -
重新打包并覆盖安装。
你期望的结果是什么?
覆盖安装运行正常
实际结果是什么?
Small编译正常,编译输出的插件bundle中包含libsignature.so。
覆盖安装运行报错,报错信息如下:
AndroidRuntime D Shutting down VM
E FATAL EXCEPTION: main
E Process: net.wequick.example.small, PID: 8622
E java.lang.UnsatisfiedLinkError: dalvik.system.PathClassLoader[DexPathList[[zip file "/data/app/net.wequick.example.small-2/lib/arm/libnet_wequick_example_small_app_detail.so", dir "/data/app/net.wequick.example.small-2/lib/arm/libnet_wequick_example_small_app_detail.so", zip file "/data/app/net.wequick.example.small-2/lib/arm/libnet_wequick_example_small_appok_if_stub.so", dir "/data/app/net.wequick.example.small-2/lib/arm/libnet_wequick_example_small_appok_if_stub.so", zip file "/data/app/net.wequick.example.small-2/lib/arm/libnet_wequick_example_small_app_mine.so", dir "/data/app/net.wequick.example.small-2/lib/arm/libnet_wequick_example_small_app_mine.so", zip file "/data/app/net.wequick.example.small-2/lib/arm/libnet_wequick_example_lib_analytics.so", dir "/data/app/net.wequick.example.small-2/lib/arm/libnet_wequick_example_lib_analytics.so", zip file "/data/app/net.wequick.example.small-2/lib/arm/libcom_example_mysmall_lib_style.so", dir "/data/app/net.wequick.example.small-2/lib/arm/libcom_example_mysmall_lib_style.so", zip file "/data/app/net.wequick.example.small-2/lib/arm/libnet_wequick_example_small_lib_utils.so", dir "/data/app/net.wequick.example.small-2/lib/arm/libnet_wequick_example_small_lib_utils.so", zip file "/data/app/net.wequick.example.small-2/lib/arm/libnet_wequick_example_small_app_main.so", dir "/data/app/net.wequick.example.small-2/lib/arm/libnet_wequick_example_small_app_main.so", zip file "/data/app/net.wequick.example.small-2/lib/arm/libnet_wequick_example_small_app_home.so", dir "/data/app/net.wequick.example.small-2/lib/arm/libnet_wequick_example_small_app_home.so", zip file "/data/app/net.wequick.example.small-2/base.apk"],nativeLibraryDirectories=[/data/app/net.wequick.example.small-2/lib/arm, /system/fake-libs, /data/app/net.wequick.example.small-2/base.apk!/lib/armeabi, /data/user/0/net.wequick.example.small/files/storage/net.wequick.example.small.app.mine/lib/armeabi-v7a, /system/lib, /vendor/lib]]] couldn't find "libsignature.so"
E at java.lang.Runtime.loadLibrary0(Runtime.java:984)
E at java.lang.System.loadLibrary(System.java:1562)
E at com.example.hellojni.HelloPluginJni.<clinit>(HelloPluginJni.java:31)
Small环境
Compile-time
gradle-small plugin : 1.3.0-beta5 (maven)
small aar : 1.3.0-beta5 (maven)
small binding aar : 1.1.2 (maven)
gradle core : 3.4.1
android plugin : 2.3.0
OS : Mac OS X 10.12.6 (x86_64)
Bundles
| type | name | PP | sdk | aapt | support | file(armeabi) | size |
|---|---|---|---|---|---|---|---|
| host | app | 26 | 25.0.2 | 25.1.0 | |||
| stub | app+stub | 26 | 25.0.2 | 25.1.0 | |||
| app | app.main | 0x77 | 26 | 25.0.2 | 25.1.0 | *_main.so | 11.7 KB |
| app | app.mine | 0x16 | 26 | 25.0.2 | *_mine.so | 109.4 KB | |
| app | app.ok-if-stub | 0x6a | 26 | 25.0.2 | *_stub.so | 19.7 KB | |
| app | app.detail | 0x67 | 26 | 25.0.2 | 25.1.0 | *_detail.so | 10.3 KB |
| app | app.home | 0x70 | 26 | 25.0.2 | *_home.so | 14 KB | |
| lib | lib.analytics | 0x76 | 26 | 25.0.2 | *_analytics.so | 126.6 KB | |
| lib | lib.utils | 0x73 | 26 | 25.0.2 | 25.1.0 | *_utils.so | 6.8 KB |
| lib | lib.style | 0x79 | 26 | 25.0.2 | 25.1.0 | *_style.so | 8.5 KB |
| web | web.about | 26 | 25.0.2 | 25.1.0 | *_about.so | 24.3 KB |
(注:编译时错误只需本行以上内容,运行时错误补充本行以下内容)
Runtime
Device : Xiaomi 5X
SDK : Android 7.0
ABI : armeabi-v7a