BitCoinJ für Cloud-basierte Anwendung

Ich arbeite derzeit an einem Cloud-basierten Projekt, das Zahlungen mit Bitcoins akzeptiert. Ich beabsichtige, BitCoinJ zu verwenden, um die Zahlung abzuwickeln. Leider ist die einzige Hilfe, die ich bekommen kann, die JavaWorld-Demo, die nicht mit dem aktuellen Code synchron zu sein scheint. Könnten Sie mich bitte auf einige bessere/aktualisierte Hilfelinks/Materialien hinweisen.

Antworten (2)

Es gibt einige Beispiele in der bitcoinj-Bibliothek selbst, die immer aktuell sind (da sie Teil des Builds sind).

Das von Mike geschriebene Befehlszeilentool 'WalletTool' ist ziemlich nützlich für die Grundlagen der Wallet-Erstellung, des Sendens, Empfangens usw.

WalletAppKit kit=new WalletAppKit(MainNetParams.get(), new File("."), "mywalletfilename");
kit.setAutoSave(true);
kit.startAsync();
kit.awaitRunning();
kit.wallet().addEventListener(new WalletListener());

während der Zuhörer so aussieht:

public class WalletListener  extends AbstractWalletEventListener {
public WalletListener() {
}

@Override
public void onCoinsReceived(org.bitcoinj.core.Wallet wallet, Transaction tx, Coin prevBalance, Coin newBalance) {
    System.out.println("-----> coins resceived: " + tx.getHashAsString()+" prevBalance = "+prevBalance.getValue()+" newBal="+newBalance.getValue());
    System.out.println("received: " + tx.getValue(wallet));
}

@Override
public void onTransactionConfidenceChanged(org.bitcoinj.core.Wallet wallet, Transaction tx) {
    System.out.println("-----> confidence changed: " + tx.getHashAsString());
    TransactionConfidence confidence = tx.getConfidence();
    System.out.println("new block depth: " + confidence.getDepthInBlocks());
}

@Override
public void onCoinsSent(org.bitcoinj.core.Wallet wallet, Transaction tx, Coin prevBalance, Coin newBalance) {
    System.out.println("coins sent");
}

@Override
public void onReorganize(org.bitcoinj.core.Wallet wallet) {
}

@Override
public void onWalletChanged(org.bitcoinj.core.Wallet wallet) {
}

@Override
public void onKeysAdded(List<ECKey> keys) {
    System.out.println("new key added");
}

    /*@Override
    public void onScriptsAdded(Wallet wallet, List<Script> scripts) {
        System.out.println("new script added");
    }*/

}

Sollte genug funktionieren, um BTC zu empfangen ;) Vergessen Sie nicht, dass sich TXConfidence geändert hat, wo es Ihnen mitteilt, dass sich die Anzahl der TX-Bestätigungen geändert hat und was sich geändert hat ... ;-)