Light Clients and Android – What Can Be Used to Interact with the Ethereum Network from an Android Device?

androidlight-clients

From my research, until I can build an Ethereum node on an Android device I’ll need to use a public API to interact with the network, such as BlockApps (http://www.blockapps.net/documentation#introduction). Is this correct or are there any other ways I could interact with the network?

And supposing I could build an Ethereum light-client on a mobile device eg using syng-im (https://github.com/syng-im) or similar could/would I have to interact with it using JavaScript? Or would it be dependant on the implementation?

EDIT: By 'interact' I'm referring to viewing balances, making transactions and creating accounts. However, I'm still interested in methods that would only allow a subset of these interactions.

Best Answer

Geth can be run both on Android as well as iOS for about 4 months now. The nightly builds of the develop branch always include the Android .aar archives that you can link against an Android Studio project and the iOS framework that you can use in XCode.

Since Geth does not yet feature the light client functionality (that one actually needs Ethereum global P2P protocol updates), it's quite heavyweight, but it will be the official way to run mobile DApps, and AFAIK only Geth has even a remote concept about light client support. Other implementations really need you to run your own server, which kind of beats the purpose of a decentralized platform.

The mobile library of Geth is currently uber-basic, you can just start up an embedded Geth node and connect to it, but all RPC functionality (on HTTP, WS and IPC) is callable, so anything you could do from any remote node you can do from mobile too.

You can read my reddit post from back December on how to use these:

The library archives on that post are obviously old, but you can skim the go-ethereum gitter channel for daily announces of fresh builds (this is the last one).

Related Topic