I have no doubt Google will not use iOS default GUI components. They will come up with some sort of abomination that superficially looks like the native iOS components but are off in every way when you look closely, like Qt does.
My expectations mirror your own, but a few of Jeff's thoughts imply that they won't take this path:
> App bars become UINavigationControllers. Standard controls just need light branded touches. Lists can align with modern UITableView and list-based collection view APIs. Menus are just UIMenus.
> And the best code is often no code :)
> The time we're saving not building custom code is now invested in the long [...]
Doesn’t sound like this is the case from the linked Twitter thread: „App bars become UINavigationControllers. Standard controls just need light branded touches. Lists can align with modern UITableView and list-based collection view APIs. Menus are just UIMenus.“
I was very surprised and disappointed when I discovered that. It didn't really felt cross platform anymore if for every component you need to do a platform check and render it differently. It sounds like flutter is more about having the same (custom or material) UI on both platforms and not having the framework do the "nativification" for you.
Nope. You can see a preview of what Jeff's talking about with iOS Chrome, which has already done its own iOS-ification (de-materialization?)
Also, the existing MDC components are already built on top of UIKit - things like MDCButton is a UIButton subclass (with a lot of stuff added on). Same for textfields, collectionview cells, etc. There's no from scratch reimplementation of Apple's UI components that I'm aware of, just extensions to make the Material design stuff happen.
That always confused me, because I thought Apple had a policy where you couldn't visually replicate their native iOS components, else they would reject you from the App Store. However I haven't worked in iOS-land since around 2015; has that policy changed?
On which OS and compared to what? The OS’s native framework? I can believe that.
But eg. on Linux, it is a native framework looking perfectly fine. And on Windows, their own native apps can look out of place in the intermix of 3 generations of “native” frameworks.