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
22k
23
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
The making of Falcon Pro 3
Lessons learned from building Falcon Pro 3
joaquim Vergès
February 03, 2015
More Decks by joaquim Vergès
See All by joaquim Vergès
Twitch For Android: From Meme to Dream
joaquimverges
0
110
Falcon PRO - Retour d'expérience (French)
joaquimverges
3
750
Other Decks in Technology
See All in Technology
はじめてのWDM
miyukichi_ospf
1
140
kintone の AI コワーカーを、 Anthropic にエージェントを"ホストさせて"作った話 #devkinmeetup
sugimomoto
0
100
ソニー銀行におけるビジネスアジリティ向上のためのクラウドシフト戦略
srenext
0
210
CIで使うClaude
iwatatomoya
0
250
AI Agent SaaS を支える自社仮想化基盤への挑戦と実運用 / ai-agent-saas-virtualization
flatt_security
2
3.9k
Empower GenAI with Agile - あなたのアジャイルが生成AIのバフになる仕組み
hageyahhoo
1
180
DMM.com 購入改善推進チーム におけるCodeRabbitを用いた レビューフロー改善の一例
ysknsid25
2
630
Compose 新機能総まとめ / What's New in Jetpack Compose
yanzm
0
190
Oracle Exadata Database Service on Cloud@Customer X11M (ExaDB-C@C) サービス概要
oracle4engineer
PRO
2
8.4k
KiCAD講習会②
tutcreators
0
110
貴方はどのエンジニアリングを磨くのか
hatyibei
0
130
LLM/Agent評価:トップ営業の発言を「正解」にする 〜暗黙的正解による評価を営業資産に変える〜
takkuhiro
1
220
Featured
See All Featured
Designing for Performance
lara
611
70k
Lightning talk: Run Django tests with GitHub Actions
sabderemane
0
220
Unsuck your backbone
ammeep
672
58k
Reality Check: Gamification 10 Years Later
codingconduct
0
2.2k
How to train your dragon (web standard)
notwaldorf
97
6.7k
Darren the Foodie - Storyboard
khoart
PRO
3
3.4k
個人開発の失敗を避けるイケてる考え方 / tips for indie hackers
panda_program
123
22k
Site-Speed That Sticks
csswizardry
13
1.3k
Measuring & Analyzing Core Web Vitals
bluesmoon
9
880
Facilitating Awesome Meetings
lara
57
7k
Ethics towards AI in product and experience design
skipperchong
2
330
Making Projects Easy
brettharned
120
6.7k
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