Clone this repo:
  1. 1dc7c04 Flutter packages are now under //third_party/dart-pkg/git/flutter. by P.Y. Laligand · 25 hours ago master
  2. 1cffdf1 Allow setting fuchsia_root from outside by YoungSeok Yoon · 32 hours ago
  3. e10eefa refactor(tools): update makefile locations by YoungSeok Yoon · 2 days ago
  4. 157fc57 feat(contacts): create contacts picker list item by Meiyi Alice Li · 2 days ago
  5. 6941b02 feat(contacts): listen for ledger updates by Meiyi Alice Li · 3 days ago

Contacts

Status: Experimental

What exists here mostly boilerplate for the tooling and infrastructure needed to build out the UI as a set of Flutter Widgets that can be run on Fuchsia and have the UI developed on Android.

Structure

This repo contains code for running a vanilla Flutter application (iOS & Android) and a Fuchsia specific set of modules.

  • modules: Fuchsia application code using Modular APIs.
    • contacts: Is a Flutter app with two entry points, one for Fuchsia and one for Vanilla Flutter.
  • services: FIDL service definitions.

Development

Setup

This repo is already part of the default jiri manifest.

Follow the instructions for setting up a fresh Fuchsia checkout. Once you have the jiri tool installed and have imported the default manifest and updated return to these instructions.

It is recommended you set up the Fuchsia environment helpers in scripts/env.sh:

source scripts/env.sh

Authenticate

Follow authentication instructions for Modules:

Workflow

There are Makefile tasks setup to help simplify common development tasks. Use make help to see what they are.

When you have changes you are ready to see in action you can build with:

make build

Once the system has been built you will need to run a bootserver to get it over to a connected Acer. You can use the env.sh helper to move the build from your host to the target device with:

freboot

Once that is done (it takes a while) you can run the application with:

make run

You can run on a connected android device with:

make flutter-run

Optional: In another terminal you can tail the logs

${FUCHSIA_DIR}/out/build-zircon/tools/loglistener