android开发以太链使用web3j,导入如下的包后运行报错:
compile ('org.web3j:core:3.3.1-android')
还有一点就是相关的文档上写道:Maven - android中还需要加上如下配置(不清楚在studio哪里配置):
<dependency>
<groupId>org.web3j</groupId>
<artifactId>core</artifactId>
<version>3.3.1-android</version>
</dependency>
所以我只是配置了build.gradle中的依赖,运行的时候报错了:
错误信息:
Error:Execution failed for task ':app:transformClassesWithDexForDebug'.
> com.android.build.api.transform.TransformException: com.android.ide.common.process.ProcessException: java.util.concurrent.ExecutionException: com.android.dex.DexIndexOverflowException: method ID not in [0, 0xffff]: 65536
代码如下:
//获取节点运行geth客户端的版本号
String url = "https://mainnet.infura.io/your api-key";
Web3j web3 = Web3jFactory.build(new HttpService());
// Web3j web3 = Web3j.build(new HttpService(url));
Web3ClientVersion web3ClientVersion = null;
try {
web3ClientVersion = web3.web3ClientVersion().sendAsync().get();
} catch (InterruptedException e) {
e.printStackTrace();
} catch (ExecutionException e) {
e.printStackTrace();
}
String clientVersion = web3ClientVersion.getWeb3ClientVersion();
ToastUtil.showShort(context,clientVersion+"-------");
以上请熟悉区块链的大神知道答案的执教一下,谢谢