SlideShare a Scribd company logo
Adopting Flutter in Native
Mobile Applications
Adopting Flutter in Native Mobile Applications
About me
Alexandru Terente
alex.terente@gmail.com
Passionate about mobile app development
What is Flutter?
Build for any screen
UI toolkit
And you write Dart code
Flutter in existing mobile
applications
Flutter Module
Flutter Module added to projects as
Git Submodule
iOS Integration with CocoaPods
Flutter Engine &
FlutterViewController
iOS - Swift UIKit Example
Run the iOS App
Run in
fl
utter folder:
Run in iOS folder:
Open application .xcodeproj and hit Run
iOS Demo:
Android integration as Source Code
settings.gradle & app/build.gradle
Project settings.gradle
App build.gradle
FlutterActivity
AndroidManifest.xml
Start FlutterActivity
Run the Android App
Run in
fl
utter folder:
Android Demo:
Flutter MethodChannel
Communication between
fl
utter and native code
and writing platform speci
fi
c code.
Flutter MethodChannel
• Communication between native and Dart/Flutter code
• Write platform speci
fi
c code
• Use native apis and 3rd party frameworks
Adopting Flutter in Native Mobile Applications
MethodChannel iOS - Swift
MethodCallHandler - iOS
MethodChannel iOS - Swift
Flutter Side
Request work from native
iOS Demo:
MethodChannel Android - Kotlin
MethodCallHandler - Android
invokeMethod - Android
Android Demo:
Multiple Flutters
• https://docs.
fl
utter.dev/add-to-app/multiple-
fl
utters
• Flutter documentation has solution for multiple
fl
utters
• Uses multiple
fl
utter engines
• Multiple Modules
• The
fl
utter common code can be shared between modules via
Flutter Packages
Problems with Multiple Flutters
• Loads the system memory and CPU with multiple running engines
• Multiple calls via MethodChannels to share the same data with
different
fl
utter engines
• Share state data between Flutter engines has to be done via the
native platform
What is the Solution?
Use only one Flutter Engine
New Problem
• The Flutter Engine can have only one Activity or ViewController
attached at a speci
fi
c time.
• If you have nested native and
fl
utter navigation the FlutterActivity
and FlutterViewController will remain stuck when navigating back to
it.
The Solution
Recreate the FlutterActivity an FlutterViewController
each time we display it.
A/B Tests
We have in place all the pieces of the puzzle to do A/B
test with a remote con
fi
g to display either a
fl
utter or a
native screen.
Result
UI is migrated to Flutter because better
conversions, fresh and modern design.
Source Code
https://github.com/orgs/
FlutterIasiMeetup/repositories
Q&A
?
Resources
• https://docs.
fl
utter.dev/add-to-app
• https://docs.
fl
utter.dev/platform-integration/platform-channels
• https://docs.
fl
utter.dev/add-to-app/multiple-
fl
utters
• https://github.com/
fl
utter/put-
fl
utter-to-work
• https://github.com/
fl
utter/samples/tree/main/add_to_app

More Related Content

Similar to Adopting Flutter in Native Mobile Applications (20)

PDF
#Code2Create:: Introduction to App Development in Flutter with Dart
GDGKuwaitGoogleDevel
 
PDF
Flutter App Development- Why Should You Choose It .
Techugo
 
PPTX
Windows phone 8 overview
codeblock
 
PPTX
Choose flutter
SamuelAdetunji2
 
PDF
Flutter study jam 2019
Ahmed Abu Eldahab
 
PDF
Shifting landscape of mobile automation, and the future of Appium - Jonathan ...
Applitools
 
PPTX
Build Your First iPhone or Android App with Telerik AppBuilder
Jeffrey T. Fritz
 
PPTX
Flutter presentation for Gujarat University
bffs814
 
PPTX
Flutter Leap of Faith
Damith Warnakulasuriya
 
PPTX
Building Cross-Platform JavaScript Apps using Cordova
Noam Kfir
 
PDF
Import golang; struct microservice
Giulio De Donato
 
PDF
Cross Platform Mobile Development using Flutter by Wei Meng Lee at Mobile foc...
DevClub_lv
 
PPTX
INTRODUCTION TO FLUTTER BASICS.pptx
20TUCS033DHAMODHARAK
 
PPTX
Flutter vs react native – from developer point
BOSC Tech Labs
 
PDF
Performance, UI, and More: Flutter vs React Native Compared
Tien Nguyen
 
PDF
What makes Flutter the best cross platform sdk
Expeed Software
 
PDF
Mobile development with Flutter
Awok
 
PPTX
Flutter festival gdsc juet guna
SachinVerma869778
 
PPTX
Internet of things the salesforce lego machine cloud
andyinthecloud
 
PPTX
Academy PRO: .NET Core intro
Binary Studio
 
#Code2Create:: Introduction to App Development in Flutter with Dart
GDGKuwaitGoogleDevel
 
Flutter App Development- Why Should You Choose It .
Techugo
 
Windows phone 8 overview
codeblock
 
Choose flutter
SamuelAdetunji2
 
Flutter study jam 2019
Ahmed Abu Eldahab
 
Shifting landscape of mobile automation, and the future of Appium - Jonathan ...
Applitools
 
Build Your First iPhone or Android App with Telerik AppBuilder
Jeffrey T. Fritz
 
Flutter presentation for Gujarat University
bffs814
 
Flutter Leap of Faith
Damith Warnakulasuriya
 
Building Cross-Platform JavaScript Apps using Cordova
Noam Kfir
 
Import golang; struct microservice
Giulio De Donato
 
Cross Platform Mobile Development using Flutter by Wei Meng Lee at Mobile foc...
DevClub_lv
 
INTRODUCTION TO FLUTTER BASICS.pptx
20TUCS033DHAMODHARAK
 
Flutter vs react native – from developer point
BOSC Tech Labs
 
Performance, UI, and More: Flutter vs React Native Compared
Tien Nguyen
 
What makes Flutter the best cross platform sdk
Expeed Software
 
Mobile development with Flutter
Awok
 
Flutter festival gdsc juet guna
SachinVerma869778
 
Internet of things the salesforce lego machine cloud
andyinthecloud
 
Academy PRO: .NET Core intro
Binary Studio
 

Recently uploaded (20)

PDF
Ready Layer One: Intro to the Model Context Protocol
mmckenna1
 
PDF
Everything you need to know about pricing & licensing Microsoft 365 Copilot f...
Q-Advise
 
PDF
4K Video Downloader Plus Pro Crack for MacOS New Download 2025
bashirkhan333g
 
PDF
NPD Software -Omnex systems
omnex systems
 
PDF
Top Agile Project Management Tools for Teams in 2025
Orangescrum
 
PDF
MiniTool Partition Wizard Free Crack + Full Free Download 2025
bashirkhan333g
 
PDF
AI + DevOps = Smart Automation with devseccops.ai.pdf
Devseccops.ai
 
PPTX
Get Started with Maestro: Agent, Robot, and Human in Action – Session 5 of 5
klpathrudu
 
PDF
AI Prompts Cheat Code prompt engineering
Avijit Kumar Roy
 
PPTX
Milwaukee Marketo User Group - Summer Road Trip: Mapping and Personalizing Yo...
bbedford2
 
PPTX
Library_Management_System_PPT111111.pptx
nmtnissancrm
 
PDF
Empower Your Tech Vision- Why Businesses Prefer to Hire Remote Developers fro...
logixshapers59
 
PPTX
Prompt Like a Pro. Leveraging Salesforce Data to Power AI Workflows.pptx
Dele Amefo
 
PPTX
Comprehensive Risk Assessment Module for Smarter Risk Management
EHA Soft Solutions
 
PDF
intro_to_cpp_namespace_robotics_corner.pdf
MohamedSaied877003
 
PDF
Best Web development company in india 2025
Greenusys
 
PDF
Technical-Careers-Roadmap-in-Software-Market.pdf
Hussein Ali
 
PPTX
From spreadsheets and delays to real-time control
SatishKumar2651
 
PDF
Generic or Specific? Making sensible software design decisions
Bert Jan Schrijver
 
PDF
SciPy 2025 - Packaging a Scientific Python Project
Henry Schreiner
 
Ready Layer One: Intro to the Model Context Protocol
mmckenna1
 
Everything you need to know about pricing & licensing Microsoft 365 Copilot f...
Q-Advise
 
4K Video Downloader Plus Pro Crack for MacOS New Download 2025
bashirkhan333g
 
NPD Software -Omnex systems
omnex systems
 
Top Agile Project Management Tools for Teams in 2025
Orangescrum
 
MiniTool Partition Wizard Free Crack + Full Free Download 2025
bashirkhan333g
 
AI + DevOps = Smart Automation with devseccops.ai.pdf
Devseccops.ai
 
Get Started with Maestro: Agent, Robot, and Human in Action – Session 5 of 5
klpathrudu
 
AI Prompts Cheat Code prompt engineering
Avijit Kumar Roy
 
Milwaukee Marketo User Group - Summer Road Trip: Mapping and Personalizing Yo...
bbedford2
 
Library_Management_System_PPT111111.pptx
nmtnissancrm
 
Empower Your Tech Vision- Why Businesses Prefer to Hire Remote Developers fro...
logixshapers59
 
Prompt Like a Pro. Leveraging Salesforce Data to Power AI Workflows.pptx
Dele Amefo
 
Comprehensive Risk Assessment Module for Smarter Risk Management
EHA Soft Solutions
 
intro_to_cpp_namespace_robotics_corner.pdf
MohamedSaied877003
 
Best Web development company in india 2025
Greenusys
 
Technical-Careers-Roadmap-in-Software-Market.pdf
Hussein Ali
 
From spreadsheets and delays to real-time control
SatishKumar2651
 
Generic or Specific? Making sensible software design decisions
Bert Jan Schrijver
 
SciPy 2025 - Packaging a Scientific Python Project
Henry Schreiner
 
Ad

Adopting Flutter in Native Mobile Applications