Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/357.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/214.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 在Android上初始化Myo hub时出现不满意的链接错误_Java_Android_Dalvik_Unsatisfiedlinkerror_Myo - Fatal编程技术网

Java 在Android上初始化Myo hub时出现不满意的链接错误

Java 在Android上初始化Myo hub时出现不满意的链接错误,java,android,dalvik,unsatisfiedlinkerror,myo,Java,Android,Dalvik,Unsatisfiedlinkerror,Myo,我正在开发一个Android应用程序,它将使用臂章。我想将其实现为一个可访问性服务,以便臂章可以检测到手势,例如导航回家等 我正在尝试初始化集线器,但应用程序停止时出现以下错误堆栈: 01-06 23:42:41.222 11979-11979/eu.miko.myoid E/AndroidRuntime: FATAL EXCEPTION: main Process: eu.mi

我正在开发一个Android应用程序,它将使用臂章。我想将其实现为一个可访问性服务,以便臂章可以检测到手势,例如导航回家等

我正在尝试初始化集线器,但应用程序停止时出现以下错误堆栈:

01-06 23:42:41.222 11979-11979/eu.miko.myoid E/AndroidRuntime: FATAL EXCEPTION: main
                                                           Process: eu.miko.myoid, PID: 11979
                                                           java.lang.UnsatisfiedLinkError: dalvik.system.PathClassLoader[DexPathList[[zip file "/data/app/eu.miko.myoid-1/base.apk"],nativeLibraryDirectories=[/data/app/eu.miko.myoid-1/lib/arm, /vendor/lib, /system/lib]]] couldn't find "libgesture-classifier.so"
                                                               at java.lang.Runtime.loadLibrary(Runtime.java:367)
                                                               at java.lang.System.loadLibrary(System.java:1076)
                                                               at com.thalmic.myo.scanner.Scanner.<clinit>(Scanner.java:31)
                                                               at com.thalmic.myo.Hub.init(Hub.java:201)
                                                               at eu.miko.myoid.MyoidAccessibilityService.onCreate(MyoidAccessibilityService.java:21)
                                                               at android.app.ActivityThread.handleCreateService(ActivityThread.java:2877)
                                                               at android.app.ActivityThread.-wrap4(ActivityThread.java)
                                                               at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1427)
                                                               at android.os.Handler.dispatchMessage(Handler.java:102)
                                                               at android.os.Looper.loop(Looper.java:148)
                                                               at android.app.ActivityThread.main(ActivityThread.java:5417)
                                                               at java.lang.reflect.Method.invoke(Native Method)
                                                               at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:726)
                                                               at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:616)
我正在使用最新的Myo Android SDK。使用最新固件在Nexus 5上进行测试

对我来说,这似乎是SDK内部的一个错误,但可能与我的配置有关?任何帮助都将不胜感激

SDK中给出的示例似乎没有遇到相同的问题

理论上,通过以下方式添加libsigner-classifier.so文件:

  • 我通过build.gradle文件将Myo SDK包括在项目中:

    dependencies {
        ...    
        repositories {
            maven {
                // this must point to the myorepository distributed with the Myo SDK
                url '../myorepository'
            }
        }
    compile('com.thalmic:myosdk:0.10.+@aar')
    }
    
  • myorepository包含myosdk-0.10.0.aar

  • 当我将其作为zip进行检查时,它包含libs/native-libs.jar

  • 当作为zip检查时,它又包含,每个文件都包含一个文件libsigner-classifier.so


  • 我可以通过切换回早期版本的Android gradle插件来解决这个问题。myosdk中的本机库似乎有问题,它们无法正确复制

    只需从项目中编辑build.gradle文件。1.3.0版适合我

    // Top-level build file where you can add configuration options common to all sub-projects/modules.
    buildscript {
        repositories {
            mavenCentral()
        }
        dependencies {
            **classpath 'com.android.tools.build:gradle:1.3.0'**
        }
    }
    

    你是否在你的应用程序中添加了
    libsigner.so
    文件?是的,请参见问题中的编辑:)@user2363767:你找到合适的解决方案了吗?我手动将.so文件复制到
    src/main/jniLibs
    文件夹作为解决方法。不,我没有。。。但是解决方法确实有效,非常感谢!!:)
    // Top-level build file where you can add configuration options common to all sub-projects/modules.
    buildscript {
        repositories {
            mavenCentral()
        }
        dependencies {
            **classpath 'com.android.tools.build:gradle:1.3.0'**
        }
    }