Урок 1.00:08:58
Course Demo
Урок 2.00:03:44
Using the Source Code
Урок 3.00:03:59
Dependencies and SDK Versions
Урок 4.00:06:58
Retrieving Audio Data from Firestore
Урок 5.00:04:54
Building the Layouts
Урок 6.00:03:10
fragment_home
Урок 7.00:03:44
fragment_media_controller
Урок 8.00:04:18
List-item Layouts
Урок 9.00:12:17
RecyclerView Adapter for HomeFragment
Урок 10.00:03:54
RecyclerView Setup for HomeFragment
Урок 11.00:07:48
Retrieving Firestore Data in HomeFragment
Урок 12.00:06:24
Improving the Query Experience in HomeFragment
Урок 13.00:10:02
RecyclerView Setup for CategoryFragment
Урок 14.00:06:20
Retrieving Firestore Data in CategoryFragment
Урок 15.00:01:11
Testing Firestore Query in CategoryFragment
Урок 16.00:09:44
RecyclerView Setup for PlaylistFragment
Урок 17.00:13:36
Retrieving Firestore Data in PlaylistFragment
Урок 18.00:05:49
MediaController Setup
Урок 19.00:06:21
Implementing Fragment Transactions
Урок 20.00:05:43
Custom Fragment Management
Урок 21.00:05:00
Preventing Fragments from Stacking
Урок 22.00:02:53
Fragment Back Navigation
Урок 23.00:06:11
Implementing the Fragment Navigation
Урок 24.00:04:48
ActionBar Titles
Урок 25.00:04:52
Handling Configuration Changes Part 1
Урок 26.00:09:48
Service Class to Stream Audio
Урок 27.00:10:01
MediaBrowserServiceCompat Basics
Урок 28.00:10:33
Audio Focus and Audio Noisy Intent
Урок 29.00:07:56
ExoPlayer Setup Part 1 (Initialization)
Урок 30.00:11:42
ExoPlayer Setup Part 2 (playing a media file)
Урок 31.00:12:24
ExoPlayer Setup Part 3 (tracking playback state)
Урок 32.00:14:51
Associating the ExoPlayer with the Media Service
Урок 33.00:15:28
Starting and Binding to the Media Service
Урок 34.00:13:45
Playing the First Media Files
Урок 35.00:10:25
Dynamic Playlists with an Application Instance
Урок 36.00:09:04
Playing a Media Item with OnClick
Урок 37.00:03:55
Subscribing to a Playlist
Урок 38.00:05:18
Setting the Queue Position
Урок 39.00:08:21
Resolving the Playlist Subscription Issue
Урок 40.00:16:00
Detecting Changes to the Playback State
Урок 41.00:05:30
Updating the UI with Media Information
Урок 42.00:12:33
Broadcast Receiver for Seekbar Progress
Урок 43.00:06:39
Seeking Playback
Урок 44.00:11:44
Updating the UI when Playback is Complete
Урок 45.00:07:13
Handling Configuration Changes Part 2
Урок 46.00:16:57
Restoring Recently Played Media
Урок 47.00:02:54
Notification Overview
Урок 48.00:08:19
Notifications on Android Oreo
Урок 49.00:06:48
Notification Basics
Урок 50.00:08:38
Media Button Receivers and Pending Intents
Урок 51.00:08:52
Creating and Destroying a Notification
Урок 52.00:04:02
Controlling Playback from a Notification
Урок 53.00:05:02
Handling Configuration Changes Part 3
Урок 54.00:11:30
Setting a Bitmap in a Notification