Я использую java-ipfs-api — https://www.npmjs.com/package/geth-private для своего DApp для Android. Мне удалось подключиться к демону ipfs и протестировать его с помощью функции ipfs.refs.local(); команда, как указано на github. Однако, когда я пытаюсь добавить файл с
NamedStreamable.ByteArrayWrapper ipfsFile = new NamedStreamable.ByteArrayWrapper(usr + ".txt", userJSON.toString().getBytes());
MerkleNode addFile = ipfs.add(ipfsFile);
или даже с
Файл NamedStreamable.FileWrapper = новый NamedStreamable.FileWrapper (новый файл («hello.txt»)); MerkleNode addResult = ipfs.add(файл);
как указано на странице github, он просто использовал класс Adnroid Looper, зацикливается на неопределенный срок и вылетает. Не могу найти ничего на github об этом или в коде. Кто-нибудь может помочь, пожалуйста? Спасибо.
-- РЕДАКТИРОВАТЬ
НЕИСПРАВНОЕ ИСКЛЮЧЕНИЕ: основной процесс: benkrarup.ethereum.messagingdapp, PID: 24710 java.lang.NoClassDefFoundError: Не удалось разрешить: Ljava/nio/file/Paths; на io.ipfs.api.IPFS.add(IPFS.java:85) на io.ipfs.api.IPFS.add(IPFS.java:70) на benkrarup.ethereum.messagingdapp.RegisterActivity$1.onClick(RegisterActivity.java: 91) в android.view.View.performClick(View.java:5610) в android.view.View$PerformClick.run(View.java:22265) в android.os.Handler.handleCallback(Handler.java:751) в android.os.Handler.dispatchMessage(Handler.java:95) в android.os.Looper.loop(Looper.java:154) в android.app.ActivityThread.main(ActivityThread.java:6077) в java.lang.reflect .Method.invoke(собственный метод) в com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:866) в com.android.internal.os.ZygoteInit.main(ZygoteInit.java:756) Вызвано : java.яз.
Он получает эту ошибку.
Я знаю, что уже поздно, но я создал реализацию IPFS, которая работает с Android. Это связано с тем, что java.nio.Paths недоступен на уровне API 24.
-- Я разместил ссылку на github для доступного кода, однако это быстрое непроверенное исправление.
Исмаэль