DrayTek Router APP (iOS & Android)
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.
Comment