Slide 1

Slide 1 text

2025.04.02 Kenichi Kambara (@korodroid) Flutter Tokyo #6 Navigating Flutter Upgrades

Slide 2

Slide 2 text

About me •Mobile App Development •Speeches (e.g. 20 Int’l/100+ Domestic) •Writings (e.g. 10 Dev Books) •[Of fi cial] Evangelist at NTT TechnoCross •[Private] iplatform.org ਆݪ ݈Ұ (X:@korodroid) NEW

Slide 3

Slide 3 text

About my product (Personal projects) Sekaiphone Pro(Flutter(+Kotlin/Swift))

Slide 4

Slide 4 text

Which version of Flutter are you using for app development?

Slide 5

Slide 5 text

Problems Encountered •Build Process Issues •Package Compatibility •Changes or Deprecation of APIs •UI Layout Breakages •Unexpected Behavior •Other Issues 

Slide 6

Slide 6 text

Problems Encountered •Build Process Issues •Package Compatibility •Changes or Deprecation of APIs •UI Layout Breakages •Unexpected Behavior •Other Issues 

Slide 7

Slide 7 text

1. Build Process Issues (except Package Compatibility) •Xcode Version Changes •CocoaPods Dependencies •Code Signing Con fi gurations •iOS Build Settings Adjustments In most cases, these issues occurred during iOS builds. 

Slide 8

Slide 8 text

Solution •Check build logs in detail •Ask Generative AI for suggestions •Search for similar issues online •Try other investigation methods (e.g., Git diff, of fi cial release notes, plugin issue trackers, community support) 

Slide 9

Slide 9 text

Solution •Check build logs in detail •Ask Generative AI for suggestions •Search for similar issues online •Try other investigation methods (e.g., Git diff, of fi cial release notes, plugin issue trackers, community support) 

Slide 10

Slide 10 text

2. Package Compatibility Dart SDK Version Issues During Flutter Upgrades e.g. Because some_package requires SDK version <3.0.0 and your SDK is 3.1.0, version solving failed. 

Slide 11

Slide 11 text

Solutions •Update dependencies to their latest versions •Use dependency_overrides temporarily •Fork the package and modify its Dart SDK constraints •Replace with an alternative package •Downgrade Flutter to match compatible Dart version 

Slide 12

Slide 12 text

Solutions •Update dependencies to their latest versions •Use dependency_overrides temporarily •Fork the package and modify its Dart SDK constraints •Replace with an alternative package •Downgrade Flutter to match compatible Dart version 

Slide 13

Slide 13 text

e.g. dependency_overrides dependencies: some_package: ^1.2.0 dependency_overrides: another_package: ^2.0.0 In the case: some_package 1.2.0 depends on another_package 1.0.0 

Slide 14

Slide 14 text

e.g. Replace with an alternative package Getting contact info: contacts_service -> fl utter_contacts Feature contacts_service (Before) fl utter_contacts (After) Import contacts_service/contacts_service.dart fl utter_contacts/ fl utter_contacts.dart Permission via permission_handler FlutterContacts.requestPermission() Contact Class Contact.displayName Contact.name. fi rst + Contact.name.last Fetching Contacts ContactsService.getContacts() FlutterContacts.getContacts (withProperties: true) 

Slide 15

Slide 15 text

Please let me know if you have any requests such as technical speeches, technical writings and so on. Facebook:http://fb.com/kanbara.kenichi X:@korodroid LinkedIn:http://www.linkedin.com/in/korodroid Thank you so much