nativescript-community / ui-image

Advanced and efficient image display plugin which uses Fresco (Android) and SDWebImage (iOS) to implement caching, placeholders, image effects, and much more.
Apache License 2.0
36 stars 9 forks source link

Plugin incompatible with the upcoming Android 11 (R) #27

Closed NickIliev closed 8 months ago

NickIliev commented 4 years ago

When using nativescript-image with ANdorid R (the upcoming 11) there is a runtime error related to unsatisfied architecture requirements.

System.err: java.lang.UnsatisfiedLinkError: dlopen failed: "/data/user/0/org.nativescript.coinscatbg/lib-main/libimagepipeline.so" is for EM_AARCH64 (183) instead of EM_X86_64 (62)
System.err:     at java.lang.Runtime.load0(Runtime.java:939)
System.err:     at java.lang.System.load(System.java:1625)
System.err:     at com.facebook.soloader.SoLoader$1.load(SoLoader.java:393)
System.err:     at com.facebook.soloader.DirectorySoSource.loadLibraryFrom(DirectorySoSource.java:77)
System.err:     at com.facebook.soloader.UnpackingSoSource.loadLibrary(UnpackingSoSource.java:458)
System.err:     at com.facebook.soloader.SoLoader.doLoadLibraryBySoName(SoLoader.java:731)
System.err:     at com.facebook.soloader.SoLoader.loadLibraryBySoName(SoLoader.java:639)
System.err:     at com.facebook.soloader.SoLoader.loadLibrary(SoLoader.java:577)
System.err:     at com.facebook.soloader.SoLoader.loadLibrary(SoLoader.java:525)
System.err:     at com.facebook.soloader.NativeLoaderToSoLoaderDelegate.loadLibrary(NativeLoaderToSoLoaderDelegate.java:24)
System.err:     at com.facebook.soloader.nativeloader.NativeLoader.loadLibrary(NativeLoader.java:43)
System.err:     at com.facebook.imagepipeline.memory.NativeMemoryChunk.<clinit>(NativeMemoryChunk.java:31)
System.err:     at com.facebook.imagepipeline.memory.NativeMemoryChunkPool.alloc(NativeMemoryChunkPool.java:29)
System.err:     at com.facebook.imagepipeline.memory.NativeMemoryChunkPool.alloc(NativeMemoryChunkPool.java:15)
System.err:     at com.facebook.imagepipeline.memory.BasePool.get(BasePool.java:243)
System.err:     at com.facebook.imagepipeline.memory.MemoryPooledByteBufferOutputStream.<init>(MemoryPooledByteBufferOutputStream.java:51)
System.err:     at com.facebook.imagepipeline.memory.MemoryPooledByteBufferFactory.newByteBuffer(MemoryPooledByteBufferFactory.java:73)
System.err:     at com.facebook.imagepipeline.memory.MemoryPooledByteBufferFactory.newByteBuffer(MemoryPooledByteBufferFactory.java:24)
System.err:     at com.facebook.imagepipeline.producers.LocalFetchProducer.getByteBufferBackedEncodedImage(LocalFetchProducer.java:78)
System.err:     at com.facebook.imagepipeline.producers.LocalFetchProducer.getEncodedImage(LocalFetchProducer.java:88)
System.err:     at com.facebook.imagepipeline.producers.LocalResourceFetchProducer.getEncodedImage(LocalResourceFetchProducer.java:33)
System.err:     at com.facebook.imagepipeline.producers.LocalFetchProducer$1.getResult(LocalFetchProducer.java:44)
System.err:     at com.facebook.imagepipeline.producers.LocalFetchProducer$1.getResult(LocalFetchProducer.java:40)
System.err:     at com.facebook.common.executors.StatefulRunnable.run(StatefulRunnable.java:43)
System.err:     at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1167)
System.err:     at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:641)
System.err:     at com.facebook.imagepipeline.core.PriorityThreadFactory$1.run(PriorityThreadFactory.java:50)
System.err:     at java.lang.Thread.run(Thread.java:923)
farfromrefug commented 4 years ago

@NickIliev do you have a sample app?

darkyto commented 4 years ago

I do but it is in a private repository and it is also hard to build. I was using the beta Android R emulator so it might be that the issue is related to the beta versions of R. Will test more and let you know if the issue still appears.

NickIliev commented 4 years ago

@farfromrefug actually the issue reproducible with the demo app.

Steps to reproduce:

Result:

System.err: java.lang.UnsatisfiedLinkError: dlopen failed: "/data/user/0/org.nativescript.demo/lib-main/libimagepipeline.so" is for EM_AARCH64 (183) instead of EM_X86_64 (62)System.err:     at java.lang.Runtime.load0(Runtime.java:939)
System.err:     at java.lang.System.load(System.java:1625)
System.err:     at com.facebook.soloader.SoLoader$1.load(SoLoader.java:393)
System.err:     at com.facebook.soloader.DirectorySoSource.loadLibraryFrom(DirectorySoSource.java:77)
System.err:     at com.facebook.soloader.UnpackingSoSource.loadLibrary(UnpackingSoSource.java:458)
System.err:     at com.facebook.soloader.SoLoader.doLoadLibraryBySoName(SoLoader.java:731)
System.err:     at com.facebook.soloader.SoLoader.loadLibraryBySoName(SoLoader.java:639)
System.err:     at com.facebook.soloader.SoLoader.loadLibrary(SoLoader.java:577)
System.err:     at com.facebook.soloader.SoLoader.loadLibrary(SoLoader.java:525)
System.err:     at com.facebook.soloader.NativeLoaderToSoLoaderDelegate.loadLibrary(NativeLoaderToSoLoaderDelegate.java:24)
System.err:     at com.facebook.soloader.nativeloader.NativeLoader.loadLibrary(NativeLoader.java:43)
System.err:     at com.facebook.imagepipeline.memory.NativeMemoryChunk.<clinit>(NativeMemoryChunk.java:31)
System.err:     at com.facebook.imagepipeline.memory.NativeMemoryChunkPool.alloc(NativeMemoryChunkPool.java:29)
System.err:     at com.facebook.imagepipeline.memory.NativeMemoryChunkPool.alloc(NativeMemoryChunkPool.java:15)
System.err:     at com.facebook.imagepipeline.memory.BasePool.get(BasePool.java:243)
System.err:     at com.facebook.imagepipeline.memory.MemoryPooledByteBufferOutputStream.<init>(MemoryPooledByteBufferOutputStream.java:51)
System.err:     at com.facebook.imagepipeline.memory.MemoryPooledByteBufferOutputStream.<init>(MemoryPooledByteBufferOutputStream.java:33)
System.err:     at com.facebook.imagepipeline.memory.MemoryPooledByteBufferFactory.newOutputStream(MemoryPooledByteBufferFactory.java:101)
System.err:     at com.facebook.imagepipeline.memory.MemoryPooledByteBufferFactory.newOutputStream(MemoryPooledByteBufferFactory.java:24)
System.err:     at com.facebook.imagepipeline.producers.NetworkFetchProducer.onResponse(NetworkFetchProducer.java:98)
System.err:     at com.facebook.imagepipeline.producers.NetworkFetchProducer$1.onResponse(NetworkFetchProducer.java:73)
System.err:     at com.facebook.imagepipeline.producers.HttpUrlConnectionNetworkFetcher.fetchSync(HttpUrlConnectionNetworkFetcher.java:121)
System.err:     at com.facebook.imagepipeline.producers.HttpUrlConnectionNetworkFetcher$1.run(HttpUrlConnectionNetworkFetcher.java:95)
System.err:     at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:462)
System.err:     at java.util.concurrent.FutureTask.run(FutureTask.java:266)
System.err:     at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1167)
System.err:     at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:641)
System.err:     at java.lang.Thread.run(Thread.java:923)
farfromrefug commented 4 years ago

@NickIliev should be fixed in 3.0.11