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
Sponsored
·
Your Podcast. Everywhere. Effortlessly.
Share. Educate. Inspire. Entertain. You do you. We'll handle the rest.
→
joaquim Vergès
February 03, 2015
Technology
22k
23
Share
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
740
Other Decks in Technology
See All in Technology
"スキルファースト"で作る、AIの自走環境
subroh0508
1
690
ジュニアエンジニアはSREとどう向き合うべきか
nrinetcom
PRO
1
110
Agent Development Kit (ADK)で学ぶ実践Context Engineeringと社内での応用例
lycorptech_jp
PRO
0
360
Slack MCPでインシデント対応とFAQ生成を加速する:社内ワークショップの実践
lycorptech_jp
PRO
0
340
Orchestration Development Workshopを半期実施して
lycorptech_jp
PRO
0
340
layerx-fde-practices
cipepser
6
2.5k
パーソルキャリア IT/テクノロジー職向け 会社紹介資料|Company Introduction Deck
techtekt
PRO
0
550
Claude Code x Accounting
kawaguti
PRO
0
300
データ分析基盤の信頼を支える視点と設計
yuki_saito
1
600
実践 TanStack Start ― 新規プロダクトを開発して確立した、サーバーとクライアント境界の設計パターン / Practical TanStack Start Server-Client Boundary Patterns
kaminashi
2
250
キャリア25年目にしてTypeScript に出会うまで - 「型」を通じて振り返るプログラミング言語遍歴 / Meeting TypeScript After 25 Years in Tech - Looking Back at My Programming Language Journey Through "Types"
bitkey
PRO
2
200
GitHub Copilot CLI の Rubber Duck 機能を使ってコーディングの品質をあげよう #techbaton_findy
stefafafan
2
640
Featured
See All Featured
DevOps and Value Stream Thinking: Enabling flow, efficiency and business value
helenjbeal
1
190
Being A Developer After 40
akosma
91
590k
Why Our Code Smells
bkeepers
PRO
340
58k
Getting science done with accelerated Python computing platforms
jacobtomlinson
2
210
Typedesign – Prime Four
hannesfritz
42
3k
Leadership Guide Workshop - DevTernity 2021
reverentgeek
1
280
WENDY [Excerpt]
tessaabrams
10
37k
The agentic SEO stack - context over prompts
schlessera
0
780
職位にかかわらず全員がリーダーシップを発揮するチーム作り / Building a team where everyone can demonstrate leadership regardless of position
madoxten
62
54k
Primal Persuasion: How to Engage the Brain for Learning That Lasts
tmiket
0
340
How to Build an AI Search Optimization Roadmap - Criteria and Steps to Take #SEOIRL
aleyda
1
2k
The Straight Up "How To Draw Better" Workshop
denniskardys
239
140k
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