Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
Optimize Flutter Workflow on Bitrise
Search
Sponsored
·
Ship Features Fearlessly
Turn features on and off without deploys. Used by thousands of Ruby developers.
→
Hiroki Matsue
March 26, 2019
Technology
1.3k
2
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
Optimize Flutter Workflow on Bitrise
Flutter Meetup Tokyo #8"でのLT資料です。
https://flutter-jp.connpass.com/event/121387/
Hiroki Matsue
March 26, 2019
More Decks by Hiroki Matsue
See All by Hiroki Matsue
Getting Screenshots Automatically in Flutter
matsue
2
590
Write tests for Provider
matsue
4
880
ややcomplexなBLoCへの対応
matsue
2
830
Flutterアプリの難読化とエラーレポート(iOS)
matsue
2
2.2k
いまさらだけど「良い通知」について考えてみた
matsue
4
11k
リテンション率を2倍にするための2つの視点
matsue
0
3.6k
リソースを効率的に使うためのバックログ活用事例
matsue
1
530
ローディング時のより良いUIの実装
matsue
2
2.1k
カウルにおけるElasiticsearchの導入と実例
matsue
0
970
Other Decks in Technology
See All in Technology
Amazon S3 Tablesに全部任せてみた結果——コンパクション/スナップショット管理は本当に手放せるか
shigeruoda
0
390
V8コントリビュート超入門
riyaamemiya
0
140
『止めない』を設計する — 制約の中で、事業の根幹を支える判断
hiroyaterui
0
190
いま、生成AIにKaggleをどこまで 任せられるか — ROGIIコンペでの進め方とTips
k951286
3
1.4k
データエンジニアの困りごとをDevinと一緒に解消する
10xinc
2
830
推論の観測、できていますか? 〜 Google Cloud Gemini Enterprise Agent Platformで 3つの Gemini モデルを実測して踏んだ、評価の罠 〜
shukob
PRO
0
150
AIとペアプロを始める。人とのペアプロをやめる。ペアプロの良さを改めて知る。もっと好きになった。 / Rediscovering Pair Programming
honyanya
1
240
AI 駆動 Terraform 開発/SRE_BizReach_MIXI_2
visional_engineering_and_design
1
630
Self Healing Rollouts: Automating Production Fixes with Agentic AI
kdubois
0
150
GuardDuty 検知対応を DevOps Agent で効率化しようとしている話 / GuardDuty Investigations with DevOps Agent
masahirokawahara
1
310
書籍『生成AIの安全性入門』の入門
wataoka
0
210
Kiro Crewしか勝たん!?
miu_crescent
PRO
0
180
Featured
See All Featured
How to build an LLM SEO readiness audit: a practical framework
nmsamuel
1
890
The B2B funnel & how to create a winning content strategy
katarinadahlin
PRO
1
500
<Decoding/> the Language of Devs - We Love SEO 2024
nikkihalliwell
1
320
The agentic SEO stack - context over prompts
schlessera
0
890
Mozcon NYC 2025: Stop Losing SEO Traffic
samtorres
1
520
[RailsConf 2023] Rails as a piece of cake
palkan
59
7k
Data-driven link building: lessons from a $708K investment (BrightonSEO talk)
szymonslowik
1
1.3k
The Limits of Empathy - UXLibs8
cassininazir
1
640
Test your architecture with Archunit
thirion
2
2.4k
A brief & incomplete history of UX Design for the World Wide Web: 1989–2019
jct
2
500
Pawsitive SEO: Lessons from My Dog (and Many Mistakes) on Thriving as a Consultant in the Age of AI
davidcarrasco
0
240
How to Get Subject Matter Experts Bought In and Actively Contributing to SEO & PR Initiatives.
livdayseo
0
190
Transcript
Optimize Flutter Workflow on Bitrise Hiroki Matsue (@macs_6) Mar 26th,
2019 Flutter Meetup Tokyo #8
This talk is about CI steps time reduction
Target Listeners
Who know this
Faster CI makes devs happier
Reulst on my project Timeout => 9 minutes Just few
minutes, but Free plan is not so bad ¯\(π)/¯
Flutter CI steps 1. Install Flutter 2. Execute "flutter analyze"
3. Execute "flutter test" 4. Execute "flutter build" (Android and iOS both)
(Each results were measured with my personal project)
Try "Flutter Install" step optimization
TL;DR: Just wait new Hybrid stack https://discuss.bitrise.io/t/making-flutter-builds-faster/3976/8
What if we cache Flutter? • flutter installation: 137sec 㱺
2sec (-135sec) • cache-pull: 11sec 㱺 27sec (+16sec) • cache-push: 92sec 㱺 209sec (+117sec) Only remote storage was changed, no time reduction
Try "flutter build" step optimization
TL;DR: Cache following items • ios/Pods/ • $HOME/Library/Developer/Xcode/DerivedData
Pods caching result • flutter build ios: 172sec 㱺 99sec
(-73sec) • cache-pull: 9sec => 11sec (+2sec) • cache-push: 58sec 㱺 72sec (+14sec) Very effective !
DerivedData caching result • flutter build ios: 140sec 㱺 54sec
(-86sec) • cache-pull: 15sec => 15sec (+0sec) • cache-push: 85sec 㱺 141sec (+56sec)
Non effective items on my project • build/ • ios/Flutter/
• ios/.symlinks/ • $HOME/.gradle/ • android/.gradle/ cache-push tooks too long time for .gradle on my project.
References • "60% faster builds: force Xcode to use caching
on Bitrise!" https://medium.com/@bitrise/60-faster-builds-force-xcode- to-use-caching-on-bitrise-af8979ca39a6 • "Cache Gradle dependencies on Bitrise" https:// medium.com/bitrise/cache-gradle-dependencies-on- bitrise-cf19a2580d07
Faster "flutter analyze" and "flutter test"? Sorry, I have no
idea now ¯\(π)/¯
Other ideas • Put dependencies to the repo • Use
build scheduling for long workflows • Pay for Bitrise • Concurrent build for ios and apk
Summary Caching following items, and using new Flutter Hybrid stacks
will be efficient. • ios/Pods/ • $HOME/Library/Developer/Xcode/DerivedData
Thanks