2009-08-24 20 views
5

Czy istnieją pułapki lub punkty do zapamiętania podczas programowania na Androida? Myślę, że lista będzie zawierała tematy Wielowątkowość, Trwałe przechowywanie itp.Pułapki aplikacji Androida

+2

Nie zapomnij ustawić bitu zła w module Positronic Brain na 0. – Powerlord

+0

Jeśli chcesz pracować w tle bez wyłączania, musisz umieścić powiadomienie na pasku powiadomień. – Christian

Odpowiedz

5

Android Developers ma dobry post o numerze avoiding memory leaks ze względu na przechowywanie odnośników do kontekstu. Jest tam także wiele innych ciekawych postów.

2

Nie nazwałbym ich pułapkami per se, ale zawsze pamiętaj, aby wziąć pod uwagę, że to nie jest komputer podłączony do ściany, która może po prostu być ulepszany na różne sposoby. Masz cykl aktualizacji co około 2 lata (długość standardowej umowy mobilnej w tych dniach), a sprzęt jest (A) nie najszybszy, a (B) statyczny w tym czasie.

warte uwzględnia:

1) W jaki sposób to, co aplikacja ma wpływu na żywotność baterii? Czy pluskniesz jasnej grafiki w całym miejscu? Działa wiele wątków w tle? Usługi?

2) Ile miejsca zajmuje aplikacja na urządzeniu? Czy informacja może być przechowywana na serwerze i przesyłana do urządzenia w celu tymczasowego użycia tylko wtedy, gdy jest potrzebna?

3) W odniesieniu do numeru 2, czy Twoja aplikacja jest odporna na złe/nieistniejące połączenia sieciowe/komórkowe? Jak działa w sieci EDGE vs 3G?

Jestem pewien, że możesz wymyślić coś więcej, ale o tym pamiętam, pisząc moje aplikacje.

12

Istnieje wiele rzeczy, które można tu powiedzieć.

Filmy z Androidem z Google I/O 2009 obejmują większość aspektów, o których należy pamiętać podczas programowania na systemie Android. W rzeczywistości, artykuły http://android-developers.blogspot.com/ są źródłem, na którym te ekspansje się rozwijają, a widząc je wyjaśnione przez najlepszych inżynierów Google (a jako bonus otrzymasz sekcję Q & A) jest koniecznością dla każdego programisty Androida, IMO.

Niektóre z rzeczy, które można by wymienić:

  • Nie używać pływaków, kiedy można osiągnąć podobne rezultaty z liczb całkowitych, ponieważ Android nie posiada natywne wsparcie dla zmiennoprzecinkowych.

  • Użyj narzędzi do debugowania obszernie, aby zoptymalizować zarówno wydajność i łatwość konserwacji i aby uniknąć typowych pułapek jak ViewGroup nadmiarowości w projektowaniu UI lub niepotrzebnych wielu połączeń do cięższych metod (View.inflate(), findViewById(), setImageResource ()).

  • Bundle połączeń serwisowych tło, inaczej jesteś wstawania OS niepotrzebnie i zbyt często, a narażając innych usług świnka-podkładką rozmowy (co powoduje silnie obniżonej żywotności baterii)

  • wolą SAX-parser nad parserami DOM tracisz czas na ich implementację, ale zyskujesz czas na działanie aplikacji (i dostępność Twojego urządzenia).

  • Zachowaj swoje manipulacje z interfejsem użytkownika w swoim wątku UI, ponieważ zestaw narzędzi interfejsu nie jest bezpieczny dla wątków

  • Należy pamiętać, że zmiana orientacji niszczy i tworzy swoją aktywność ponownie (dowiedziałem się, że ciężka i bolesna droga - to jak zacząłem śledzić bloga Android-developers')

... i wiele innych .

Powiązane problemy