czwartek, kwietnia 22, 2010

Wiedza magiczna

Uwielbiam to ;-)Przykład na dziś, próbuję sobie napisać prosty widget dla Androida, ma liczyć biorytmy [nie, niewierze w biorytmy, ale biorytmy mają tą zaletę, że są "osobiste" i zmieniają się z czasem, czyli pasują do bycia widgetem w Androidzie :-)].W ramach testów napisałem sobie swoją własną klasę rozszerzająca "podstawę" dla widgetu czyli klasę AppWidgetProvider i jej metodę onUpdate(), w manifeście aplikacji wprowadziłem "zamówienie" na filtrowanie intenta android.appwidget.action.APPWIDGET_UPDATE, i ponieważ chciałem widzieć te zmiany od razu to ustawiłem interwał otrzymywania tego intenta na 1000 ms......... i nic, mój widget nic nie dostawał. Tzn. dostawał 1 raz, a później już nie.No i już wiem czemu ;-) Na czas oglądania Inwazji zostawiłem włączony emulator Androida i włączonego DDMSa i zauważyłem, że updaty przychodzą, ale nie co 1 sekundę, a co 30 minut :-)Znając już te 30 minut zapytałem Google o android.appwidget.action.APPWIDGET_UPDATE minimum 30 mintues i ze StackOverflow dowiedziałem się, że to taki nieopisany ficzer ;-) W dokumentacji o tym nie piszą, a nawet piszą o przykładzie z 15 minutami jako interwałem ;-)Android ma chyba zresztą tej wiedzy magicznej dość dużo, innym przykładem jest robienie zdjęć, do czego używa się intenta android.media.action.IMAGE_CAPTURE, które na G1 [ale chyba też na innych telefonach] robi zdjęcie, ale nie w pełnych rozmiarach, a jedynie w rozdzielczości 512x384 [a to i po użyciu dodatkowych ustawień bo normalnie 256x192].


Podobne postybeta
W Androidzie przydałyby się nagrywalne intenty :-)
Programowanie jako sztuka oszukiwania ;-)
396 m2 ekranu
ETA - liczymy szacowany czas zakończenia [przybycia ;-)]
Dalsze walki Androidowe