我已经实现了一个包含超级账本 libindy sdk 版本 1.15.0 的库,并尝试在支持 x86 平台的 Android 模拟器上使用这个库。
我的代码中出现错误,池将在哪里打开,Pool.openPoolLedger(poolName, config.toJson()).get()。
我没有使用 docker 版本的libindy
节点,我已经indy-tutorial-sandbox
在我的机器上构建并运行了 indy 节点。
我在我的 genesis-file 中使用 IP 值来自 indy-sandbox 上“make local”命令的返回值我正在使用支持模拟器 X86 的 Android Studio 3.5.3
我成功了initApi
,libindy
但是createpoolconfig
当我打算打开游泳池时,我得到了错误。
此外,我在模拟器中找不到包含相关文件的钱包和池目录的位置。
它得到以下错误:
W/System:资源调用关闭失败。资源调用关闭失败。
E/RelationshipsFragment: java.util.concurrent.ExecutionException: org.hyperledger.indy.sdk.ledger.TimeoutException: Timeout happens for ledger operation.
java.lang.IllegalStateException: java.util.concurrent.ExecutionException: org.hyperledger.indy.sdk.ledger.TimeoutException: Timeout happens for ledger operation.
at gov.tubitak.did.mostar.api.MostarAPIProviderManager$1.initialize(MostarAPIProviderManager.java:27)
at gov.tubitak.did.mostar.api.MostarAPIProviderManager$1.initialize(MostarAPIProviderManager.java:16)
at org.checkerframework.org.apache.commons.lang3.concurrent.AtomicSafeInitializer.get(AtomicSafeInitializer.java:77)
at gov.tubitak.did.mostar.api.MostarAPIProviderManager.getCurrentMostarApi(MostarAPIProviderManager.java:37)
at gov.tubitak.did.nixar.app.android.ui.relationships.RelationshipsFragment$1.onClick(RelationshipsFragment.java:75)
at android.view.View.performClick(View.java:7125)
at android.view.View.performClickInternal(View.java:7102)
at android.view.View.access$3500(View.java:801)
at android.view.View$PerformClick.run(View.java:27336)
at android.os.Handler.handleCallback(Handler.java:883)
at android.os.Handler.dispatchMessage(Handler.java:100)
at android.os.Looper.loop(Looper.java:214)
at android.app.ActivityThread.main(ActivityThread.java:7356)
at java.lang.reflect.Method.invoke(Native Method)
at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:492)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:930)
Caused by: gov.tubitak.did.mostar.api.MostarApiException: java.util.concurrent.ExecutionException: org.hyperledger.indy.sdk.ledger.TimeoutException: Timeout happens for ledger operation.
at gov.tubitak.did.mostarIndy.IndyMostarApi.initApiLibrary(IndyMostarApi.java:161)
at gov.tubitak.did.mostarIndy.IndyMostarApiProvider.create(IndyMostarApiProvider.java:21)
at gov.tubitak.did.mostar.api.MostarAPIProviderManager$1.initialize(MostarAPIProviderManager.java:23)
at gov.tubitak.did.mostar.api.MostarAPIProviderManager$1.initialize(MostarAPIProviderManager.java:16)
at org.checkerframework.org.apache.commons.lang3.concurrent.AtomicSafeInitializer.get(AtomicSafeInitializer.java:77)
at gov.tubitak.did.mostar.api.MostarAPIProviderManager.getCurrentMostarApi(MostarAPIProviderManager.java:37)
at gov.tubitak.did.nixar.app.android.ui.relationships.RelationshipsFragment$1.onClick(RelationshipsFragment.java:75)
at android.view.View.performClick(View.java:7125)
at android.view.View.performClickInternal(View.java:7102)
at android.view.View.access$3500(View.java:801)
at android.view.View$PerformClick.run(View.java:27336)
at android.os.Handler.handleCallback(Handler.java:883)
at android.os.Handler.dispatchMessage(Handler.java:100)
at android.os.Looper.loop(Looper.java:214)
at android.app.ActivityThread.main(ActivityThread.java:7356)
at java.lang.reflect.Method.invoke(Native Method)
at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:492)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:930)
Caused by: java.util.concurrent.ExecutionException: org.hyperledger.indy.sdk.ledger.TimeoutException: Timeout happens for ledger operation.
at java.util.concurrent.CompletableFuture.reportGet(CompletableFuture.java:361)
at java.util.concurrent.CompletableFuture.get(CompletableFuture.java:1923)
at gov.tubitak.did.mostarIndy.IndyMostarApi.initApiLibrary(IndyMostarApi.java:138)
at gov.tubitak.did.mostarIndy.IndyMostarApiProvider.create(IndyMostarApiProvider.java:21)
at gov.tubitak.did.mostar.api.MostarAPIProviderManager$1.initialize(MostarAPIProviderManager.java:23)
at gov.tubitak.did.mostar.api.MostarAPIProviderManager$1.initialize(MostarAPIProviderManager.java:16)
at org.checkerframework.org.apache.commons.lang3.concurrent.AtomicSafeInitializer.get(AtomicSafeInitializer.java:77)
at gov.tubitak.did.mostar.api.MostarAPIProviderManager.getCurrentMostarApi(MostarAPIProviderManager.java:37)
at gov.tubitak.did.nixar.app.android.ui.relationships.RelationshipsFragment$1.onClick(RelationshipsFragment.java:75)
at android.view.View.performClick(View.java:7125)
at android.view.View.performClickInternal(View.java:7102)
at android.view.View.access$3500(View.java:801)
at android.view.View$PerformClick.run(View.java:27336)
at android.os.Handler.handleCallback(Handler.java:883)
at android.os.Handler.dispatchMessage(Handler.java:100)
at android.os.Looper.loop(Looper.java:214)
at android.app.ActivityThread.main(ActivityThread.java:7356)
at java.lang.reflect.Method.invoke(Native Method)
at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:492)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:930)
Caused by: org.hyperledger.indy.sdk.ledger.TimeoutException: Timeout happens for ledger operation.
at org.hyperledger.indy.sdk.IndyJava$API.checkResult(IndyJava.java:92)
at org.hyperledger.indy.sdk.pool.Pool.access$100(Pool.java:20)
at org.hyperledger.indy.sdk.pool.Pool$1.callback(Pool.java:52)
at java.lang.reflect.Method.invoke(Native Method)
at com.sun.jna.CallbackReference$DefaultCallbackProxy.invokeCallback(CallbackReference.java:520)
at com.sun.jna.CallbackReference$DefaultCallbackProxy.callback(CallbackReference.java:551)