V Programowanie na Androida: Reklamy i Publikacje

V Programowanie na Androida: Reklamy i Publikacje

Witam w Piątek części kursu z Cyklu Programowanie na AndroidaW tej części  kursu poznacie jak założyć konto w serwisie reklamowym adMob + dodanie ich do aplikacji oraz jak założyć konto do publikowania aplikacji na androida, wraz z publikacją waszej pierwszej aplikacji.

I Założenie konta admob i pobranie biblioteki Jar Konto zakładamy nowe, lub na podstawie naszego google accounts (lub konta firmowe bazujące na google). Robimy to na stronie: http://www.admob.com/my_sites/ Następnie Signup (chyba, że mamy konto google, klikamy poniżej)

Proces aktywacji Konta, jeśli mamy już konto google

W Accoundtype wybieracie, czy jesteście osobą indywidualną, większą firmą itp, Business to nazwa firmy. Jako , że sam nie mam firmy wpisałem swoje ImieINazwisko. Jeśli o Payment Details chodzi, to albo powiązanie z bankiem, albo użycie paypal’a (sam osobiście wybrałem drugi sposób). Gdy już zalogujemy się, możemy dodać naszą aplikację wg poniższego obrazkowego tutorialu:

Kreator dodawania aplikacji

Market:// Nie musimy uzupełniac, lecz jeśli tego nie robimy, należy wyczyścić pole tekstowe. Oraz wpisać captcha (miłego odczytywania) 

Pobieramy biblioteke

Następnie paczkę rozpakowujemy a plik jar wrzucamy do folderu z naszym projektem\libs i jak na obrazku niżej dodajemy do build patch

Tak postępujemy z większością bibliotek w Jarze

II Inicjacja kontrolki reklamyW moim przypadku po imporcie biblioteki admob reklamę dodaję w main_activity.java dodając poniższą metodę.


private void reklama() {
 adView = (AdView)findViewById(R.id.adView);
 //addTestDevice dodaje tryb testowy na naszym urządzeniu (niezbyt mile widziane jest klikanie w swoje reklamy, a to podczas testów robimy często w nadmiarze)
 adView.loadAd(new AdRequest().addTestDevice("60B8970CC9DB86C274D7C7F4B3FE68D9"));
 }

Objaśnienie: addTestDevice pozwala ustawić nasze urządzenie jako developerskie (dzięki czemu reklamy możemy dowolnie wielokrotnie klikać bez obawy o spam, jednocześnie nie będąc naliczane).  No i metodę wywołujemy w onCreate Poza javą, także w XML dodamy kontrolkę adView (choć można ją dodać także z kodu)

<com.google.ads.AdView
 android:id="@+id/adView"
 android:layout_width="wrap_content"
 android:layout_height="wrap_content"
 android:layout_alignParentBottom="true"
 android:layout_alignParentLeft="true"
 ads:adSize="BANNER"
 ads:adUnitId="a15062f81fbed45"
 ads:loadAdOnCreate="true"
 ads:testDevices="TEST_EMULATOR, 60B8970CC9DB86C274D7C7F4B3FE68D9" >
 </com.google.ads.AdView>

Zmieniłem layout głównej strony na RelativeLayout, ponieważ pozwala na dowolniejszą modyfikacje kontrolek względem siebie oraz wprowadziłem parę poprawek.  Dodatkowo, jeśli chcesz użyć zewnętrzną kontrolkę , to w najwyższym layoucie (u mnie <relative> ) należy użyć: xmlns:ads=”http://schemas.android.com/apk/lib/com.google.ads” Ostatnią rzeczą jest dodanie do Android manifestu pozwoleń na internet oraz aktywności reklamy. Permission:

<uses-permission android:name="android.permission.INTERNET"/>
 <uses-permission android:name="android.permission.ACCESS_NETWORK_STATE"/>

Powyższe Pozwolenia pozwalają aplikacji na sprawdzenie statusu sieci oraz łączenie się do niej. Pomiędzy <application..></application>

<activity android:name="com.google.ads.AdActivity"
 android:configChanges="keyboard|keyboardHidden|orientation|screenLayout|uiMode|screenSize|smallestScreenSize"/>

III Założenie konta w Android Developer Console Pierwszym krokiem jest wejście na strone http://developer.android.com/index.html i kliknięcie na 3 kropki po prawej i Google play developer console (screen robiony w czasie pisania artykułu) lub bezpośrednio na https://play.google.com/apps/publish/. Podobnie jak przy reklamach w AdMobie tu też opieramy nasze konto na naszym koncie googlowskim, tyle, że dodatkowo wpisujemy nazwę programisty oraz adres strony WWW. (można później strone zmienić). Za pomocą nazwy programisty można nas także znaleźć w google play. Następnym, juz nie do końca wesołym, ale za to jednorazowym krokiem jest wpłata na konto 25 dolarów. Jako że nie trzeba płacić regularnie, myślę że jest to do przyjęcia ta opłata. Ewentualnie, mogę na swoje konto wrzucić. Po zapłaceniu (za pomocą karty płatniczej)  i odczekaniu na potwierdzenie , nasze konto jest aktywne i gotowe do publikacji. IV  Podpisywanie aplikacjiAby aplikację opublikować, trzeba ją najpierw podpisać. Podpis można wygenerować w kreatorze podpisywania. Podpis także może być potem użyty  np do użycia oAuth z G+ (na daną chwilę) oraz do używania map google w naszej aplikacji.

Narzędzie do podpisywania aplikacji
Wybieramy projekt (domyślnie wybiera obecnie uruchomiony(tzn mamy otwarte pliki z niego)
Tutaj jeśli jeszcze nie mamy klucza, tworzymy nowy
Najważniejsze jest pierwsze 5 pól(alias, hasło z powtórzeniem oraz długość ważności klucza)

P.S: KLUCZ PO OPUBLIKOWANIU ZOSTAWIĆ W BEZPIECZNYM MIEJSCU. Strata klucza = brak możliwości aktualizacji itp, ponieważ to on identyfikuje ważność aplikacji z danym kontem. V Publikacja aplikacji Zacznijmy od zalogowania się do naszej konsoli developerskiej (ta sama strona co z rejestracją). Jeśli już wpłaciliśmy oraz konto jest aktywne, dostaniemy prosty panel developerski, na którym można przeglądnąć statystyki aplikacji, błędy które użytkownikom zwróciło (niestety z lekkim poślizgiem od chwili zdarzenia). Przejdźmy więc do dodania własnej aplikacji klikając „Prześlij aplikację”

Konsola developera
Wysyłamy naszą aplikację na serwer
Uzupełniamy podpisy, publikujemy screeny oraz ikonę aplikacji. Na końcu ustalamy czy aplikacja płatna czy darmowa
Aktywujemy nasze apk  i publikujemy

Pamiętacie jak przy zakładaniu projektu wpisywało się package? Jest to tez odnośnik do naszej aplikacji w markecie https://play.google.com/store/apps/details?id=pl.szymonmotyka.tutorialrandomizer details?id= wpisujemy nazwę naszego pakietu. To jest odnośnik do naszej aplikacji na google play. P.s w celu wykonania grafik promocyjnych na developer.android.com są dostępne różne narzędzia (typu generowanie grafiki telefonu /tabletu z screenem)

źródła: https://dl.dropbox.com/u/14815030/tutorialrandomizerpt4.zip

  • Warto dodać, że trzeba uważać na umiejscowienie banera – Google lubi banować za nic.

    • Szymon Motyka

      O tym nie wiedziałem nawet 🙂 dzieki za cynk

  • Bruno

    Mam 2 pytania:
    1. Naliczanie pieniędzy jest w momencie
    a) kliknięcia reklamy (otwarcie okienka wyboru przeglądarki)
    b) otworzenia przeglądarki
    c) załadowania strony z reklamą

    2. Czy legalne są reklamy w stylu „jedno kliknięcie wyłącza reklamy na cały dzień”?

    • AlusPL

      ad 1. Niestety nie wiem, nie badałem tego dokładnie. 
      ad 2. Nie ma chyba żadnego punktu w regulaminie, który takie coś zabrania. Są listenery „Po kliknięciu reklamy” etc. więc  możesz śmiało się pobawić

  • Szczepan

    U mnie wszystko ładnie robi, ale po skompilowaniu appki, wywala mi error, jak usune baner, to nie mam errora, co jest nie tak?

    • AlusPL

      Pytanie pod jaka wersje API stworzyłeś projekt