Kurs Programowanie Android

Wprowadzenie

Lekcje
  • Opis
  • Recenzje
  • Autor
  • Transkrypt

8 ocen

Lubię to! 336

Wprowadzenie

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

  1. Praktyczna aplikacja, krok po kroku
  2. Biblioteki i narzedzia uzywane przez profesjonalistów
  3. Budowanie interfejsów na podstawie projektu
  4. Komunikacja z API REST
  5. Zapisywanie danych w bazie SQLite
  6. Zapobieganie wyciekom pamieci
  7. Tworzenie aplikacji Material Design
  8. I wiele, wiele wiecej!

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.

Dlaczego wybrać właśnie ten kurs?

  1. Kurs wideo to najbardziej efektywna a zarazem najprzyjemniejsza forma nauki. Jest on tak prowadzony, byś cały czas mógł go śledzić z zainteresowaniem i zaangażowaniem, a także czerpać satysfakcję ze zdobytej wiedzy!
  2. Wiedza, którą otrzymujesz w tym kursie, to nie tylko sucha teoria, ale również wskazówki od praktyka z wieloletnim doświadczeniem, dzięki którym dużo łatwiej będzie Ci opanować materiał i tworzyć profesjonalne aplikacje mobilne!
  3. Uczysz się na praktycznych przykładach. Kurs, który masz przed sobą to esencja praktycznej wiedzy i doświadczenia a także wzorów, które oszczędzą Ci godziny pracy i poszukiwań.

Autor: Sylwester Madej

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).

soldiersofmobile.com

Recenzje Kurs Programowanie Android

5

8 dodanych ocen

2016-09-28

Niestety, ale już w 3 lekcji poruszane są nieaktualne rzeczy takie jak korzystanie z Parse - autor nigdzie wcześniej nie tłumaczył jak skonfigurować serwer, kod źródłowy dołączony do kursu również jest inny, niż ten prezentowany na lekcji.

Karol Sz

2016-09-29

@Karol W kursie używam Parse Server (https://github.com/ParsePlatform/parse-server) - darmowej, otwartej wersji Parse, którą można hostować samemu. Założeniem kursu było, że Parse to tylko przykład dobrego API REST, aby pokazać sposoby komunikacji po HTTP, ale dodam wideo z instrukcją postawienia darmowej instancji na Heroku, dla tych którzy chcą korzystać z własnej instancji. Ze względu przyrostowy charakter projektu kod źródłowy nie jest dodawany z lekcji na lekcję. Uważa Pan, że należy to uzupełnić? W razie uwag piszcie na sylwester@byoutline.com. Kurs prezentuje obecnie stosowane narzędzia, ale chętnie dodam elementy, które uważacie za niezbędne.

Sylwester Madej

2016-09-30

Jestem po 1 godzinie kursu i nawet dobrze się to ogląda , liczę że ten kurs mi się przyda w codziennej pracy,ciezko mi oceniac po 1 godzinie ale na chwile obecna jest w porzadku. .

Risky Danger

2016-10-07

Kurs jest bardzo dobrze dopracowany. Można wiele się nauczyć.

Magdalena Dziesińska

2017-07-30

Dużo przydatnej wiedz o programowianiu na Androida

Lukasz S Pierwola

2017-07-30

Dużo przydatnej wiedz o programowianiu na Androida

Lukasz S Pierwola

2017-09-03

Dobry i praktyczny kurs. (Po ściągnięciu plików znalazłem jedną pomyłkę - video 30 powinno mieć numer 29, spowodowało to małe zamieszanie w kodzie)

Pawel Modrzewski

2017-10-20

Niestety kod napisany do importu danych przez pythona nie działa prawdopodobnie zmieniło się api www.audiosear.ch prosił bym o aktualizację, ponieważ bez wgrania tych danych nie ma co przejść do dalszej pracy

Adrian Kukowski

Ten kurs nie posiada jeszcze transkryptu. Choć bardzo się staramy, wygenerowanie transkryptów do wszystkich kursów jest bardzo czasochłonne. W wielu przypadkach wymaga zaangażowania drogiego oprogramowania i godzin pracy przy poprawianiu transkryptu tak, aby był on możliwie jak najlepszy.

Zależy nam na tym, aby przygotować transkrypty do wszystkich naszych treści. To jedyny sposób dla osób niedosłyszących, aby mogły wygodnie uczyć się technologii. Poza tym, transkrypty ułatwiają skanowanie kursu w poszukiwaniu informacji i jego indeksowanie.

Szukamy osób, które mogłyby nam pomóc w poprawianiu transkryptów. Jeśli masz chwilę wolnego czasu i interesuje Cię dany kurs, w zamian za taką pomoc chętnie udostępnimy Ci wybrany materiał. Wyślij swoje zgłoszenie tutaj, jeśli możesz pomóc nam rozwijać platformę.

  • Informacje
  • Lekcje
Wykup w abonamencie od 79zł
Przetestuj za darmo przez 7 dni!

Autor: Sylwester Madej

Czas: 12 godzin

Wersja:

  • Pliki źródłowe
  • Certyfikat Ukończenia
  • Dostęp z urządzeń przenośnych
  • Licencje dla firm i szkół

Wstęp do kursu

  • Wprowadzenie

Przygotowanie serwera (opcjonalne)

  • Wlasna instancja Parse Server

  • Import danych na serwer

  • Przelaczenie aplikacji na wlasna instancje

Logowanie i rejestracja

  • Ekrany logowania i rejestracji

  • Walidacja wprowadzonych danych i nawigacja

  • Komunikacja z API logowania

  • Tworzenie użytkowników i logowanie

  • Wycieki pamięci - wykrywanie i zapobieganie

  • Przechowywanie obiektów w Application (UserManager)

  • Zapisywanie danych logowania w SharedPreferences

  • Sprawdzanie stanu logowania przy uruchomieniu i opcja Logout

  • Pokazywanie postępu długotrwałych operacji na UI

  • Obsługa rejestrowania nowego użytkownika

Dostosowywanie UI do projektu

  • Eksport grafik z Photoshop z użyciem sympli.io

  • Wstawianie logo i tła

  • Kolory tekstu i podkreślenia w EditText

  • Styl dla błędów i podpowiedzi

  • Ustawianie odstępów pomiędzy elementami

  • Styl dla przycisków

  • ScrollView - obsługa zbyt wysokich widoków

  • Ustawianie fontów na TextView i EditText

  • Stylowanie ekranu rejestracji

Nawigacja w aplikacji

  • Menu boczne w NavigationView

  • Akcje w menu dla ekranu subskrybcji

  • Komunikacja pomiędzy Fragment i Activity - Callback

  • Otto - komunikacja z użyciem szyny zdarzeń

Dodawanie subskrybcji

  • DiscoverManager

  • Pobieranie listy podcastów z serwera

  • Wyświetlanie okładek podcastów na liście - biblioteka Glide

  • Zapisywanie subskrybcji na serwerze

  • Pobieranie listy subskrybcji z serwera

  • Wyświetlanie subskrybcji

  • Widoki z informacją o braku subskrybcji i pobieraniu subskrybcji

Przechowywanie danych w trybie offline

  • Ormlite - mapowanie obiektowo-relacyjne dla SQLite

  • Wyświetlanie danych z bazy danych

  • Obsługa "Pull to refresh"

  • Własna klasa DAO i aktualizacja obiektów w bazie

  • Dialog sortowania subskrybcji

  • Implementacja sortowania w bazie danych

Lista odcinków

  • Dagger2 - implementacja wstrzykiwania zależności (Dependency Injection)

  • Ekran listy odcinków z efektem paralaksy

  • Pobieranie listy odcinków z serwera

  • Wyświetlanie listy odcinków

Odtwarzanie odcinków

  • Ekran odtwarzacza audio

  • PlayerEngine - implementacja odtwarzania audio

  • Odtwarzanie audio w tle - PlayerService

  • Odtwarzanie audio bez aktywnego activity

  • Łatwiejsza komunikacja pomiędzy Activity i Service

  • Odświeżanie stanu na ekranie odtwarzacza

Zakonczenie

  • Gotowa aplikacja - Podsumowanie