For all of you that have been following the project since our initial story on Medium you might be interested in how the project has evolved since then.
And for all of you that want to test it right away, you can download it from the Google Playstore :)
As the whole world around Ethereum and blockchain technology is still in its infancy and thus often very cumbersome to use we designed the app with the goal to relieve some of this inherent complexity. The look and feel as well as the navigation of our wallet app use Google’s Material Design metaphor and is therefore similar to well known and broadly used Android apps.
In our internal test environment we now use solely Parity with its awesome transaction tracing API, which makes it possible to fetch the entire transaction history without the need to query a block explorer.
We support now eth-URIs. This will help 3rd party apps to communicate with the app more easily. At the moment the app can cope with addresses (e.g.: eth:0xa2a9143a910e641f81715c87a0172c9554bfec44) as well as signed and unsigned transactions. This seamlessly integrates with our API which makes it possible to compose complex transactions such as writing to a smart contract. We chose this approach to also allow high security use cases where transactions need to be signed offline.
At the initial start of the wallet app we offer new users the possibility to either choose an auto-generated identity or to import an existing one. For new users curious about blockchain technology we wanted to make their first experience with Ethereum as comfortable as possible. For this reason we’ve set up a Proof-of-Authority chain with near-instant transaction approval where users can play around completely anonymously and without any risk of losing their funds.
More experienced users can of course immediately connect their own Ethereum Node easily.
Use your own infrastructure
We have made it very comfortable to use Ethereum Android with your own infrastructure. Our secure proxy makes it possible to connect your Ethereum Node end-to-end encrypted with our wallet app and assures that only harmless JSON RPC calls are accepted.
For demo purposes you are able to deploy a private PoA-blockchain in just a few seconds:
docker run --name poa-test-chain -d pacs/poa-test-chain
docker run --rm --link poa-test-chain:poa-test-chain -p 80:8080 pacs/ethereum-secure-proxy --url http://poa-test-chain:8545
Check the secure-proxy repo for more information.
Connect your app with Ethereum
We extended our library. It is now possible to securely access the low-level API of the Ethereum Virtual Machine. Additionally though still experimental we built an abstraction layer on top to hide the complexity of smart contract interaction. It offers Android Developers to use regular Java Interfaces to create and interact with smart contracts so that they can focus on their individual app and don’t need to care about Solidity as well as RLP. This opens the door for countless possibilities to use blockchain technology in the context of Android Apps.
This is just a next step in our long journey towards decentralization. We have a lot of ideas, some of them are in PoC state others are more mature like ERC-20 token support, which has not yet made it in the current version but is expected to be added pretty soon.