Lock in $30 Savings on PRO—Offer Ends Soon! ⏳
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
Android Development in 2019. #devFestDakar
Search
Souleymane Sidibe
December 14, 2019
Programming
0
110
Android Development in 2019. #devFestDakar
It's all about the tools we can use to build better android apps.
Souleymane Sidibe
December 14, 2019
Tweet
Share
More Decks by Souleymane Sidibe
See All by Souleymane Sidibe
Android new UI ToolKit: Jetpack Compose
soulesidibe
0
160
Code sharing with Kotlin multi-platform
soulesidibe
0
100
Android App Bundle
soulesidibe
0
70
Proguard: The open source optimizer for Java bytecode
soulesidibe
2
96
Kotlin why you should consider using it
soulesidibe
0
94
Les AsyncTasks
soulesidibe
0
60
Lightning talk : La trousse du développeur android
soulesidibe
0
60
Other Decks in Programming
See All in Programming
Level up your Gemini CLI - D&D Style!
palladius
1
180
配送計画の均等化機能を提供する取り組みについて(⽩⾦鉱業 Meetup Vol.21@六本⽊(数理最適化編))
izu_nori
0
150
開発に寄りそう自動テストの実現
goyoki
1
770
複数人でのCLI/Infrastructure as Codeの暮らしを良くする
shmokmt
5
2.2k
手軽に積ん読を増やすには?/読みたい本と付き合うには?
o0h
PRO
1
170
dotfiles 式年遷宮 令和最新版
masawada
1
740
Go コードベースの構成と AI コンテキスト定義
andpad
0
120
AIエージェントを活かすPM術 AI駆動開発の現場から
gyuta
0
360
Full-Cycle Reactivity in Angular: SignalStore mit Signal Forms und Resources
manfredsteyer
PRO
0
120
CSC509 Lecture 14
javiergs
PRO
0
220
TypeScriptで設計する 堅牢さとUXを両立した非同期ワークフローの実現
moeka__c
6
3k
FluorTracer / RayTracingCamp11
kugimasa
0
220
Featured
See All Featured
Let's Do A Bunch of Simple Stuff to Make Websites Faster
chriscoyier
508
140k
Into the Great Unknown - MozCon
thekraken
40
2.2k
No one is an island. Learnings from fostering a developers community.
thoeni
21
3.5k
How to train your dragon (web standard)
notwaldorf
97
6.4k
Facilitating Awesome Meetings
lara
57
6.7k
Java REST API Framework Comparison - PWX 2021
mraible
34
9k
Automating Front-end Workflow
addyosmani
1371
200k
GitHub's CSS Performance
jonrohan
1032
470k
Building Better People: How to give real-time feedback that sticks.
wjessup
370
20k
Done Done
chrislema
186
16k
ReactJS: Keep Simple. Everything can be a component!
pedronauck
666
130k
Large-scale JavaScript Application Architecture
addyosmani
515
110k
Transcript
About me •Souleymane Sidibé •Kotlin/Android dev •Android developer CoinAfrique •Developer
of KobiriApp •@soulesidibe
Android development in 2019 @soulesidibe 2
The purpose of this talk
The purpose of this talk • The tools • How
we build android apps • Is it worth it to build native apps • ⤴ Flutter, Ionic, React native ⤴ = native apps
Numbers
Numbers • Android 1.0 (Relese date 2008) • Android 2.3
(Relese date 2011) Gingerbread • Android 10 (2019) Source: Statcounter
Numbers • 76% of the Mobile Operating system market share.
Worldwide • 83% of Africa Market share • 90% of Senegal Market share • 40% of OS market share behind Windows. Source: Statcounter
Numbers • The most popular OS in Africa • The
most accessible OS (cheap phones) • An open OS • Millions of apps available
Build an android App
Basic tools
Build an android App Compatible with Java Great Tooling Null
Safety Easy to learn Coroutines Java is not dead yet Type inference
Build an android App
Build an android App
Build an android App
Build an android App Android App Bundle Dynamic Feature Instant
App Play Console Internal Test
And so many more…
Architecture A style and method of design and construction.
Architecture • Onboarding new devs is easier • Focus on
the feature not on the plumbing • The team speak the same language • Write testable code • Team size: 1+
Architecture • Old Android (XML Activity) • MVP (Model View
Presenter) • MVVM (Model View ViewModel)
Google Opinion
Testing
Test • FOR ME • UI Testing is mandatory •
Unit testing is good • 100% coverage means nothing
Test • Unit Testing(Junit, Mockito, etc) • UI Testing (Espresso,
Robolectric) • Firebase Test Lab
Wrap up
Wrap up • Native android development is stable • Still
evolving • Huge community(Conferences, open source, libraries) • At scale, “native is best”
Alternatives
Alternatives • React Native(js) • Ionic(js) • Flutter(dart)
Pros • One code base/one team • Well known web
technologies • Easy to find talented devs
Cons • One code base but 2 targets • Javascript
• Some native features not available for both android and IOS
Conclusion • Android for life! • But Flutter is really
great • Learn both!
Thanks!