Anledningar till att Android-appar kraschar

Någonsin undrar varför appar fryser, slutar svara eller helt enkelt kraschar? Svaret är inte så enkelt.

När smarta enheter översvämmar vår värld under de senaste åren har vi vant oss vid att använda och ofta lita på några appar för att gå igenom vårt dagliga liv. Med överflöd av dessa appar kommer frågan om tillförlitlighet. Det är inte ovanligt i dag att uppleva appkrasch då och då. Vissa människor kan uppleva detta problem mycket medan andra bara kan ha det vid få tillfällen varje vecka. Faktum kvarstår dock: appar kraschar! Men varför?

Nedan följer några av de vanligaste orsakerna till att appar i våra prylar plötsligt fryser till döds under oförutsedda tider.

Ineffektiv klientoptimering

Appar med gränssnittsdesignfel som leder till dålig resurshantering tenderar att krascha. Om en utvecklare inte är intresserad av kapaciteten hos en enhet som appen är avsedd att köra på, kan den appen bli en resurshog och en konstant källa till frustration för användare. Det finns etablerade tekniker för att minimera hur en app hanterar resurser men om en utvecklare klipper hörn eller misslyckas med att implementera dem går det inte alltid obemärkt.

Användning av bildkomprimeringsalgoritmer är till exempel ett måste för att se till att filstorleken på foton inte är för stor. En bra utvecklare måste ta hänsyn till att inte alla ägare av smarta enheter har brinnande internethastigheter hela tiden. Eftersom många appar idag regelbundet måste upprätta en anslutning till en fjärrserver för att fungera, ska utvecklare överväga förhållandet mellan händelser som händer på skärmen och enhetens verkliga funktioner. En felberäkning i denna aspekt kan påverka hur appen beter sig när den släppts.

Användning av olika nätverkstyper

Har du upplevt att en app kraschade efter att du har ändrat din nätverksanslutning till antingen mobildata eller Wi-Fi? Även om de flesta flaggskeppstelefoner som Samsungs Galaxy-serie har en inbyggd automatisk nätverksomkopplingsfunktion för att sömlöst överföra anslutningsomkopplaren och minimera dataförlust, kan vissa appar fortfarande drabbas av stabilitetsproblem för det mesta. Det här problemet har varit med oss ​​i några år nu och svaret på det ligger på axlarna hos både utvecklare och Google, tillverkaren av Android. Ingen verkar dock ha hittat en mer effektiv lösning.

För att förhindra att en app kraschar, se till att stänga av den först innan du byter till en annan nätverkstyp.

Bandbreddbegränsningar

En annan anledning till att en app inte laddar, fryser och så småningom dör är när den får begränsad till ingen bandbredd. En opålitlig anslutning leder ofta till skadad cache eftersom appen kan hämta dålig data under processen. Vissa appar kan fungera bra hemma eftersom man förmodligen använder den mer stabila WI-Fi-anslutningen men när du väl har kommit på vägen och bytt till mobildata är det när verkliga problem börjar. Utvecklare bör se upp för denna möjlighet men detta är ofta en av de vanligaste aspekterna i att bygga appar.

Om du märkte att en viss app tenderar att agera långsamt eller krascha när du använder din prickiga mobilanslutning, reservera din skylt till utvecklaren. En bra app ska fungera pålitligt med eller utan stabil anslutning.

Dålig minnehantering

En av Android-utvecklarnas huvudutmaningar är att se till att deras app fungerar bra på en mängd olika enheter. Vissa appar kan köra bra i en HTC One M9 men inte i Samsung Galaxy S2 helt enkelt för att båda enheterna har ett stort gap när det gäller CPU-hastighet och processorkraft. Det betyder dock inte att nya och snabbare enheter garanterar kraschfria appar. Om en app tar mer än 5 sekunder att starta, hamnar den vanligtvis av OS. Detta uppfattas av användare som en krasch.

Lackasaidal felsökning

Rusade appar kan sakna korrekt felsökning under produktion så när nya funktioner läggs till kanske vissa delar inte fungerar som avsett senare. Egentligen orsakas en enorm del i appkrasch av mänskliga misstag. Felaktig kodning och tilldelning av en hänvisning till en icke-existerande variabel resulterar ofta i ett dödligt fel som kallas nollpekaren. Om till exempel en utvecklare inte är försiktig när man förutser saker som kan gå fel kan det leda till en nollpekare. Detta manifesteras när en app plötsligt slutade svara.

Inkompatibilitetsproblem

Just nu är det nästan omöjligt för en utvecklare att testa en app på alla aktiva enheter som körs på grund av fragmentering. Det är därför som vissa appar fungerar så bra på andra enheter medan de gör motsatsen till vissa. Testning är inte bara tidskrävande utan är också inte mycket kostnadseffektivt, särskilt för utvecklare som kämpar.

Problem med kompatibilitet händer också när det finns en ny större operativsystemuppdatering. Du bör inte bli förvånad om några av dina appar verkar mer pålitliga när du hade KitKat efter installationen av Lollipop.

Då slutar vår korta diskussion om orsakerna till att Android-appar kraschar. Vi hoppas kunna upplysa dig varför detta problem fortfarande händer även om smartphones har blivit snabbare och kraftfullare. Tänk på att appbyggnad är ett knepigt företag och att det finns miljoner, om inte miljarder, möjliga misslyckanden i den här handeln. Om du stöter på ett till synes unikt problem med en viss app kan du försöka hjälpa utvecklaren genom att låta dem veta om det antingen genom att skicka in en rapport eller genom att kontakta dem direkt.

Se också varför Android Lollipop orsakar problem


Om du är en av de användare som stöter på ett problem med din enhet, låt oss veta det. Vi erbjuder lösningar för Android-relaterade problem gratis så om du har problem med din Android-enhet fyller du bara i det korta frågeformuläret i den här länken så försöker vi publicera våra svar i nästa inlägg. Vi kan inte garantera ett snabbt svar, så om ditt problem är tidskänsligt, vänligen hitta ett annat sätt att lösa ditt problem.

När du beskriver ditt problem ska du vara så detaljerad som möjligt så att vi enkelt kan hitta en relevant lösning. Om du kan, vänligen inkludera de exakta felmeddelandena du får för att ge oss en idé var vi ska börja. Om du redan har provat några felsökningssteg innan du skickar ett e-postmeddelande till oss, se till att du nämner dem så att vi kan hoppa över dem i våra svar.

GRUNTLE.ORG har även närvaro på socialt nätverk så du kanske vill interagera med vår community på våra Facebook- och Google+ sidor.