Wpis z mikrobloga

#androiddev #programowanie
Chciałbym wyświetlać userowi reklamę, co 20 unlocków telefonu. Moja appka to locker. Jak to ugryźć najlepiej:
1. Zliczać unlocki, do shared preferences i co 20 wyświetlać? Musiałbym zliczyć kilka milionów unlocków, jeśli chciałbym mieć to działające nawet za 2 lata
2. AlarmManager? Może się dopierdzielić Google Bot, bo AlarmManager potrafi coś wyświetlić po za działaniem obszaru aplikacji
3. Inne metody?

Nie chciałbym wkurzać usera, by przy każdym unlocku miał reklamę.
  • 14
  • Odpowiedz
@Artrix: w ustawienia mało kto wejdzie, możliwe, że tylko raz na całe życie aplikacji na danym urządzeniu, postawiłem na pierwszą opcję
1. Liczenie do 30, shared preferences
2. Wyświetlenie reklamy
3. Reset licznika
  • Odpowiedz
@jjczopek: @avruk: dokładnie :P po sylwestrze nie myślę, już zakodowałem zerowanie :D
if(rater==1)
{
counter++;
SavePreferences("counter",counter);
if(counter==20)
{
counter=0;
SavePreferences("counter",counter);
/reklama
}
else
{
finish();
}
  • Odpowiedz
@AntiPlay: Ad. 1 nie musisz zliczać milionów locków, wystarczy zastosować licznik rewersyjny - ustawić na 20 i zminiejszać przy unlocku. Jak dojdzie do 0 to wyświetlić reklamę i zresetować licznik (ustawić na 20).
Ad. 2 jak alarm manager miałby zliczać odblokowania ekranu?
Ad. 3 Nie wyświetlać reklam wcale. Jeżeli już musisz to nie wyświetlać reklam po 20 unlockach bo jeden unlockuje telefon kilka razy na godzinę a inny raz w ciągu
  • Odpowiedz
@Mithrindil: http://www.dailymail.co.uk/sciencetech/article-2449632/How-check-phone-The-average-person-does-110-times-DAY-6-seconds-evening.html

faktycznie, masz sporo racji ;) zwłaszcza, że na lockerze postanowiłem nie zamieszczać informacji o połączeniach i SMS, by zmusić usera do akcji, zresztą psułoby mi to design ;) dałem tylko analogowy zegar ze standardowej klasy androida i wrzuciłem na layout ;)

Średnio, przy 100 odblokowaniach dziennie będzie to 5 wyświetleń reklam, ale jeśli trafię na fanatyka, który będzie odblokowywał telefon 1000 razy dziennie? Spadnie mi ecpm tych reklam.
  • Odpowiedz
@AntiPlay: zaproponowane przeze mnie rozwiązanie można jeszcze zoptymalizować statycznie parametryzując listę przewidywanych godzin - zawsze to mniej odwołań do sharedprefs. Chyba że planujesz jakoś zmieniać te godziny w runtime, wtedy to nie zadziała. By z tego skorzystać godziny muszą być podane już w czasie kompilacji.
  • Odpowiedz
@Mithrindil: rozwiązanie fajne, ale nie wiem czy na taką prostą appkę ;) można to zrobić progresywnie, 20 unlocków, jest reklama, to następne po 40 i tak do 100, reset. User się tak nie wkurzy ;)
  • Odpowiedz
@AntiPlay: no ale to nie rozwiązuje Ci problemy że różni ludzie różnie odblokowują telefon. I jeden dostanie jedną reklamę w ciągu dnia a przez kolejne dwa dni nie dostanie żadnej a inny dostanie 10 już pierwszego dnia.

zrobisz jak zechcesz, podejście czasowe to na oko 20 linii kodu ;) z tym uczeniem to faktycznie przerost formy nad treścią.
  • Odpowiedz