IncrementallyUpdate icon indicating copy to clipboard operation
IncrementallyUpdate copied to clipboard

运行demo找不到动态库为啥,是动态库没生成吗?

Open bjhexn opened this issue 9 years ago • 8 comments

11-08 11:52:31.864 10343-14246/? E/dalvikvm: dlopen("/data/app-lib/com.yuyh.inc.update-1/libApkPatchLibrary.so") failed: dlopen failed: cannot locate symbol "signal" referenced by "libApkPatchLibrary.so"... 11-08 11:52:31.894 10343-14246/? E/AndroidRuntime: FATAL EXCEPTION: AsyncTask #1 Process: com.yuyh.inc.update, PID: 10343 java.lang.RuntimeException: An error occured while executing doInBackground() at android.os.AsyncTask$3.done(AsyncTask.java:300) at java.util.concurrent.FutureTask.finishCompletion(FutureTask.java:355) at java.util.concurrent.FutureTask.setException(FutureTask.java:222) at java.util.concurrent.FutureTask.run(FutureTask.java:242) at android.os.AsyncTask$SerialExecutor$1.run(AsyncTask.java:231) at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1112) at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:587) at java.lang.Thread.run(Thread.java:841) Caused by: java.lang.UnsatisfiedLinkError: dlopen failed: cannot locate symbol "signal" referenced by "libApkPatchLibrary.so"... at java.lang.Runtime.loadLibrary(Runtime.java:364) at java.lang.System.loadLibrary(System.java:526) at com.yyh.lib.bsdiff.DiffUtils.(DiffUtils.java:20) at com.yyh.lib.MainActivity$DiffTask.doInBackground(MainActivity.java:149) at com.yyh.lib.MainActivity$DiffTask.doInBackground(MainActivity.java:143) at android.os.AsyncTask$2.call(AsyncTask.java:288) at java.util.concurrent.FutureTask.run(FutureTask.java:237) at android.os.AsyncTask$SerialExecutor$1.run(AsyncTask.java:231)  at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1112)  at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:587)  at java.lang.Thread.run(Thread.java:841)  11-08 11:52:32.144 2196-2196/? E/octvm: open /sys/class/power_supply/battery/status error, No such file or directory 11-08 11:52:32.149 2196-2196/? E/octvm: open /sys/class/power_supply/battery/status error, No such file or directory

bjhexn avatar Nov 08 '16 03:11 bjhexn

使用小米3移动版手机

bjhexn avatar Nov 08 '16 03:11 bjhexn

build.gradle下要修改,编译jni。 库里面有提供so库,也可直接使用。

smuyyh avatar Nov 08 '16 03:11 smuyyh

使用小米3移动版手机

bjhexn avatar Nov 08 '16 03:11 bjhexn

跟这个应该没关系吧。

smuyyh avatar Nov 08 '16 04:11 smuyyh

刚试了下,用小米5s没问题。 小米 3用的 英伟达 的cpu. 是不是 这个 不太兼容

bjhexn avatar Nov 08 '16 06:11 bjhexn

编译jni可以选择目标平台的。默认是armbi,也可以加入x86 x86_64这些。只要C的代码能兼容就行~

smuyyh avatar Nov 08 '16 08:11 smuyyh

armbi 的话,理论是所有平台都可以的吧。 我用的小米3 ,还有个努比亚的 都不行。BAT是如何 兼容 这些的 呢

bjhexn avatar Nov 10 '16 10:11 bjhexn

@bjhexn 貌似系统检察ELF文件中的e_machine字段的值,armeabi也并非完全兼容吧,可以尝试吧各个平台的都编译一下。 'x86', 'x86_64', 'armeabi-v7a', 'arm64-v8a'

smuyyh avatar Nov 11 '16 01:11 smuyyh