Gaia/Find My Device

From MozillaWiki
Jump to: navigation, search

Other documentation

Other wiki pages:

Design Specs

TODO: add these to


TODO: I'm sure there is a more complete spec attached to some bug, bug haven't found it yet.



Find My Device has a significant server-side component (, and its Gaia functionality is split between a headless app that is woken via push notifications; one file inside the System app that listens for notifications and launches the FMD app; and a panel inside the Settings app, where users can enable or disable FMD.

Code on github:


Currently, a lost device can be remotely tracked via GPS, locked with a custom lockscreen PIN and optional message, set to ring the ringtone at max volume, or all data can be wiped.

Users can use FMD by logging into the Find My Device website ( with their Firefox Account. A Firefox Account is required to enable FMD on device.


TODO: description of how the code works and what we'd like to refactor.

  • Topics to cover:
    • FMD as consumer of FxA RP API
    • client-server protocol
    • communication among settings, system, fmd apps
    • how each of the commands (track, ring, lock, wipe) works
    • things to refactor:

Standardization Efforts

QA / Filing Bugs

Bugs should be filed in under the "Gaia" product and "Find My Device" component. It is very useful to enable Gaia Debug Traces (inside Settings > Developer) before reproducing a bug, as lots of extra debug info will be appended to the adb logs.

Server bugs are filed on github:


  • Front-End Tests
  • Back-End Tests
    • TODO



Security Review