Skocz do zawartości
jakubhab

[DLA POCZĄTKUJĄCYCH] Jak zaczac programowac na androida [offtop zabroniony]

    Rekomendowane odpowiedzi

    jakubhab

    Na podstawie pierwotnego tematu użytkownika piotrpo, część rozbudowana, a część obcięta przez użytkownika chaosmedia. Temat powstał by nowi użytkownicy nie musieli się przedzierać przez offtop powstały w temacie pierwotnym. Będzie on stale rozwijany i aktualizowany. Częstotliwość aktualizacji/rozwoju tematu, raz na tydzień.

    Offtop w tym dziale jest surowo zabroniony, jeśli nie będzie dotyczył pytań początkujących. Zabroniona jest luźna rozmowa o d... marynie. Każde zaśmiecanie tematu przez bardziej doświadczonych programistów, będzie nagradzane prezentem.

    Jak zacząć programować aplikację i gry na system Android.

    Czego potrzebuję?

    1. Narzędzi

    Narzędzia, głównie jest to IDE (Zintegrowane Środowisko Programistyczne), w którym będziesz pisał swoją aplikację i tworzył jej aspekty wizualne. Proszę, nie myl programowania ze składaniem aplikacji z gotowych klocków. Ten błędny pogląd jest surowo potępiany na forum.

    Programowanie wymaga znajomości języka, podstawowej wiedzy matematycznej i logicznego myślenia, a także SAMODZIELNEGO rozwiązywania napotkanych problemów.

    Androida wspiera tylko parę z wielu IDE, są to Eclipse, Intelij, Netbeans. Od biedy można programować również w notatniku i kompilować używając CMD, jednak jest to nieekonomiczne.

    Jedynym IDE wspieranym oficjalnie przez Google jest Eclipse, posiada on także sporą społeczność i większość problemów związanych z programowaniem, przykładów, etc. jest opisana dla tego IDE.

    Eclipse ściągniesz z : Eclipse Downloads

    Dodatkowym elementem jest SDK android i ADT plugin do Eclipse, instrukcję znajdziesz tutaj:

    Building Your First App | Android Developers

    Jeśli nie poradzisz sobie z tym elementem, instalacją i konfiguracją IDE. Możesz nie czytać dalej i zrezygnować z programowania.

    2. Wiedzy

    -znajomość angielskiego (bezwzględnie wymagana, większość materiałów dostępnych w jezyku angielskim, a polskie książki są delikatnie mówiąc, do niczego)

    -znajomość podstaw języka Java (nie mylić z JavaScript)

    pojęcia takie jak: zmienna, instrukcja warunkowa, metoda, klasa, dziedziczenie, pętla, wątek i składnia języka

    -znajomość struktury aplikacji Android

    pojęcia takie jak: activity, service, android manifest, widget, wątek, reveiver i metody onCreate, onStart, onResume, onPause, onStop, onDestroy i onRestart

    FAQ

    1. Czy mogę pisać na androida w językach innych niż Java?

    C++ - tak, możesz pisać używając kodu natywnego, jednak bez znajomości Javy się nie obejdzie. Dodatkowo przy tym wymagana jest dobra znajomość linuxa.

    C# - nie, nie możesz pisać aplikacji w tym języku, ale narzędzia do tworzenia gier jak Unity3D, zezwala na użycie tego języka w ich środowisku.

    HTML5 - nie jest to języka programowania, narzędzia typu PhoneGap pozwalają tworzyć aplikację przy użyciu HTML. Nie są one jednak pozbawione wad funkcjonalnych jak i ce♥♥♥♥e je wyjątkowa niska wydajność. Zapomnij o grach lub bardziej złożonych aplikacjach HTML5

    Flex/Action Script - Adobe udostępnia odpowiednie narzędzia do tworzenia aplikacji w tym standardzie przy użyciu języka Action Script. Jest to jednak technologia niewspierana przez Google, jak i Apple przy pisaniu na iOS. Aplikacje wymagają plugina Adobe w systemie, są też słabe wydajnościowo.

    Inne języki - nie możesz tworzyć w innych językach, oczywiście są nieliczne narzędzia pozwalające na takie działania, jednak są mało wydajne i nie pozwalają na dostęp do wielu funkcji systemu i hardware urządzenia. Tak samo jak HTML5 i Action Script

    2. Czy mogę sprzedawać swoje aplikacje w Google Play

    Oczywiście, ta funkcja jest dostępna dla Polaków. Pamiętaj jednak, że zgodnie z regulaminem Google Play, ustalającym strony sprzedaży między użytkownika, a programistę, WYMAGANE jest posiadanie Działalności Gospodarczej. Więcej w drugim temacie przyklejonym na temat Działalności Gospodarczej. Sprzedaż wymaga również prowadzenia ewidencji sprzedaży.

    3. Czy mogę publikować swoje aplikacje?

    Tak, koszt konta developerskiego to $25, płatne tylko kartą debetową/kredytową. Nie ma dostępnych metod kupna za pomocą przelewu czy SMS. Jednak by publikować aplikacje płatne, musisz przejść weryfikację konta bankowego przez założenie Google Checkout dla programistów i wypełnienie instrukcji.

    4. Czy mogę umieścić reklamę w swojej aplikacji?

    Tak, dostępnych jest kilkadziesiąt sieci reklamowych, wyróżniamy sieci typowo banerowe z nieinwazyjnymi formami reklamy: admob, inmobi, mobfox, mobclix(oszuści, nie ufać im), revmob, applovin + kilkanaście mniej znanych. Są też sieci z inwazyjnymi formami reklamy: airpush(notyfikacje), leadbolt(notyfikacje), senddroid(notyfikacje), startapp(zmiany w zakładkach w przeglądarce, edycja strony startowej).

    Typy reklamy:

    CPM - cost peer mile (koszt za 1000 wyświetleń banera) - większość sieci reklamowych

    CPC - koszt za kliknięcie w reklamę, większość sieci reklamowych

    CPA - koszt za akcje usera, np. instalacje programu lub gry, niewiele sieci reklamowych, Applovin(częściowo), Leadbolt(częściowo), MundoMedia, Deluxe Ads, MobPartner, CPATank. Oprócz Applovin i Leadbolta żadna z sieci nie zawiera własnego SDK, a reklamy obsługujemy manualnie lub za pomocą własnych systemów.

    Incentvisited - user za skorzystanie z reklamy dostaje nagrodę jak waluta w grze lub przedmioty, sieci to TapJoy, TapIt i kilka innych

    5. Czy polecacie jakieś książki / źródła dotyczące programowania?

    Nauka Java - "Java 2 Podstawy", "Thinking in Java", "Head First: Java"

    Dokumentacja android SDK + wskazówki dla developerów - Android Developers

    Przykładowe projekty instalowane z SDK. ~\android-sdk-windows\samples\...

    Książki dostępne tutaj: CommonsWare(roczna subskrypcja uaktualnień to $40)

    Po polsku ukazała się jedna książka Android 2 Tworzenie aplikacji Książka "Android 2. Tworzenie aplikacji" - Sayed Hashimi, Satya Komatineni, Dave MacLean - 9788324627547 -- Wydawnictwo Helion, księgarnia helion.pl jakoś bardzo jej nie polecamy, ale nic innego w ojczystym języku nie znajdziesz.

    Odpowiedzi na sporo pytań znajdziesz tutaj: Stack Overflow

    Edytowane przez jakubhab

    Udostępnij tę odpowiedź


    Odnośnik do odpowiedzi
    Udostępnij na innych stronach

    czy masz tą ksiązke na mysli do kupienia zeby nauczyc sie programowac??

    Java 2. Podstawy ~ WYPRZEDAŻ - 50%~ % WYSYŁKA 0zł (3139003484) - Allegro.pl - Więcej niż aukcje. Najlepsze oferty na największej platformie handlowej.

    troche mnie interesuje cena bo jak na tą ksiazke to jest bardzo niska no ale coz wyprzedaż :E

    Udostępnij tę odpowiedź


    Odnośnik do odpowiedzi
    Udostępnij na innych stronach
    piotrpo

    Ta książka doczekała się kilku wydań, które znacząco różnią się między sobą. Warto dołożyć do nowszego.

    Udostępnij tę odpowiedź


    Odnośnik do odpowiedzi
    Udostępnij na innych stronach

    Pisanie w czymś innym niż Java / Java+C++(NDK) to głupota jeśli chodzi o android. Oczywiście pomijając narzędzia typu Unity. Nawet używanie HTML5 i Phonegapa to głupota. Nie masz wielu funkcji systemowych, dostępu do hardware i bardzo ograniczoną wydajność. Nic oprócz natywnych języków się nie nadaje na daną platformę. Tak samo jest z iOS, można pisać w html 5, tylko co z tego, skoro wszystko będzie mulić.

    Udostępnij tę odpowiedź


    Odnośnik do odpowiedzi
    Udostępnij na innych stronach
    Cubaza

    Ale wierz mi, że żadna nie nadaje się aż tak żeby tle za nie płacić.

    Wysyłane z mojego Nexus 4 za pomocą Tapatalk 2

    Udostępnij tę odpowiedź


    Odnośnik do odpowiedzi
    Udostępnij na innych stronach

    @Cubaza to skąd się uczyć po polsku? Najskuteczniej, najszybciej? ;)

    Udostępnij tę odpowiedź


    Odnośnik do odpowiedzi
    Udostępnij na innych stronach
    Cubaza

    Tak jak chaodmedia napisał. Jeśli nie znasz angielskiego to nie wróżę sukcesu. Nie ma dobrej książki po polsku do Androida i ciężko będzie się czegoś nauczyć z nich. Chyba, że wystarczy Ci sudoku bez wiedzy dlaczego po co i jak.

    Wysyłane z mojego Nexus 4 za pomocą Tapatalk 2

    Udostępnij tę odpowiedź


    Odnośnik do odpowiedzi
    Udostępnij na innych stronach

    Jeśli chcesz dodać odpowiedź, zaloguj się lub zarejestruj nowe konto

    Jedynie zarejestrowani użytkownicy mogą komentować zawartość tej strony.

    Zarejestruj nowe konto

    Załóż nowe konto. To bardzo proste!

    Zarejestruj się

    Zaloguj się

    Posiadasz już konto? Zaloguj się poniżej.

    Zaloguj się

    • Ostatnio przeglądający   0 użytkowników

      Brak zarejestrowanych użytkowników przeglądających tę stronę.

    x