Link
Embed
Share
Beginning
This slide
Copy link URL
Copy link URL
Copy iframe embed code
Copy iframe embed code
Copy javascript embed code
Copy javascript embed code
Share
Tweet
Share
Tweet
Slide 1
Slide 1 text
How to start Android app development wasabeef GDG Tokyo New Year 2018
Slide 2
Slide 2 text
About me Daichi Furiya Google Developer Expert CyberAgent, Inc. @wasabeef_jp wasabeef
Slide 3
Slide 3 text
Android OS
Slide 4
Slide 4 text
8.1 Oreo (2017/12) Unix like (C/C++, Java) smartphones, tablets, TV, wear, auto Android OS
Slide 5
Slide 5 text
No content
Slide 6
Slide 6 text
Lessons
Slide 7
Slide 7 text
Building Your First App Different Devices Lifecycles System Permissions Lessons
Slide 8
Slide 8 text
Building Your First App Different Devices Lifecycles System Permissions Lessons
Slide 9
Slide 9 text
Building Your First App Different Devices Lifecycles System Permissions Lessons
Slide 10
Slide 10 text
Building Your First App Different Devices Lifecycles System Permissions Lessons
Slide 11
Slide 11 text
Building Your First App Different Devices Lifecycles System Permissions Lessons
Slide 12
Slide 12 text
Building Your First App
Slide 13
Slide 13 text
Android Studio d.android.com/studio
Slide 14
Slide 14 text
Demo!
Slide 15
Slide 15 text
No content
Slide 16
Slide 16 text
Kotlin
Slide 17
Slide 17 text
Concise Safe Interoperable Tool-Friendly Kotlin Kotlin Koans Online https://try.kotlinlang.org
Slide 18
Slide 18 text
Diffrent Devices
Slide 19
Slide 19 text
Diffrent Devices
Slide 20
Slide 20 text
Versions (2018/01) Version Release Date Codename API Distribution 2.3.3 - 2.3.7 2010/12 Gingerbread 10 0.4% 4.0.3 - 4.0.4 2011/10 Ice Cream 15 0.5% 4.1.x 2012/07 Jelly Bean 16 1.9% 4.2.x 2012/11 17 2.9% 4.3 2013/7 18 0.8% 4.4 2013/10 KitKat 19 12.8% 5.0 2014/11 Lollipop 21 5.7% 5.1 2015/03 22 19.4% 6.0 2015/10 Marshmallow 23 28.6% 7.0 2016/08 Nougat 24 21.1% 7.1 2016/12 25 5.2% 8.0 2016/08 Oreo 26 0.5% 8.1 2017/12 27 0.2%
Slide 21
Slide 21 text
Support Library
Slide 22
Slide 22 text
Backward Compatibility for newer APIs Convenience and Helper Classes Debugging, Testing and Utilities Support Library
Slide 23
Slide 23 text
Support Library // build.gradle (app) dependencies { implementation "org.jetbrains.kotlin:kotlin-stdlib-jre7:1.1.51" implementation "com.android.support:appcompat-v7:27.0.2" implementation "com.android.support:design:27.0.2" }
Slide 24
Slide 24 text
Support Library
Slide 25
Slide 25 text
Lifecycles
Slide 26
Slide 26 text
Lifecycles
Slide 27
Slide 27 text
Lifecycles override fun onCreate(savedInstanceState: Bundle?) { super.onCreate(savedInstanceState) setContentView(R.layout.activity_main) } override fun onResume() { super.onResume() } override fun onPause() { super.onPause() } override fun onDestroy() { super.onDestroy() }
Slide 28
Slide 28 text
System Permissions
Slide 29
Slide 29 text
System Permissions ...
Slide 30
Slide 30 text
Internet Camera Storage Location Vibrate System Permissions Calendar Contacts Phone Wake Lock Alarm
Slide 31
Slide 31 text
Runtime Permissions at Run time ~ Lollipop (5.x) Marshmallow (6.x) ~
Slide 32
Slide 32 text
Etc..
Slide 33
Slide 33 text
View Animation Intent Kotlin Support Library RxJava, RxKotlin Android Architecture Components Etc.. Testing Media (ExoPlayer) FireBase DI (Dagger..)
Slide 34
Slide 34 text
Thank you. twitter.com/wasabeef_jp wasabeef.jp github.com/wasabeef