Aktywne Wpisy
![](https://wykop.pl/cdn/c3397992/JustJoinIT_5YNc74rL0L,q60.jpg)
JustJoinIT +19
Kiedy kupiliście swój pierwszy, własny komputer? ( ͡º ͜ʖ͡º)
#pytanie #pytaniedoeksperta #komputery #programowanie #technologia
#pytanie #pytaniedoeksperta #komputery #programowanie #technologia
![](https://wykop.pl/cdn/c3201142/1ac77cdf8b4847dc42c77b9a7cd5565aad268c0fb082a3e7be0fb2543e6049e0,w150.jpg?author=JustJoinIT&auth=2dd1331503537b81c1b06aff7d304564)
![](https://wykop.pl/cdn/c3397992/cezargas_iCZxMM6umD,q60.jpg)
cezargas +14
Pytanie do Warszawiaków.
Jadę na weekend z żoną do Wawy i chcielibyśmy gdzieś iść pobawić się. Znacie jakieś kluby dla osób 40+ ?
#warszawa
Jadę na weekend z żoną do Wawy i chcielibyśmy gdzieś iść pobawić się. Znacie jakieś kluby dla osób 40+ ?
#warszawa
Nie uważam się za eksperta, ale siedzę w tym na tyle, żeby jakąś wiedzę przekazać.
Liczę, że odezwą się też inni Androidowcy i dorzucą swoje 3 grosze w komentarzach i wywiążę się z tego jakaś dyskusja.
START
Zacznijmy od IDE oraz Androidowego SDK. Swego czasu najpopularniejszym IDE do programowania w Androidzie był Eclipse z wtyczką ADT (Android Development Tools). Można go pobrać tutaj : https://developer.android.com/sdk/index.html?hl=i . Jeżeli ktoś jest przyzwyczajony do Eclipse, to nie ma przeszkód żeby go używać. Ja osobiście przerzuciłem się na Android Studio i jestem zwolennikiem tego IDE.
Android Studio jest oparty na IntelliJ i jest rozwijany przez Google od ponad roku (od maja 2013 konkretnie). Aktualnie wypuszczona jest wersja 0.8.6 i ciągle jest w fazie beta, ale nie przeszkadza to wygodnie programować na tym IDE. Możecie go pobrać tutaj : https://developer.android.com/sdk/installing/studio.html
Kiedy pobierzecie IDE musicie także pobrać przez SDK Managera wszystkie paczki od Google, całe pobieranie trochę trwa. Ikonkę SDK Managera znajdziecie w IDE w pasku u góry.
PROGRAMOWANIE
Osoby znające Javę mają przewagę już na starcie, dla tych co jej nie znają polecam zacząć od nauki tego języka. Co prawda, istnieje opcja pisania aplikacji na Androida w C++, ale jest to rozwiązanie niepolecane, z uwagi na to, że wbrew pozorom aplikację będą wolniejsze.
Do nauki samego Androida polecam tutorial wypuszczony przez Google : https://developer.android.com/training/index.html
Zdaje sobie sprawę, że nikomu nowemu nie będzie chciało się przebijać przez całą dokumentację zanim zacznie programować na Androida, więc polecam jedynie przeczytanie sekcji "Getting Started" a następnie ustalenie sobie jakiegoś celu (czytaj wymyślenie aplikacji do stworzenia) i zaczęcia programowania.
Nie obędzie się oczywiście bez StackOverflow z uwagi na to, że Android to urządzenie mobilne i jest mniej wyrozumiały niż aplikacje desktopowe. Przygotujcie się więc na częste, niezrozumiałe błędy, o które już setki osób zapytało na Stacku.
KILKA RAD
Po pierwsze, nie bójcie się korzystać z bibliotek na Androida dostępnych w internecie. Jest ich na prawdę mnóstwo i ułatwiają one wprowadzanie upragnionych przez nas ficzerów ( ͡° ͜ʖ ͡°).
Polecam tą aplikację : https://play.google.com/store/apps/details?id=com.desarrollodroide.repos
Pozwoli ona wam na przetestowanie z poziomu komórki poszczególnych bibliotek, bez zbędnego ich ściągania i importowania do waszego IDE.
Po drugie, przy zakładaniu projektu, IDE będzie was pytało jakie checie minimalne API ustalić.
Im starsze API tym mniej funkcjonalności będziecie mieli do dyspozycji i więcej będziecie musieli uzupełniać np. zewnętrznymi bibliotekami.
Swego czasu skupiałem się na API 10+ czyli od Androida 2.3.3, co ciągnęło za sobą potrzebę importowania masy dodatkowych biliotek takich jak np. ActionBarSherlock aby otrzymać funkcjonalności z Androidów 3.0+ i 4.0+.
Aktualnie stare wersje Androida stopniowo wymierają i coraz mniej opłaca się tracić czas na implementację dla API poniżej 15. Możecie sami zobaczyć jaki jest aktualny stan rynkowy wersji Androida : https://developer.android.com/about/dashboards/index.html
Jeżeli jednak chcecie pisać na API poniżej 15, to Google wypuścił specjalną bibliotekę o nazwie AppCompat (od compatibility), która zawiera funkcje z wyższych API, które można zastosować np. w API 10.
Ciekawostka : Czytałem, że czasami opłaca się używać AppCompat nawet w starszych wersjach bo ponoć jest bardziej przetestowana i stabilniejsza. Niestety nie jestem w stanie podać żadnego źródła.
CZY WARTO?
Moim zdaniem, zdecydowanie tak. Rynek mobilny rośnie naprawdę szybko i jest to część IT, w którą warto zainwestować czas. Oprócz tego Android to nie tylko telefony, ale też rozwijające się ostatnio zegarki z Androidem, tablety, telewizory a w przyszłości też i samochody. Na głównej stronie (na dole) możecie zobaczyć o co chodzi https://developer.android.com/index.html
Oczywiście, na Androidzie można też zarobić jako samodzielny developer, w Google znajdziecie sporo ludzi, którzy dzielą się swoimi dochodami z reklam w aplikacjach.
Jako ciekawostkę (historyczną niemalże) podam, że gdy Android i ogólnie smartphony dopiero się rozwijały, a sam market aplikacji dopiero raczkował. Wśród użytkowników pierwszych smartfonów królowały raczej mało funkcjonalne aplikacje typu widget do baterii w kształcie piwa, aplikacja, która wydaje dźwięki pierdzenia (nie żartuje, spójrzcie na ilość sciągnięć https://play.google.com/store/apps/details?id=com.kauf.soundboard.baum.FartSoundBoard ) itd. Można było wtedy bardzo łatwo zarobić na reklamach, często bardzo agresywnych (typu reklama w notyfikacji itp.). Jednak pewnego dnia Google zrobił wielkie czystki, powyrzucał śmieciowe aplikacje i zmienił system reklamowania nowych apek, przez co produkowanie pierdołowatych apek stało się mniej opłacalne.
Nie twierdzę, że teraz użytkownicy nie ściągają takich aplikacji, ale system promowania nie pozwala już tak dużo na nich zarobić.
DODATEK PO EDYCJI
Jeszcze chciałem wspomnieć o różnicach pomiędzy programowanie na iOS a Androida. iOS ma tą zaletę, że jest tylko jeden telefon, do którego musimy dostosować rozdzielczość, komponenty aplikacji i całą resztę. Dzięki temu też aplikacje na iOS są lepiej przetestowane i czasami pewnie i szybsze. W Androidzie niestety mamy tysiące różnych urządzeń, tysiące różnych ekranów i różne API, co dodatkowo utrudnia całą sprawę.
Liczę na wasze komentarze i jakąś owocną dyskusję.
Jeśli gdzieś popełniłem błąd, dajcie znać.
#programowanie #android #mdfkandroiddev #androiddev
od podstaw, po wstawianie aplikacji do sklepu