original source : https://www.youtube.com/playlist?list=PLEPZdzLLJH94Jk_Jz-cTUXYFoObPBH7KB
시애틀에 있는 수염난 안경낀 백인 청년 설명
data binding을 위해서 gradle에서 해야할 작업
data binding의 장점
3rd party image loading library들 이 강의에서는 coil을 사용
toolbar를 app bar로 사용하면서 navigation component를 사용하는 경우
tool bar를 app bar로 사용하는 경우 약간의 material 느낌을 주기위해 AppBarLayout를 이용한 경우
coil를 사용해 image loading한경우
json converting을 위해 moshi를 사용한 경우
민감한 data를 외부에 놓고 사용하는 방법
외부에서 전달되는 json data의 키와는 다른 field명을 쓰고 싶을때
외부와 data 통신시에 보안을 위해 usesCleartextTraffic을 사용한다.
0:01 – Week 0 Review
1:22 – Syllabus Review
2:40 – Class Announcements
6:14 – Why Learn App Development?
9:26 – Challenges of App Development
15:34 – Types of Mobile Development
22:36 – Why Android Development?
27:42 – Setting Up Our Android Development Environment
28:34 – Installing Android Studio
36:12 – Creating Your First Android Studio Project
39:17 – Creating An Android Emulator
41:52 – Installing Your First Android App
45:14 – Sharing An Android Studio Project to GitHub
50:06 – Building An Android APK
– What are the unique benefits and challenges of Android app development?
– What are some different ways of building mobile apps?
– What makes Android the most popular mobile operating system?
– What is Android Studio?
– What is the Android Emulator?
– What is Kotlin?
– How do you create a new Android project?
– How do you share code from Android Studio to GitHub?
– How do you add a README to your GitHub repo?
0:36 – Outline
1:57 – Android Framework Components
14:07 – What is generated when you create a new Android Studio project?
40:26 – Working with Android Activities
41:20 – Android Activity lifecycle
50:12 – Using the Android Studio debugger // How to set a breakpoint in Android Studio?
59:38 – Creating Interactive User Interfaces
1:01:46 – What is FrameLayout?
1:05:09 – What is LinearLayout?
1:08:34 – What is RelativeLayout?
1:14:22 – What is ConstraintLayout?
1:28:09 – Responding To User Interaction
1:29:00 – ConstraintLayout simple tutorial
1:29:37 – How to create a new Vector Asset in Android Studio?
1:38:46 – How to respond to a Button click in Android
1:40:04 – Android Button setOnClickHandler
1:45:40 – Receiving user input using an EditText
1:54:00 – Customize Material Design theme in Android Studio
– What are the Android app components?
– What is an Android Activity?
– What is generated when we create a new Android Studio project?
– What is the Android Activity lifecycle?
– What is the difference between an Android ViewGroup and a View?
– What is a FrameLayout? LinearLayout? Relative Layout? ConstraintLayout?
– How to build a simple UI using ConstraintLayout?
– How do define an Android click listener?
– How to show a Toast message in an Android Activity?
– How to enable Android developer options?
– How to use an EditText to receive user input?
– How to display dynamic content in an app?
– How to display large collections of data?
– How to architect your app to provide data to your Activity?
– What is MVVM?
– What is LiveData?
– How to model data with Kotlin data classes?
– How to create a RecyclerView Adapter?
– How to bind data using a RecyclerView ViewHolder?
– How to define an onClickHandler for your RecyclerView?
– How to format String resources?
0:25 – Outline
2:17 – Project Demo
3:56 – Displaying Dynamic Data
5:05 – Dynamic view containers // ScrollView, ListView, ViewPager
6:57 – RecyclerView
7:50 – Why RecyclerView?
16:47 – Defining A Data Model
20:00 – Modeling data with Kotlin data classes
24:25 – What is LiveData?
28:08 – Implementing A RecyclerView
29:23 – Creating a data class to model daily weather forecasts
31:50 – Creating a data repository
32:04 – Using LiveData to expose data from a repository
49:54 – Adding a RecyclerView to your layout xml file
52:37 – How to use Logcat to understand why your app crashed
54:58 – Add RecyclerView dependency to your build.gradle file
57:52 – How to add margin to your RecyclerView using ConstraintLayout design view?
1:01:57 – How to implement a RecyclerView Adapter using Kotlin?
1:30:38 – Add touch feedback to RecyclerView list items
1:40:00 – How to format String resources?
– How to create a new Android Activity?
– How to use an Intent to open a new Activity when a button is clicked?
– How to display an options Menu
– How to respond to a Menu item click?
– How to display an AlertDialog?
– How to save a value using SharedPreferences?
– How to create a new Fragment
– How to migrate UI/logic from an Activity to a Fragment
– How to communicate between a Fragment and an Activity
– How to add a FloatingActionButton to your UI
– What is the Android Navigation Architecture Component?
– What problems is it trying to solve?
– How to create a navigation graph?
– How to add new destinations and actions to your navigation graph?
– How to navigate to a new Fragment using the NavController?
– How to update your AppBar based on navigation changes?
– How to implement a BottomNavigationView?
– How to load data from a remote api using Retrofit; an HTTP client library for Android/JVM?
– How to listen to changes in SharedPreferences values?
– How to load and display remote images using the Coil image loading library