DApp Development – How Can DApps Work on Smartphones

dapp-developmentdappsjavascriptlight-clientsweb3js

How can dapps on mobile web browsers interact with web3.js?

Is there any tool like Metamask or Mist on the roadmap for mobile?

Best Answer

Status is a good start to develop a Ethereum mobile dapp.

Status is an open source messaging platform and mobile browser to interact with decentralized applications that run on the Ethereum Network.

Decentralized Apps at your fingertips: With Status your mobile device becomes a light client node on the Ethereum Network, enabling you to access Ethereum’s entire ecosystem from anywhere.

Smarter private messaging: Status is more than a messenger. Send payments and smart contracts to friends from within chats, and enjoy encrypted messaging by default, using a peer-to-peer protocol that doesn’t rely on centralized servers.

Status app (Ethereum Mobile gateway) is currently in alpha and can be tested on Android and iPhone.

Please find below a quick tutorial how to deploy a dapp on Status.Let's imagine you have a dapp (ReactNative, Ionic, ...) running on {DAPP_URL}

  1. Download Status on your phone and configure an account

  2. Install status-dev-cli npm i -g status-dev-cli

  3. In status console, enter /debug. That will give you your device IP address {DEVICE_IP}

  4. From your machine, make sure you can see you device and status: status-dev-cli scan (status must be running)

  5. Last step, consist in registering the dapp in status: status-dev-cli add "{\"whisper-identity\": \"my-dapp\", \"dapp-url\": \"{DAPP_URL}\", \"name\": \"MyDAPP\"}" --ip {DEVICE_IP}

You can now refresh you status app and you will see appear MyDapp in the list. The browser will launch you dapp and it can interact (web3) with the Ethereum blockchain and smart contracts.

By default, status run on the testnet network. You can switch to another node (private, testrpc or mainnet) with the following command status-dev-cli switch-node {NODE_URL} --ip {DEVICE_IP}

Documentation: Here

Some examples: Me and other devs have recently attended to the Status hackaton. This blog post (Winners Announcement) will illustrate some of the projects developed in a one-week period.

Related Topic