-
Урок 1.
00:01:54
Introduction
-
Урок 2.
00:06:09
The Udemy Interface
-
Урок 3.
00:19:23
Introduction to Android
-
Урок 4.
00:11:19
Windows - Install Android Studio
-
Урок 5.
00:06:36
Mac - Install Android Studio
-
Урок 6.
00:11:36
Linux - Install Android Studio
-
Урок 7.
00:12:05
Configure Android SDK on all Three Platforms
-
Урок 8.
00:03:02
Android Studio Settings
-
Урок 9.
00:13:55
Enable VT-X in BIOS
-
Урок 10.
00:01:54
Your Programming Careers Questions Answered
-
Урок 11.
00:00:41
Introduction
-
Урок 12.
00:08:02
Android Studio Templates
-
Урок 13.
00:08:26
More on Android Templates
-
Урок 14.
00:12:44
Hello World
-
Урок 15.
00:16:31
Tour of Android Studio
-
Урок 16.
00:15:12
Setting Up a Virtual Device
-
Урок 17.
00:09:51
Running on an emulator
-
Урок 18.
00:12:27
Running on a physical Android device
-
Урок 19.
00:10:34
Kotlin Tutorial Setup
-
Урок 20.
00:09:10
Kotlin Tutorial 1
-
Урок 21.
00:11:28
Variables and Types
-
Урок 22.
00:11:50
More on Variables and Types
-
Урок 23.
00:12:36
String Concatenation and Interpolation
-
Урок 24.
00:10:20
val and var and more on Declarations
-
Урок 25.
00:17:59
Conditions
-
Урок 26.
00:19:35
Classes
-
Урок 27.
00:14:54
Objects and Instances
-
Урок 28.
00:06:25
Challenge
-
Урок 29.
00:10:26
Lists
-
Урок 30.
00:12:01
More on Lists
-
Урок 31.
00:04:25
toString Challenge
-
Урок 32.
00:14:08
for Loops
-
Урок 33.
00:13:20
for Encapsulation and Private Properties
-
Урок 34.
00:08:14
Overloading Functions
-
Урок 35.
00:12:51
Inheritance
-
Урок 36.
00:10:11
More on Inheritance
-
Урок 37.
00:09:12
Inheritance Continued
-
Урок 38.
00:09:53
Further Inheritance
-
Урок 39.
00:14:19
while Loops
-
Урок 40.
00:10:04
for Loop Revisited
-
Урок 41.
00:05:15
do while Loop
-
Урок 42.
00:12:38
Loop Challenge
-
Урок 43.
00:02:28
Introduction
-
Урок 44.
00:11:40
Setup Play Project
-
Урок 45.
00:17:07
The Constraint Layout
-
Урок 46.
00:15:18
Constraints and Resizing
-
Урок 47.
00:07:53
Positioning Widgets
-
Урок 48.
00:09:34
Inner Lines within a Widget
-
Урок 49.
00:11:01
Layouts on Different Devices
-
Урок 50.
00:12:49
More on the Constraints
-
Урок 51.
00:09:56
Baseline Constraints
-
Урок 52.
00:05:38
Constraining Widgets
-
Урок 53.
00:13:33
Add Scrolling Capabilities
-
Урок 54.
00:14:51
The Button Counter App
-
Урок 55.
00:12:19
Finish Layout
-
Урок 56.
00:13:50
Coding Button Counter App
-
Урок 57.
00:12:47
findViewById and r Class
-
Урок 58.
00:08:04
Events and setonclicklistener
-
Урок 59.
00:14:11
Testing and Challenge Time
-
Урок 60.
00:10:37
Extending the Button App
-
Урок 61.
00:06:54
Testing and Challenge
-
Урок 62.
00:03:59
Fixing Kotlin Gradle Issues
-
Урок 63.
00:15:19
The Activity Lifecycle
-
Урок 64.
00:09:05
The Logcat Pane
-
Урок 65.
00:09:35
Logging the Activity Lifecycle
-
Урок 66.
00:14:33
Activity Lifecycle in Action
-
Урок 67.
00:15:10
Saving and Restoring Instance State
-
Урок 68.
00:04:53
Demo Calculator App
-
Урок 69.
00:15:37
Calculator Interface Setup
-
Урок 70.
00:16:30
Continue with Interface
-
Урок 71.
00:15:29
Fine Tuning the Layout
-
Урок 72.
00:09:02
Create Landscape Layout
-
Урок 73.
00:17:13
Comparing FIles with Diff
-
Урок 74.
00:08:30
Comparing Directories
-
Урок 75.
00:23:16
Coding the Calculator
-
Урок 76.
00:07:05
Add onClickListeners
-
Урок 77.
00:16:46
Write Perform Operation Function
-
Урок 78.
00:14:14
Bug Fix and Code Improvements
-
Урок 79.
00:19:53
Bug Fix Challlenge and Save State
-
Урок 80.
00:07:29
Widget References in Kotlin
-
Урок 81.
00:13:54
Guidelines
-
Урок 82.
00:12:41
Fixing Landscape Layout
-
Урок 83.
00:07:17
Add Neg Button to Layout
-
Урок 84.
00:08:32
Code Changes for Neg Button
-
Урок 85.
00:19:05
Add Neg Button to Portrait
-
Урок 86.
00:10:48
Introduction
-
Урок 87.
00:14:40
AsyncTask
-
Урок 88.
00:09:01
Logging and Logcat
-
Урок 89.
00:14:39
Download the RSS Feed
-
Урок 90.
00:20:06
Reading the Data
-
Урок 91.
00:20:04
Android Permissions
-
Урок 92.
00:15:01
Writing Idiomatic Kotlin
-
Урок 93.
00:07:07
More Idiomatic Kotlin
-
Урок 94.
00:19:07
Parsing the Data
-
Урок 95.
00:15:09
Create Xml Parse Function
-
Урок 96.
00:10:13
Testing the App
-
Урок 97.
00:13:20
ListView and ArrayAdapter
-
Урок 98.
00:17:03
Code Changes for Array Adapter
-
Урок 99.
00:07:32
onDestroy and Asynctask
-
Урок 100.
00:11:44
Create Custom Adapter
-
Урок 101.
00:17:20
Custom Adapter Code
-
Урок 102.
00:12:43
Improving the Adapter
-
Урок 103.
00:12:10
ViewHolder Pattern
-
Урок 104.
00:09:00
Adding a Menu - Layout
-
Урок 105.
00:16:06
Adding A Menu - Code
-
Урок 106.
00:09:32
Menu Groups - Layout
-
Урок 107.
00:15:57
Menu Groups - Code
-
Урок 108.
00:15:32
Challenge Solution
-
Урок 109.
00:17:55
Setup
-
Урок 110.
00:13:28
YouTube Activity
-
Урок 111.
00:10:00
Adding Widgets Dynamically
-
Урок 112.
00:11:42
Google API Key
-
Урок 113.
00:07:58
Add Key to Code
-
Урок 114.
00:13:34
The YouTube Player
-
Урок 115.
00:13:12
onInitializationSuccess Method
-
Урок 116.
00:10:44
Adding Listeners
-
Урок 117.
00:06:25
Improving the Player
-
Урок 118.
00:05:29
Extending App Layouts
-
Урок 119.
00:12:30
Extending Youtube App Code
-
Урок 120.
00:17:54
Implementing Intents and Challenge
-
Урок 121.
00:05:11
Challenge Solution
-
Урок 122.
00:15:11
More Error Handling
-
Урок 123.
00:04:07
Introduction
-
Урок 124.
00:15:37
Flick App and Feeds
-
Урок 125.
00:13:39
Json and Mini challenge
-
Урок 126.
00:15:40
Log Tag and Companion Objects
-
Урок 127.
00:12:15
Download JSON - doInBackground
-
Урок 128.
00:13:29
Downloading the JSON
-
Урок 129.
00:16:15
CallBacks
-
Урок 130.
00:08:22
Project Diagram and Photo Class
-
Урок 131.
00:20:08
GetFlickJsonData class
-
Урок 132.
00:18:36
GetFlickrJsonData class continued
-
Урок 133.
00:12:03
Uri Builder
-
Урок 134.
00:12:08
Flickr Browser User Inferface
-
Урок 135.
00:15:10
RecyclerView Layouts
-
Урок 136.
00:05:44
Finishing Browse Layout
-
Урок 137.
00:08:45
Search and PhotoDetail Activities
-
Урок 138.
00:15:59
Nested Layouts
-
Урок 139.
00:17:30
Recyclerview Adapter
-
Урок 140.
00:14:13
onBindViewHolder and Picasso
-
Урок 141.
00:06:55
Associate Adapter to Recyclerview
-
Урок 142.
00:18:48
RecyclerItemClickListener
-
Урок 143.
00:15:44
GestureDetector
-
Урок 144.
00:16:01
Displaying the full photo
-
Урок 145.
00:17:01
Serializable
-
Урок 146.
00:05:57
Modify Photo Details Activity
-
Урок 147.
00:09:06
Parcelable
-
Урок 148.
00:13:56
Material Design
-
Урок 149.
00:09:51
More on Material Design
-
Урок 150.
00:06:34
AppCompat - Backwards Compatibility
-
Урок 151.
00:12:07
Style Sheets
-
Урок 152.
00:12:58
Custom Style Sheets
-
Урок 153.
00:12:03
Namespaces
-
Урок 154.
00:10:48
Other Material Design Changes
-
Урок 155.
00:08:59
Differences in API Levels
-
Урок 156.
00:10:24
String Resources
-
Урок 157.
00:10:33
String Resources Placeholders
-
Урок 158.
00:04:58
Adding the Search Feature
-
Урок 159.
00:13:17
SearchView
-
Урок 160.
00:12:09
More on SearchView
-
Урок 161.
00:09:33
SearchView Events
-
Урок 162.
00:10:21
SharedPreferences
-
Урок 163.
00:08:30
Telling Fibs
-
Урок 164.
00:01:18
Introduction
-
Урок 165.
00:05:07
Introduction to Databases
-
Урок 166.
00:10:43
Database Terminology
-
Урок 167.
00:09:42
Command Line and Path Setup for Windows
-
Урок 168.
00:08:07
Command Line and Path Setup for Mac
-
Урок 169.
00:06:18
Command Line and Path Setup for Ubuntu Linux
-
Урок 170.
00:11:16
Introduction to Sqlite
-
Урок 171.
00:10:46
More SQL with Sqlite
-
Урок 172.
00:16:07
Sqlite Querying Data
-
Урок 173.
00:13:19
Order By and Joins
-
Урок 174.
00:11:52
More Complex Joins
-
Урок 175.
00:15:18
Wild Cards and Views
-
Урок 176.
00:14:24
Housekeeping and Challenge
-
Урок 177.
00:10:23
Basic SQL in Android
-
Урок 178.
00:11:44
Create Table Add Data and Test
-
Урок 179.
00:17:50
Cursor and Navigation
-
Урок 180.
00:16:28
Android File System
-
Урок 181.
00:02:56
Content Providers
-
Урок 182.
00:11:40
Setting up the Emulators
-
Урок 183.
00:07:43
Contact Provider App Layout
-
Урок 184.
00:10:14
The ContactsContract
-
Урок 185.
00:08:42
ContentResolver and Abstraction
-
Урок 186.
00:09:34
Retrieving Data with a ContentResolver
-
Урок 187.
00:13:33
Permissions
-
Урок 188.
00:15:01
Checking Permissions at Runtime
-
Урок 189.
00:09:17
Testing the App
-
Урок 190.
00:08:12
Avoiding Crashes Snackbars and a Challenge
-
Урок 191.
00:11:00
More on Snackbars
-
Урок 192.
00:14:41
Intents, setData and Uris
-
Урок 193.
00:06:25
Problems Storing State
-
Урок 194.
00:04:27
Remove Saving of State
-
Урок 195.
00:07:09
Test Scripts Challenge and Cleanup
-
Урок 196.
00:02:18
Introduction
-
Урок 197.
00:04:10
Androids ViewModel Class
-
Урок 198.
00:13:37
Using a ViewModel
-
Урок 199.
00:21:49
Finish ViewModel Changes
-
Урок 200.
00:08:38
Exposing LiveData
-
Урок 201.
00:07:47
Swapping the ViewModel
-
Урок 202.
00:10:28
ViewModel with Top 10 Downloader
-
Урок 203.
00:16:02
Implement ViewModel
-
Урок 204.
00:10:23
Final Changes
-
Урок 205.
00:04:27
App Testing
-
Урок 206.
00:18:31
The TaskTimer Application
-
Урок 207.
00:11:51
Database Setup
-
Урок 208.
00:07:07
Tasks Contract Class
-
Урок 209.
00:09:21
AppDatabase Class
-
Урок 210.
00:08:40
Create SQL for Tasks Table
-
Урок 211.
00:11:01
Singleton AppDatabase Class
-
Урок 212.
00:12:15
onUpgrade and Testing
-
Урок 213.
00:17:50
The ContentProvider
-
Урок 214.
00:20:56
uriMatcher
-
Урок 215.
00:03:19
Updating Build Files
-
Урок 216.
00:12:12
The Content URI
-
Урок 217.
00:11:55
Register the ContentProvider
-
Урок 218.
00:12:19
Using appendWhereEscapeString
-
Урок 219.
00:09:08
Mime Types in the Content Provider
-
Урок 220.
00:09:12
Content Provider Insert
-
Урок 221.
00:12:24
Update and Delete
-
Урок 222.
00:12:46
Testing Insert and Update
-
Урок 223.
00:14:50
Testing Bulk Update and Delete
-
Урок 224.
00:15:31
Main Menu UI
-
Урок 225.
00:14:43
Task UI Layout
-
Урок 226.
00:05:55
Task List Items Constraints
-
Урок 227.
00:17:00
Add / Edit Layout
-
Урок 228.
00:12:22
The Kotlin Data Class
-
Урок 229.
00:18:54
The Add / Edit Fragment
-
Урок 230.
00:12:46
Swapping Fragments
-
Урок 231.
00:13:20
Multi-pane Fragments
-
Урок 232.
00:15:50
Multi-pane Displays
-
Урок 233.
00:10:36
Enabling Two-pane Mode
-
Урок 234.
00:12:52
The Fragment Lifecycle Part 1
-
Урок 235.
00:07:38
The Fragment Lifecycle Part 2
-
Урок 236.
00:14:56
Logging the Fragment Lifecycle
-
Урок 237.
00:11:36
Android SDK Gradle and Kotlin Updates
-
Урок 238.
00:07:50
Up and Back Navigation for Fragments
-
Урок 239.
00:03:48
Object can have More than One Type
-
Урок 240.
00:06:32
Removing the Up Button
-
Урок 241.
00:06:44
Back Navigation
-
Урок 242.
00:10:17
Completing the AddEdit UI
-
Урок 243.
00:10:33
Saving the Task Details
-
Урок 244.
00:07:36
Test Saving
-
Урок 245.
00:04:37
Updating Android Studio, Kotlin, and Gradle
-
Урок 246.
00:04:51
Fixing New Kotlin Warnings
-
Урок 247.
00:07:00
Layout Container
-
Урок 248.
00:16:20
RecyclerView CursorAdapter
-
Урок 249.
00:01:44
Introducing David Reidy
-
Урок 250.
00:12:16
Tricky String Resources
-
Урок 251.
00:07:32
The ViewModel Class
-
Урок 252.
00:03:29
Subscribe to The ViewModel
-
Урок 253.
00:09:27
Notifications and Observers
-
Урок 254.
00:04:36
Responding to Taps
-
Урок 255.
00:02:51
onClick Listeners, Interfaces and Callbacks
-
Урок 256.
00:04:33
Responding to Clicks from the Adapter
-
Урок 257.
00:05:59
Solution to The Interface Challenge
-
Урок 258.
00:09:58
Deleting a Task from The Database
-
Урок 259.
00:07:43
Accessing a Database on a Background Thread
-
Урок 260.
00:04:38
Background Processing Using a Coroutine
-
Урок 261.
00:09:07
Clean Up AddEditFragment
-
Урок 262.
00:05:22
Saving in The ViewModel
-
Урок 263.
00:05:38
Sharing ViewModel Instances
-
Урок 264.
00:14:15
AndroidX
-
Урок 265.
00:04:23
Introduction to Dialogs
-
Урок 266.
00:15:53
AppDialog Class Part 1
-
Урок 267.
00:08:49
AppDialog Class Part 2
-
Урок 268.
00:05:53
Adding a Dialog to The App
-
Урок 269.
00:11:45
Dialog CallBacks
-
Урок 270.
00:08:15
Asserts and BuildConfig
-
Урок 271.
00:05:55
Strange Dialog Behavior
-
Урок 272.
00:07:55
Confirming Exit Without Saving
-
Урок 273.
00:04:20
Implementing the Interface
-
Урок 274.
00:08:46
Kotlin Extension Functions
-
Урок 275.
00:13:39
Image Asset Studio
-
Урок 276.
00:10:57
Create an About Dialog the Layout Part 1
-
Урок 277.
00:11:32
Create an About Dialog the Layout Part 2
-
Урок 278.
00:12:11
Displaying the About Dialog
-
Урок 279.
00:08:07
Versioning and build.gradle
-
Урок 280.
00:08:59
Dismissing the Dialogue
-
Урок 281.
00:08:35
Supporting Older Versions
-
Урок 282.
00:15:04
Compatibility Challenge Solution Part 1
-
Урок 283.
00:12:26
Compatibility Challenge Solution Part 2
-
Урок 284.
00:03:06
Introduction
-
Урок 285.
00:10:54
Settings Dialog Layout
-
Урок 286.
00:04:04
Settings Dialog
-
Урок 287.
00:07:31
DefaultSharedPreferences
-
Урок 288.
00:08:09
SeekBar Values
-
Урок 289.
00:09:31
Quantity String Resources
-
Урок 290.
00:03:41
Setting Dialog Title
-
Урок 291.
00:06:18
Retain Instance State
-
Урок 292.
00:04:14
Introduction
-
Урок 293.
00:07:13
A Correction and the Device File Explorer
-
Урок 294.
00:11:46
Database Updates
-
Урок 295.
00:06:21
Saving the Timing Data
-
Урок 296.
00:04:16
The saveTiming Function
-
Урок 297.
00:03:38
Testing Timings
-
Урок 298.
00:04:55
Providing Feedback
-
Урок 299.
00:03:59
Data Loss
-
Урок 300.
00:04:06
Storing the Current Timing Records
-
Урок 301.
00:04:47
Solution - Retrieving the Current Time Record
-
Урок 302.
00:02:02
Solution Continued
-
Урок 303.
00:06:49
Finish Solution and Test
-
Урок 304.
00:06:32
When the Battery Dies
-
Урок 305.
00:12:53
Creating Test Data
-
Урок 306.
00:03:37
Generating the Test Data
-
Урок 307.
00:10:08
Debug and Release Builds
-
Урок 308.
00:11:54
Using a SQLite view
-
Урок 309.
00:08:04
Adding the view to the Database
-
Урок 310.
00:03:30
Adding the view to the ContentProvider
-
Урок 311.
00:07:16
Testing the Database Upgrade
-
Урок 312.
00:09:03
ConstraintLayout Chains
-
Урок 313.
00:12:29
Chain Types
-
Урок 314.
00:10:19
Finishing the reports layouts - challenge
-
Урок 315.
00:09:17
The Landscape Layouts
-
Урок 316.
00:10:43
The Report Adapter
-
Урок 317.
00:12:11
The Durations Report Activity
-
Урок 318.
00:06:56
Testing Different Locales
-
Урок 319.
00:06:30
Creating the reports ViewModel
-
Урок 320.
00:02:33
Using the DurationsViewModel
-
Урок 321.
00:06:41
Sorting the Report Data
-
Урок 322.
00:13:10
Vector Drawables and Asset Studio
-
Урок 323.
00:05:28
The Report Menu
-
Урок 324.
00:07:39
Report Menu Code - day/week toggle
-
Урок 325.
00:15:22
The DatePickerDialog
-
Урок 326.
00:05:57
Filtering by Date
-
Урок 327.
00:10:13
Filtering in the DurationsViewModel
-
Урок 328.
00:07:31
Testing the Report Filters
-
Урок 329.
00:09:40
Unbuggy DatePickerDialog
-
Урок 330.
00:09:24
Deleting old Timings data
-
Урок 331.
00:04:03
Testing Mass Deletion
-
Урок 332.
00:04:28
Observing the cursor in the ViewModel
-
Урок 333.
00:05:02
A Minor Bug
-
Урок 334.
00:09:08
Observing a Configuration Change
-
Урок 335.
00:08:05
Testing the Bug Fix
-
Урок 336.
00:06:14
Using the First Day Of Week Setting
-
Урок 337.
00:04:28
Taking Advantage of Later Features
-
Урок 338.
00:04:10
Testing the new DatePickerFragment
-
Урок 339.
00:07:20
Observing SharedPreference changes
-
Урок 340.
00:09:37
Solution to Ignore Short Timings Challenge
-
Урок 341.
00:04:49
Bonus Lecture and Information