How does Flutter handle platform-specific UI on Android and iOS?

Answer

Flutter renders its own widgets on its own canvas using Skia/Impeller — it does NOT use native platform widgets. This means a Flutter app looks identical on Android and iOS by default. To follow platform conventions, Flutter provides separate widget sets: Material widgets follow Android/Google design guidelines, and Cupertino widgets follow iOS design guidelines. You can use Platform.isIOS or defaultTargetPlatform to conditionally render different widgets. For embedding native views (like Maps or WebView), use PlatformView or established plugins.