jas*_*iko 6 java android dalvik unsatisfiedlinkerror myo
我正在开发一个将使用Myo臂章的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)
Run Code Online (Sandbox Code Playgroud)
根据Myo文档,这是我用于集线器初始化的代码.我已经尝试将它放在辅助功能服务的onCreate和onServiceConnected方法中,无论如何都会出现错误.
Hub hub = Hub.getInstance();
if (hub.init(this, getPackageName())) {
Intent intent = new Intent(this, ScanActivity.class);
startActivity(intent);
hub.setLockingPolicy(Hub.LockingPolicy.NONE);
hub.addListener(mListener);
}
else {
Log.e(TAG, "Could not initialize the Hub.");
}
Run Code Online (Sandbox Code Playgroud)
我正在使用最新的Myo Android SDK.使用最新固件在Nexus 5上进行测试.
对我而言,这似乎是SDK内部的一个错误,但也许这与我的配置有关?任何帮助,将不胜感激.
SDK中给出的示例似乎没有遇到相同的问题.
理论上,通过以下方式添加了libgesture-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')
}
Run Code Online (Sandbox Code Playgroud)myorepository包含myosdk-0.10.0.aar.
当我将其作为zip检查时,它包含libs/native-libs.jar
反过来,当检查为zip时,包含
,每个包含单个文件libgesture-classifier.so
小智 1
我可以通过切换回 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'**
}
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
944 次 |
| 最近记录: |