Published on both APP Store & Google play store.



Introduction from DrayTek

https://www.draytek.com/products/draytek-network-management-app/

UX Designer: Victor; UI Designer: Sonia

Thanks Victor & Sonia for the great work.
Tool: Sketch, Figma

Development IDE & languages

XCode, Swift & ObjectC, UIkit, Core Data, Network, Core Location …
Android Studio, Kotlin & Java

Communications between APP and router

  • Scan routers via UDP broadcasting
  • APP and router use TR069 protocol to communicate
  • Use framework for the communication lib in iOS
  • Use AAR for the communication lib in Android

Challenges and what I learned

  • While building the apps, I gained experience in setting up routers, discovering that the configuration of a commercial router is far more complicated than any other device I’ve encountered.
  • The app specification document runs over 300 pages and outlines around 100 app UIs, making it a challenging endeavor to implement, pass quality control testing, and publish the two apps within a mere one and a half years.
  • The communication (TR069) between app and router takes really long time, which requires longer debugging time.
  • Learned SOAP, TR069, UDB broadcasting and all kinds of router settings.

Some Third-party libs integrated

iOS

Android

Some UIs



Demo Video

References

Check out the Alex Xu’s article for SOAP, REST, GraphQL and RPC comparisons.