Java 比特币钱包显示错误余额
我对比特币越来越熟悉了。所以现在有一个用户首次注册的函数,应该为他创建一个地址。但它不起作用。上面说已经有一些钱了Java 比特币钱包显示错误余额,java,bitcoin,bitcoinj,Java,Bitcoin,Bitcoinj,我对比特币越来越熟悉了。所以现在有一个用户首次注册的函数,应该为他创建一个地址。但它不起作用。上面说已经有一些钱了 // USER HAS NEVER USED COIN_ATLAS ( IT IS THE FIRST TIME ) public void addUser() { DBObject dbUser; WalletAppKit kit = new WalletAppKit(TestNet3Params.get(), new File("."), "forwardin
// USER HAS NEVER USED COIN_ATLAS ( IT IS THE FIRST TIME )
public void addUser()
{
DBObject dbUser;
WalletAppKit kit = new WalletAppKit(TestNet3Params.get(), new File("."), "forwarding-service-testnet");
params = TestNet3Params.get();
Debug.Log("Wait a bit...");
kit.startAsync();
kit.awaitRunning();
BlockChain chain = null;
my_wallet = kit.wallet(); // Wallet created for that user
try {
chain = new BlockChain(params, my_wallet,
new MemoryBlockStore(params));
} catch (BlockStoreException e) {
e.printStackTrace();
}
PeerGroup peerGroup = new PeerGroup(params, chain);
peerGroup.addPeerDiscovery(new DnsDiscovery(params));
peerGroup.addWallet(my_wallet);
peerGroup.startAsync();
Debug.Log("WALLET: " + my_wallet.currentReceiveAddress());
Debug.Log("WALLET BALANCE: " + my_wallet.getBalance().toFriendlyString());
my_wallet.addCoinsReceivedEventListener(new WalletCoinsReceivedEventListener() {
@Override
public void onCoinsReceived(Wallet wallet, Transaction transaction, Coin coin, Coin coin1) {
send("NEW TRANSACTION:");
sendWithMarkdown("FROM: " + wallet.currentReceiveAddress() + " : " + bold(coin1.toFriendlyString()));
Coin value = transaction.getValueSentToMe(wallet);
System.out.println("Received tx for " + value.toFriendlyString() + ": " + transaction);
Futures.addCallback(transaction.getConfidence().getDepthFuture(1), new FutureCallback<TransactionConfidence>() {
@Override
public void onSuccess(@Nullable TransactionConfidence transactionConfidence) {
send(bold("Transaction confirmed!"));
send(bold(value.toFriendlyString() + " is deposited!"));
}
@Override
public void onFailure(Throwable throwable) {
}
});
}
});
peerGroup.downloadBlockChain();
peerGroup.stopAsync();
dbUser = new BasicDBObject("_id", bot_user.getId())
.append("firstName", bot_user.getFirstName())
.append("password", bot_user.getPassword())
.append("address", my_wallet.currentReceiveAddress().toString())
.append("BTC", (double)my_wallet.getBalance().getValue());
collection.insert(dbUser);
}
但如果我在区块链中检查这个地址,它会显示0。
那么,如何以正确的方式创建钱包?您可能不想给我们您的钱包ID。删除此问题您刚刚在公共论坛上透露此信息令人痛苦。为了您自己的利益,请删除此问题。比特币地址设计为公共地址;谷歌it,也可能是“公开密钥加密”的背景。另外,这个特定的地址在testnet上(如代码所示),它不使用真正的货币。但是可能有更多的人可以在bitcoin.stackexchange.com上帮助你解决这个问题——我想你可以要求一个mod迁移,如果不重新发布解释和链接的话。
WALLET: mtrjbnpq5wDzoywrKqod63tpB7ZUFrr7q5
WALLET BALANCE: 1.21503904 BTC