Zawartość
- Nieefektywna optymalizacja klienta
- Korzystanie z różnych typów sieci
- Ograniczenia przepustowości
- Słabe zarządzanie pamięcią
- Lackasaidal debugowanie
- Problemy z niezgodnością
- Dołącz do nas
Ponieważ inteligentne urządzenia zalewają nasz świat w ciągu ostatnich kilku lat, przyzwyczailiśmy się do używania i często polegania na niektórych aplikacjach w codziennym życiu. Przy obfitości tych aplikacji pojawia się kwestia niezawodności. Obecnie nierzadko zdarza się, że aplikacje ulegają awariom. Niektórzy ludzie mogą doświadczać tego problemu bardzo często, podczas gdy inni mogą go mieć tylko kilka razy w tygodniu. Fakt pozostaje jednak: aplikacje ulegają awarii! Ale dlaczego?
Poniżej znajdują się niektóre z najczęstszych powodów, dla których aplikacje w naszych gadżetach nagle zamarzają na śmierć w nieodpowiednich momentach.
Nieefektywna optymalizacja klienta
Aplikacje z błędami w projekcie interfejsu, które prowadzą do złego zarządzania zasobami, mają tendencję do awarii. Jeśli programista nie jest zainteresowany możliwościami urządzenia, na którym ma działać aplikacja, może ona stać się żmudną zasobami i ciągłym źródłem frustracji użytkowników. Istnieją ustalone techniki minimalizowania sposobu, w jaki aplikacja zarządza zasobami, ale jeśli programista idzie na skróty lub nie potrafi ich wdrożyć, nie zawsze pozostaje to niezauważone.
Na przykład użycie algorytmów kompresji obrazu jest koniecznością, aby upewnić się, że rozmiar plików zdjęć nie jest zbyt duży. Dobry programista musi wziąć pod uwagę, że nie wszyscy właściciele inteligentnych urządzeń przez cały czas mają błyskawiczne prędkości Internetu. Ponieważ wiele aplikacji, aby działać, musi regularnie nawiązywać połączenie ze zdalnym serwerem, programiści powinni wziąć pod uwagę związek między zdarzeniami zachodzącymi na ekranie a prawdziwymi możliwościami urządzenia. Błąd w obliczeniach w tym aspekcie może znacząco wpłynąć na zachowanie aplikacji po wydaniu.
Korzystanie z różnych typów sieci
Czy wystąpiła awaria aplikacji po zmianie połączenia sieciowego na komórkową transmisję danych lub Wi-Fi? Chociaż większość flagowych telefonów, takich jak Samsung z serii Galaxy, ma wbudowaną funkcję automatycznego przełączania sieci, która umożliwia płynne przełączanie przełącznika połączenia i minimalizację utraty danych, w niektórych aplikacjach przez większość czasu mogą wystąpić problemy ze stabilnością. Ten problem istnieje już od kilku lat, a odpowiedź na niego spoczywa zarówno na barkach programistów, jak i Google, producenta Androida. Wydaje się jednak, że nikt nie znalazł skuteczniejszego rozwiązania.
Aby zapobiec awariom aplikacji, wyłącz ją najpierw przed przełączeniem na inny typ sieci.
Ograniczenia przepustowości
Innym powodem, dla którego aplikacja nie ładuje się, zawiesza, a następnie umiera, jest brak przepustowości. Zawodne połączenie często prowadzi do uszkodzenia pamięci podręcznej, ponieważ aplikacja może w trakcie procesu pobierać złe dane. Niektóre aplikacje mogą działać świetnie w domu, ponieważ najprawdopodobniej jeden z nich korzysta z bardziej stabilnego połączenia Wi-Fi, ale gdy ruszysz w drogę i przełączysz się na mobilną transmisję danych, wtedy zaczynają się prawdziwe problemy. Programiści powinni zwrócić uwagę na taką możliwość, ale jest to często jeden z najczęściej pomijanych aspektów podczas tworzenia aplikacji.
Jeśli zauważysz, że jakaś aplikacja działa wolno lub ulega awarii podczas korzystania z niestabilnego połączenia mobilnego, zrzuć winę na programistę. Dobra aplikacja powinna działać niezawodnie ze stabilnym połączeniem lub bez niego.
Słabe zarządzanie pamięcią
Jednym z głównych wyzwań dla programistów Androida jest zapewnienie, że ich aplikacja działa dobrze na szerokiej gamie urządzeń. Niektóre aplikacje mogą działać dobrze w HTC One M9, ale nie w Samsung Galaxy S2 po prostu dlatego, że oba urządzenia mają dużą lukę pod względem szybkości procesora i mocy obliczeniowej. Nie oznacza to jednak, że nowsze i szybsze urządzenia gwarantują aplikacje bez awarii. Jeśli uruchomienie aplikacji trwa dłużej niż 5 sekund, zwykle kończy się to zabijaniem przez system operacyjny. Jest to postrzegane przez użytkowników jako awaria.
Lackasaidal debugowanie
Przyspieszone aplikacje mogą nie działać poprawnie podczas produkcji, więc po dodaniu nowych funkcji niektóre części mogą później nie działać zgodnie z przeznaczeniem. W rzeczywistości ogromna część awarii aplikacji jest spowodowana błędem ludzkim. Nieprawidłowe kodowanie i przypisanie odwołania do nieistniejącej zmiennej często skutkuje błędem krytycznym zwanym błędem wskaźnika zerowego. Na przykład, jeśli programista nie jest ostrożny, przewidując rzeczy, które mogą pójść nie tak, może to skutkować zerowym wskaźnikiem. Objawia się to, gdy aplikacja nagle przestała odpowiadać.
Problemy z niezgodnością
W tej chwili programista jest prawie niemożliwy do przetestowania aplikacji na wszystkich aktywnie działających urządzeniach z powodu fragmentacji. Dlatego niektóre aplikacje działają tak dobrze na innych urządzeniach, robiąc zupełnie odwrotnie niż inne. Testowanie jest nie tylko czasochłonne, ale także mało opłacalne, zwłaszcza dla programistów mających problemy.
Problemy ze zgodnością występują również w przypadku nowej dużej aktualizacji systemu operacyjnego. Nie powinieneś być zaskoczony, jeśli niektóre z twoich aplikacji wydają się bardziej niezawodne, gdy miałeś KitKata po zainstalowaniu Lollipopa.
Na tym kończy się nasza krótka dyskusja na temat przyczyn awarii aplikacji na Androida. Mamy nadzieję, że trochę Cię wyjaśniamy, dlaczego ten problem nadal występuje, nawet jeśli smartfony stały się szybsze i mocniejsze. Należy pamiętać, że tworzenie aplikacji to trudny biznes i istnieją miliony, jeśli nie miliardy, możliwych punktów awarii w tej branży. Jeśli napotkasz pozornie wyjątkowy problem z określoną aplikacją, spróbuj pomóc deweloperowi, informując go o tym, przesyłając raport lub kontaktując się z nim bezpośrednio.
Zobacz też Dlaczego Android Lollipop powoduje problemy
Dołącz do nas
Jeśli jesteś jednym z użytkowników, który napotkał problem z Twoim urządzeniem, daj nam znać. Oferujemy bezpłatne rozwiązania problemów związanych z systemem Android, więc jeśli masz problem z urządzeniem z systemem Android, po prostu wypełnij krótki kwestionariusz w ten link i postaramy się opublikować nasze odpowiedzi w następnych postach. Nie możemy zagwarantować szybkiej odpowiedzi, więc jeśli problem zależy od czasu, znajdź inny sposób rozwiązania problemu.
Opisując swój problem, podaj jak najwięcej szczegółów, abyśmy mogli łatwo znaleźć odpowiednie rozwiązanie. Jeśli możesz, dołącz dokładne komunikaty o błędach, aby dać nam pomysł, od czego zacząć. Jeśli wypróbowałeś już kilka kroków rozwiązywania problemów przed wysłaniem do nas e-maila, pamiętaj o ich podaniu, abyśmy mogli pominąć je w naszych odpowiedziach.
TheDroidGuy jest również obecny w sieci społecznościowej, więc możesz chcieć wchodzić w interakcję z naszą społecznością na naszych stronach na Facebooku i Google+.
Otrzymamy prowizję od sprzedaży, jeśli dokonasz zakupu za pomocą naszych linków. Ucz się więcej.