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
The making of Falcon Pro 3
Search
joaquim Vergès
February 03, 2015
Technology
23
22k
The making of Falcon Pro 3
Lessons learned from building Falcon Pro 3
joaquim Vergès
February 03, 2015
Tweet
Share
More Decks by joaquim Vergès
See All by joaquim Vergès
Twitch For Android: From Meme to Dream
joaquimverges
0
76
Falcon PRO - Retour d'expérience (French)
joaquimverges
3
730
Other Decks in Technology
See All in Technology
ObsidianをMCP連携させてみる
ttnyt8701
2
130
讓測試不再 BB! 從 BDD 到 CI/CD, 不靠人力也能 MVP
line_developers_tw
PRO
0
770
~宇宙最速~2025年AWS Summit レポート
satodesu
0
150
本部長の代わりに提案書レビュー! KDDI営業が毎日使うAIエージェント「A-BOSS」開発秘話
minorun365
PRO
14
2k
Navigation3でViewModelにデータを渡す方法
mikanichinose
0
140
ローカルLLMでファインチューニング
knishioka
0
100
VCpp Link and Library - C++ breaktime 2025 Summer
harukasao
0
210
Snowflake Intelligenceで実現できるノーコードAI活用
takumimukaiyama
1
280
OAuth/OpenID Connectで実現するMCPのセキュアなアクセス管理
kuralab
5
590
What's new in OpenShift 4.19
redhatlivestreaming
1
400
比起獨自升級 我更喜歡 DevOps 文化 <3
line_developers_tw
PRO
0
770
Observability infrastructure behind the trillion-messages scale Kafka platform
lycorptech_jp
PRO
0
110
Featured
See All Featured
CoffeeScript is Beautiful & I Never Want to Write Plain JavaScript Again
sstephenson
161
15k
Writing Fast Ruby
sferik
628
61k
I Don’t Have Time: Getting Over the Fear to Launch Your Podcast
jcasabona
32
2.3k
Designing Experiences People Love
moore
142
24k
Creating an realtime collaboration tool: Agile Flush - .NET Oxford
marcduiker
30
2.1k
Optimising Largest Contentful Paint
csswizardry
37
3.3k
"I'm Feeling Lucky" - Building Great Search Experiences for Today's Users (#IAC19)
danielanewman
228
22k
Building Flexible Design Systems
yeseniaperezcruz
328
39k
10 Git Anti Patterns You Should be Aware of
lemiorhan
PRO
657
60k
How STYLIGHT went responsive
nonsquared
100
5.6k
jQuery: Nuts, Bolts and Bling
dougneiner
63
7.8k
VelocityConf: Rendering Performance Case Studies
addyosmani
329
24k
Transcript
The making of Falcon Pro 3 Joaquim Verges - @joenrv
THE CHALLENGE
GEAR UP
COMBO! Retrofit + Jackson/Gson + ORM =
START CODING Multi Activity vs single Activity Back stack? →
new activity! Inside one activity → reusable fragment(s) Notif Notif / Intent filter Notif / Intent filter
CACHING: ORMLite vs Realm ORMLite SQLite based. full java, open
source Realm TightDB based. Closed source C++ core, open source java bindings
OrmLite Realm
Writes in OrmLite
Writes in Realm
Queries in OrmLite
Queries in Realm
Query performance
THREADING AsyncTasks are fine but… could be better:
UI RecyclerView or ListView ? Definetly RecyclerView. Slightly annoying API,
but worth it.
THE BAD: API FAIL Oh google… ListView : 3,905 lines
of code + 7,314 lines in AbsListView RecyclerView : One giant class with 8,427 lines of code Requires work to port from listview
THE GOOD: - free, extensible insert/remove animations - handles position
changes much better - default implementation performs well
ANIMATIONS • Activity Transitions • Shared elements
ANIMATIONS • Layout Transitions • AnimUtils
60 FPS OR NOTHING
RECIPE FOR 60 FPS SCROLLING DONT DO THIS • Deep
view hierarchy • Allocations on critical path • Overdraw USE THE PROVIDED TOOLS • GPU rendering profiling • Tracer for OpenGL • Memory Monitor • Allocation tracker
PROFILING GPU RENDERING GOOD NOT GOOD
DESIGN • sketching • coolors.co • icons https://github.com/konifar/android-material-design-icon-generator-plugin
DESIGN FONTWEIGHTS android:font_family ABC regular ABC light ABC slab ABC
condensed
DESIGN Content first Polish and details
CRASH REPORTING & ANALYTICS Crashlytics + Answers • just the
metrics you need • solid crash reporting tool only downside: • no custom events
SECURITY Paid app? be careful • Proguard • LVL is
over hacked • IAP > paid app • custom server logic
BETA lessons learned from private BETAs with Google+ communities: Don’t
do it. Go public.
PUBLISH The poor’s man marketing material: • video: adb shell
screenrecord • simple banner • framed screenshots • launcher icon
RELEASE EARLY & ITERATE Release too early ? Maybe :)
RELEASE EARLY & ITERATE User driven development! • lets the
users feel like they’re part of the project. • automatic todo list & great engagement. • fix a user’s problem, he becomes your best customer
WAS IT WORTH IT?
YOU CAN DO IT TOO!
Hit me on Twitter! @joenrv QUESTIONS