[ SERVICE // MOBILE ]

Mobile development

Native applications for Android and iOS — including on-device storage, platform differences and release processes.

A mobile application is not finished when it reaches the store. It is finished when it is clear how the next OS release will be handled.

Typical starting situations

  • An app has to keep working when there is no network connection.
  • Android and iOS should express the same domain logic while respecting their own interaction patterns.
  • Data must stay on the device — for privacy reasons, or because there is no backend.
  • A store review blocks a release and nobody knows why.

The technical work

  • Native development with Kotlin for Android and Swift for iOS
  • Designing on-device storage: schema, migrations, encryption, backup behaviour
  • Offline-first architecture where the app must remain fully usable without a network
  • Meeting permission, privacy declaration and store requirements on both platforms
  • Setting up release processes that also hold up for urgent fixes

How we approach it

Platform differences are named rather than hidden. Shared domain logic makes sense; a shared interface that feels foreign on both platforms rarely does.

Where data stays on the device, we settle early what a device change means and what happens on uninstall. Those answers belong in the architecture, not in an FAQ.

System context

AuraHarmony is EicDevCon's own product in this field and shows these decisions applied to a real case.

Discuss your technical starting point