tcking / GiraffePlayer

android video player base on ijkplayer
Apache License 2.0
681 stars 193 forks source link

"UnsatisfiedLinkError" on ARM 64 BIt devices. #12

Closed vipulpurohit closed 8 years ago

vipulpurohit commented 8 years ago

When I try to play any video In one of my device which have Qualcomm MSM8916 Snapdragon 410 64bit processor GiraffePlayer showing the Player not support this device error and in logcat I'm getting this:

java.lang.UnsatisfiedLinkError: dalvik.system.PathClassLoader [DexPathList[[zip file "/data/app/com.conx.helper-1/base.apk"],nativeLibraryDirectories=[/data/app/com.conx.helper-1/lib/arm64, /vendor/lib64, /system/lib64]]] couldn't find "libijkffmpeg.so" at java.lang.Runtime.loadLibrary(Runtime.java:366) at java.lang.System.loadLibrary(System.java:988) at tv.danmaku.ijk.media.player.IjkMediaPlayer$1.loadLibrary(IjkMediaPlayer.java:144) at tv.danmaku.ijk.media.player.IjkMediaPlayer.loadLibrariesOnce(IjkMediaPlayer.java:155) at tcking.github.com.giraffeplayer.GiraffePlayer.<init>(GiraffePlayer.java:263) at tcking.github.com.giraffeplayer.GiraffePlayerActivity.onCreate(GiraffePlayerActivity.java:30) at android.app.Activity.performCreate(Activity.java:5990) at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1106) at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2311) at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2420) at android.app.ActivityThread.access$900(ActivityThread.java:154) at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1321) at android.os.Handler.dispatchMessage(Handler.java:102) at android.os.Looper.loop(Looper.java:135) at android.app.ActivityThread.main(ActivityThread.java:5292) at java.lang.reflect.Method.invoke(Native Method) at java.lang.reflect.Method.invoke(Method.java:372) at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:904) at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:699)

But on other device which have Mediatek MT6753 which is also a 64bit processor, videos are playing fine. Can you please look at this issue as most of the android device nowadays are equipped with a 64 bit processor. Thanks.

tcking commented 8 years ago

if you using player as a libraray,do as follow: 1.add abiFilters in build.gradle: android{ ... defaultConfig{

    //add this
    ndk {
        abiFilters "armeabi-v7a"
    }
}

}

2.add android.useDeprecatedNdk=true in gradle.properties

tcking commented 8 years ago

anothor solution is compile arm64 so, i will compile it later.

tcking commented 8 years ago

https://github.com/tcking/GiraffePlayer/releases/tag/0.4 add the arm64 support

vipulpurohit commented 8 years ago

Thanks a lot for all your quick support. Now the library is working absolutely fine on all of my android devices.

Thanks again!!!