This also requires a realization that app development is not a linear process, and an end to the all-too-common workflow of designing an app and simply handing it over to developers. What’s needed, instead, is an organic process where designers and developers work together to create a vision that’s compelling and exciting — while also ensuring at every step that this vision can actually be brought into reality.
Really great read on the challenges of designing and building apps. This is why I always recommend to ship as early as possible, and just keep iterating on the little things you want to add. That goes for the actual app and the design.
Once I have an app I want to build, maybe I have a rough sketch of the UI on paper, and that should be enough for v1.0. I just use the standard iOS UI controls– no customization! That can always come later. The animations and customization are almost never central to the user experience. If you’re not getting user traction with standard iOS UI, customizing it isn’t going to help.
Once I’ve got a functioning app, I’ll take screenshots and import them into Sketch, and then start experimenting with customization: colors, placement, font size/weight, icons. Ship an update, and repeat.
Lastly, this iterative process is 10x more important if you’re trying to build an iOS and Android app. The apps should not look the same! However the client and probably the designer will keep insisting that they should. This topic deserves it’s own blog post, but I’ll just say this: look at the most popular apps on both platforms and compare how they look and feel. They are never pixel perfect duplicates, yet they still have the same brand identity.