Skip to content

qtumproject/qtum-android

Repository files navigation

About
Combining a modified Bitcoin Core infrastructure with an intercompatible version of the Ethereum Virtual Machine (EVM), Qtum merges the reliability of Bitcoin’s unfailing blockchain with the endless possibilities provided by smart contracts. Designed with stability, modularity and interoperability in mind, Qtum is the foremost toolkit for building trusted decentralized applications, suited for real-world, business oriented use cases. Its hybrid nature, in combination with a first-of-its-kind PoS consensus protocol, allow Qtum applications to be compatible with major blockchain ecosystems, while providing native support for mobile devices and IoT appliances.

Getting Started
1)Clone project
2)Open with Android Studio

Configurations
The project has two configurations: default and local.

Default configuration contains mainnet parameters.

If you want to define your network settings, then you
1)Build project (gradle creates local.properties configuration file)
2)Edit local.properties configuration file.

Setting Custom Network Parameters

package org.qtum.wallet.utils.CurrentNetParams

    public static NetworkParameters getNetParams() {
        return QtumMainNetParams.get(); // or QtumTestNetParams.get();
    }

	public static String getUrl() {
        return "http://127.0.0.1:5555/";
    }

Change return value in getUrl() method like this

Gradle version

com.android.tools.build:gradle:2.3.3

Minimal Android SDK Version

19

Build Tools version

25.0.3

Technologies

  • Java (v. 7)
  • Google Firebase (v. 9.0.2)
  • Java RX (v. 1.1.6, Android RX – v. 1.2.1)
  • Retrofit 2 (v. 2.1.0)
  • Socket IO (v. 0.8.3)

Third Party Libraries (gradle)

  • 'com.github.designsters:android-fork-bitcoinj:1.+' – fork bitcoinj (with QTUM functionality)
  • 'com.google.zxing:core:3.2.1' – QR-Code/Barcode scanner
  • 'io.reactivex:rxjava:1.1.6', 'io.reactivex:rxandroid:1.2.1' – Java RX
  • 'io.socket:socket.io-client:0.8.3' - Socket IO Client
  • 'com.squareup.retrofit2:retrofit:2.1.0' HTTP Client

Android Fork BitcoinJ
The android fork bitcoinj library is a Java implementation of the Bitcoin protocol, which allows it to maintain a QTUM wallet and send/receive transactions without needing a local copy of Bitcoin Core. It comes with full documentation and some example apps showing how to use it
Link: https://github.com/bitcoinj/bitcoinj

BitcoinJ Technologies

  • Java 6 for the core modules, Java 8 for everything else
  • Maven 3+ - for building the project
  • Google Protocol Buffers - for use with serialization and hardware communications

About

No description, website, or topics provided.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages