Tôi đang phát triển một ứng dụng Android sẽ sử dụng băng đeo Myo. Tôi muốn triển khai dịch vụ đó dưới dạng dịch vụ trợ năng, do đó cử chỉ được phát hiện bởi băng tay có thể, ví dụ: hướng nhà vvLỗi liên kết không hài lòng khi khởi tạo trung tâm Myo trên Android
Tôi đang cố gắng để khởi tạo các trung tâm, nhưng ứng dụng dừng với lỗi chồng sau:
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)
Đây là mã tôi sử dụng cho trung tâm khởi, theo tài liệu hướng dẫn Myo. Tôi đã thử đặt nó trong cả hai phương thức onCreate và onServiceConnected của dịch vụ trợ năng, lỗi xảy ra dù sao đi nữa.
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.");
}
Tôi đang sử dụng SDK Android mới nhất của tôi. Thử nghiệm trên Nexus 5 với phần mềm mới nhất.
Đối với tôi, có vẻ như lỗi bên trong SDK, nhưng có lẽ đó là điều gì đó liên quan đến cấu hình của tôi? Bất kỳ trợ giúp sẽ được đánh giá cao.
Các mẫu được cung cấp trong SDK dường như không gặp phải vấn đề tương tự.
Về lý thuyết, các tập tin libgesture-classifier.so được thêm vào, thông qua như sau:
tôi bao gồm Myo SDK trong dự án thông qua các tập tin build.gradle:
dependencies { ... repositories { maven { // this must point to the myorepository distributed with the Myo SDK url '../myorepository' } } compile('com.thalmic:myosdk:[email protected]') }
Các myorepository chứa myosdk-0.10.0.aar.
nào, khi tôi kiểm tra nó như là một zip, chứa libs/mẹ đẻ-libs.jar
nào, đến lượt nó khi xem xét như một zip, chứa , mỗi trong số đó có chứa các tập tin duy nhất libgesture- classifier.so
Bạn có thêm tệp 'libgesture-classifier.so' vào ứng dụng của mình không? – geisshirt
Có, xem chỉnh sửa trong câu hỏi :) –
@ user2363767: Bạn đã tìm thấy giải pháp thích hợp cho điều này chưa? Tôi đã sao chép các tệp .so theo cách thủ công vào thư mục 'src/main/jniLibs' như một giải pháp. – JiTHiN