Ta lekcja jest w bazie eduweb

Zaloguj się kontem z dostępem albo wykup dostęp do bazy, żeby obejrzeć wideo.

Lekcja 39/ 51Dialog sortowania subskrybcji

0:00 / 0:00
Full-stack i ProgramowanieAndroidTechniki Zaawansowane

Programowanie Android: Dialog sortowania subskrybcji

10 godz. 47 min wideo51 lekcji10 modułów

Czego się nauczysz

  • Praktyczna aplikacja, krok po kroku
  • Biblioteki i narzedzia uzywane przez profesjonalistów
  • Budowanie interfejsów na podstawie projektu
  • Komunikacja z API REST
  • Zapisywanie danych w bazie SQLite
  • Zapobieganie wyciekom pamieci
  • Tworzenie aplikacji Material Design
  • I wiele, wiele wiecej!

Programowanie Android - Techniki Zaawansowane

Naucz się programować zaawansowane aplikacje na Androida z najnowszym API oraz wykorzystując Material Design.

Masz już doświadczenia z programowaniem aplikacji Android i chcesz poznać zaawansowane, nowoczesne techniki tworzenia aplikacji? A może dopiero się uczysz, napisałeś już pierwszą aplikację i chcesz rozwinąć swoje umiejętności? Ten kurs stanowi esencję praktycznej wiedzy oraz ogromną porcję aktualnych technik tworzenia aplikacji na Androida, zgodnych z Material Design! Na przestrzeni aż 12 godzin Kursu, szczegółowo, krok po kroku będziemy wdrażać funkcjonalności aplikacji tworzonej na potrzeby Google Play.

Kompletny projekt aplikacji

W trakcie kursu, krok po kroku stworzymy aplikację do odtwarzania podcastów, będąca uproszczoną wersją projektu z Kursu Material Design. Lekcje opracowaliśmy w taki sposób, że każda z nich jest ilustracją ważnych zagadnień, z którym na co dzień spotykają się developerzy aplikacji na Androida. W pierwszej części kursu zajmiemy się implementacją rejestracji i logowania. Jest to funkcjonalność, którą spotykasz w większości aplikacji. Zobaczysz jak wdrażać walidację danych, obsłużyć komunikację z serwerem i przechowywać dane zalogowanego użytkownika pomiędzy uruchomieniami aplikacji.

Część wizualna jest ważna

Następnie skupimy się na części wizualnej i możliwie wiernie przeniesiemy projekt interfejsu użytkownika z pliku psd do naszej aplikacji. Przy okazji poznasz wiele ważnych technik operowania na fontach, grafikach oraz rozmieszczenia elementów interfejsu aplikacji. Ponadto, wykorzystamy mechanizm stylów, który pozwoli nam uporządkować kod oraz szybciej ustawiać styl dla nowych elementów. Kolejno zajmiemy się nawigacją - zaimplementujemy nawigację głównego poziomu z użyciem wysuwanego menu i komponentu NavigationView. Skorzystamy z fragmentów oraz zaimplementujemy komunikację pomiędzy nimi z użyciem interfejsów oraz zdarzeń.

Ekrany listy subskrypcji

Kolejno dodamy ekrany listy subskrypcji oraz wyszukiwania nowych podcastów. Obsłużymy wyjątki i różne stany aplikacji. Na przykład, zastanowimy się jak poradzić sobie z sytuacją, gdy czekamy na dane, oraz gdy jeszcze danych nie ma. Ponadto, korzystając z bazy SQLite i biblioteki Ormlite, będziemy mogli wyświetlać listę subskrypcji nawet bez połączenia z internetem, czyli w tzw. trybie offline. Scenariusze, które przerobimy będą wspólne dla wielu kolejnych aplikacji, które będziesz tworzył - możesz więc z powodzeniem budować bibliotekę fragmentów kodu, które wykorzystasz w każdym kolejnym projekcie.

Obsługa wideo i audio

Na koniec skupimy się na wyświetlaniu listy odcinków podcastu oraz odtwarzaniu plików audio. Poznasz sposoby obsługi multimediów w aplikacji a dzięki zastosowaniu komponentu Service, odtwarzanie będzie mogło się odbywać w tle, nawet jeśli użytkownik będzie korzystał z innej aplikacji. Otrzymasz także pewne uniwersalne recepty na obsługę tego typu plików w aplikacjach, bez zagłębiania się w bardzo specyficzne przypadki naszej konkretnej aplikacji.

Testowanie aplikacji

W Kursie poznasz sposoby testowania aplikacji oraz dostosowania komponentów tak, aby interfejs mógł bez przeszkód skalować się i działać dobrze w różnych trybach oraz orientacjach ekranu. Pokażemy Ci najlepsze techniki pracy z emulatorem w Android Studio i przygotujemy naszą aplikację tak, aby wspierała możliwie jak najwięcej wersji systemu oraz telefonów. Dowiesz się także jak testować wydajność Twojej aplikacji i podejmować jak najlepsze decyzje w celu optymalizacji kodu.

Maksimum praktycznej wiedzy

Ponieważ ten kurs przeznaczony jest dla osób, które znają już podstawy Javy oraz ekosystem Androida, skoncentrowaliśmy się na przekazaniu maksymalnej ilości praktycznych wskazówek, które składają się na gotowy projekt aplikacji. Specjalnie na potrzeby Kursu stworzyliśmy aplikację, którą z powodzeniem moglibyśmy zamieścić w Google Play i rozwijać. Przede wszystkim chcieliśmy, abyś mógł wyciągnąć maksimum praktycznych wskazówek od autora Kursu - programisty z wieloletnim doświadczeniem, który na co dzień tworzy aplikacje dla systemu Android. Nasz Kurs to jedyne takie opracowanie, które dotyczy najbardziej aktualnych standardów, oraz tworzenia aplikacji Material Design dla nowych wersji Androdia.

Dla kogo jest ten kurs?

Kurs ten stanowi rozwinięcie dla Kursu Tworzenia Aplikacji Android. Skierowany jest dla osób, które mają już pewne doświadczenie w tworzeniu aplikacji na Androida, ale chciałyby poznać najlepsze praktyki, które sprawią, że ich aplikacje będą wyróżniać się jakością i wyglądem. Celem kursu jest pokazanie, na praktycznym przykładzie, bibliotek i technik stosowanych obecnie przy tworzeniu aplikacji dla systemu Android.

Kurs Programowanie Android

10 rozdziałów51 lekcji10h 47min

Wstęp do kursu

5min
  • Wprowadzenie5min(zablokowana)

Przygotowanie serwera (opcjonalne)

14min
  • Wlasna instancja Parse Server8min(zablokowana)
  • Import danych na serwer3min(zablokowana)
  • Przelaczenie aplikacji na wlasna instancje3min(zablokowana)

Logowanie i rejestracja

2h 36min
  • Ekrany logowania i rejestracji26min(zablokowana)
  • Walidacja wprowadzonych danych i nawigacja17min(zablokowana)
  • Komunikacja z API logowania22min(zablokowana)
  • Tworzenie użytkowników i logowanie12min(zablokowana)
  • Wycieki pamięci - wykrywanie i zapobieganie15min(zablokowana)
  • Przechowywanie obiektów w Application (UserManager)8min(zablokowana)
  • Zapisywanie danych logowania w SharedPreferences12min(zablokowana)
  • Sprawdzanie stanu logowania przy uruchomieniu i opcja Logout11min(zablokowana)
  • Pokazywanie postępu długotrwałych operacji na UI6min(zablokowana)
  • Obsługa rejestrowania nowego użytkownika28min(zablokowana)

Dostosowywanie UI do projektu

1h 16min
  • Eksport grafik z Photoshop z użyciem sympli.io11min(zablokowana)
  • Wstawianie logo i tła8min(zablokowana)
  • Kolory tekstu i podkreślenia w EditText13min(zablokowana)
  • Styl dla błędów i podpowiedzi9min(zablokowana)
  • Ustawianie odstępów pomiędzy elementami9min(zablokowana)
  • Styl dla przycisków5min(zablokowana)
  • ScrollView - obsługa zbyt wysokich widoków3min(zablokowana)
  • Ustawianie fontów na TextView i EditText11min(zablokowana)
  • Stylowanie ekranu rejestracji8min(zablokowana)

Nawigacja w aplikacji

50min
  • Menu boczne w NavigationView21min(zablokowana)
  • Akcje w menu dla ekranu subskrybcji11min(zablokowana)
  • Komunikacja pomiędzy Fragment i Activity - Callback7min(zablokowana)
  • Otto - komunikacja z użyciem szyny zdarzeń11min(zablokowana)

Dodawanie subskrybcji

2h 3min
  • DiscoverManager9min(zablokowana)
  • Pobieranie listy podcastów z serwera23min(zablokowana)
  • Wyświetlanie okładek podcastów na liście - biblioteka Glide27min(zablokowana)
  • Zapisywanie subskrybcji na serwerze14min(zablokowana)
  • Pobieranie listy subskrybcji z serwera17min(zablokowana)
  • Wyświetlanie subskrybcji15min(zablokowana)
  • Widoki z informacją o braku subskrybcji i pobieraniu subskrybcji17min(zablokowana)

Przechowywanie danych w trybie offline

1h 27min
  • Ormlite - mapowanie obiektowo-relacyjne dla SQLite28min(zablokowana)
  • Wyświetlanie danych z bazy danych11min(zablokowana)
  • Obsługa "Pull to refresh"10min(zablokowana)
  • Własna klasa DAO i aktualizacja obiektów w bazie14min(zablokowana)
  • Dialog sortowania subskrybcji12min(zablokowana)
  • Implementacja sortowania w bazie danych12min(zablokowana)

Lista odcinków

57min
  • Dagger2 - implementacja wstrzykiwania zależności (Dependency Injection)20min(zablokowana)
  • Ekran listy odcinków z efektem paralaksy11min(zablokowana)
  • Pobieranie listy odcinków z serwera13min(zablokowana)
  • Wyświetlanie listy odcinków13min(zablokowana)

Odtwarzanie odcinków

1h 14min
  • Ekran odtwarzacza audio13min(zablokowana)
  • PlayerEngine - implementacja odtwarzania audio14min(zablokowana)
  • Odtwarzanie audio w tle - PlayerService15min(zablokowana)
  • Odtwarzanie audio bez aktywnego activity11min(zablokowana)
  • Łatwiejsza komunikacja pomiędzy Activity i Service9min(zablokowana)
  • Odświeżanie stanu na ekranie odtwarzacza11min(zablokowana)

Zakonczenie

5min
  • Gotowa aplikacja - Podsumowanie5min(zablokowana)

Ten kurs jest w bazie eduweb

Dostęp do wszystkich kursów z bazy eduweb za 199 zł/mies.

Wykup dostęp do bazy

Autor kursu

Średnia ocen autora: 4,6

Bio

Cześć. Nazywam się Sylwester Madej i jestem doświadczonym programistą Java (7 lat) i Android (4 lata) oraz trenerem. Po godzinach prowadzę tego bloga SoldiersOfMobile.com oraz kanał YouTube, aby dzielić się swoją wiedzą. Staram się wpływać na jakość aplikacji Android przez edukację innych. Prowadzę kursy na PW, udzielam się w MobileWarsaw i Android Live Coding. Często występuję na konferencjach m.in. Droidcon, Mobilization, Warsjawa.

Lubię uważać się za pragmatycznego programistę, fana TDD i dobrych narzędzi programistycznych.

Wolny czas spędzam podróżując po europie z narzeczoną i ucząc się języków obcych (obecnie angielskiego i włoskiego).