Forhindre, at lærredapp genstarter på Power Apps-mobilappen
Når du kører en lærredapp i Power Apps-mobilappen, kan den blive genstartet af følgende årsager:
- Appen bruger for meget hukommelse i alt.
- Appen bruger for meget hukommelse eller databehandling på én gang.
- Appen flyttes til baggrunden – enten når din specifikke app bruger et indbygget kontrolelement (f.eks. Tilføj billede eller Stregkodescanner) eller Power Apps-mobilappen sættes i baggrunden af brugeren.
Disse begrænsninger af hukommelse og databehandling, som især er streng, når Power Apps-mobilappen kører i baggrunden, styres af operativsystemet (Android eller iOS). Hvis appen bruger flere ressourcer, end der er tilgængelige på din enhed, nulstilles appen. Det svarer til, når du besøger en stor kompleks webside, og webbrowseren afbryder siden, hvis den forbruger for meget strøm.
På Android-enheder kan genstart af denne app ligne et nedbrud, fordi appen er helt lukket, og brugeren bliver ført til enhedens startskærmbillede.
Brug denne artikel til at lære at undgå genstart af lærredappen på Power Apps Mobile.
Forebyggelsestip for slutbrugere
Mens de største forbedringer normalt foretages af appudviklere, er her nogle tip, som slutbrugere kan bruge til at reducere forekomsten af appgenstart:
- I Power Apps-mobilappen skal du vælge Ryd cache på siden med brugerprofil for at fjerne gemte data. Bemærk, at dette kun skal gøres, når slutbrugeren har data, da rydning af cachen vil fjerne eventuelle SaveData- eller appcacher.
- På Android-enheder skal du sikre, at Power Apps-mobilappen prioriteres. Se manualen til enheden for at få appen til at køre gennem indstillingerne som optimering af batteri og appens dvaletilstand.
- Luk eventuelle kørende apps foruden Power Apps-mobilappen, og fjern eventuelle uønskede data fra enheden, f.eks. ubrugte apps eller billeder.
- Selvom det er besværligt, kan du overveje at bruge appen langsommere. Hold en lille pause mellem skærmnavigationer eller efter at have taget billeder eller gemt eller indlæst data.
Forebyggelsestip for appudviklere
De største forbedringer af hukommelsen for at reducere antallet af appgenstarter kan foretages af appudviklere. Når du opretter en app, skal du huske at optimere appen til at køre på den laveste specificerede enhed, som dine slutbrugere anvender, og følge bedste praksis for ressourceforbrug.
Bemærk
Da appgenstarter skyldes, at operativsystemet begrænser den mængde hukommelse og databehandling, en app kan udføre, kan det kræve en kombination af de løsninger, der er beskrevet nedenfor, at minimere genstart af appen. Jo mere hukommelse og databehandling, der kan reduceres, både samlet og på én gang, jo mindre sandsynligt er det, at en app genstartes.
Tip
Du kan knytte en mobilappsession til Overvågning for at se, hvor din app udfører tung databehandling eller hukommelseskrævende handlinger. Overvågning er et værktøj, der giver skaberne et dybt billede af, hvad en app gør, og hvordan den gør det, ved at logfælde alle nøgleaktiviteter, der indtræffer i appen, mens den kører.
Problem | Hovedårsagen | Afhjælpning |
---|---|---|
Appen genstartes, når der indlæses et bestemt skærmbillede. | Hvis et bestemt skærmbillede kører for mange formler på én gang, kan appen have for megen databehandling og genstartes af operativsystemet. | Begræns antallet af kontrolelementer på en skærm og antallet af formler, der køres, når skærmen indlæses, hvilket kan kræve, at skærmbilleder opdeles. Undgå kontrolafhængighed mellem skærmbilleder. Undgå, at brugeren skal handle i situationer med høj databehandling. Det kan f.eks. være, når et stort galleri med flere filtre og opslag indlæses. Overvej at bruge navngivne formler. Overvej at bruge appindstillingen Forsinket indlæsning. |
Appen genstartes efter flere navigationer på skærmen. | Der opstår hukommelseshuller på skærmene, hvilket resulterer i, at brugen af hukommelsen opbygges, mens brugeren navigerer rundt i appen. | Slå appindstillingen Behold de senest besøgte skærme i hukommelsen til. Det øger det samlede hukommelsesforbrug på kort sig, mens skærmen bevares i hukommelsen, men på tværs af flere skærmnavigationer forhindrer det hukommelseshuller. |
Appen genstartes, når du udfører SaveData/LoadData eller bruger dataforbindelser. | Både SaveData og dataforbindelser øger den samlede hukommelse, der bruges af appen. SaveData er også en behandlingskrævende operation. Indlæsning af store mængder data i appen og lagring af dem til offlinebrug (især medieindhold og filer), kan det medføre, at appen kommer over den tildelte hukommelse, hvilket medfører, at operativsystemet genstarter appen. | Optimer mængden af data, der indlæses i appen via dataforbindelser, og som gemmes via SaveData. Reducer antallet af SaveData-kald, hvor det er muligt. Hvis du aktiverer appindstillingen Eksplicit kolonnevalg og deaktiverer appindstillingen Postomfang en-til-mange- og mange-til-mange-relationer, kan det også reducere antallet af data, der bliver hentet ind i appen. |
App genstartes, når du bruger Kamera-kontrolelementet. | Kamera-kontrolelementet gemmer det hentede billede i hukommelsen. Dette kan øge brugen af hukommelsen i appen, især hvis det hentede billede gemmes i variabler eller SaveData med egenskaben OnStream . | Gem ikke andre billeder end det senest hentede. Brug Foto i stedet for Stream til kun at tage billeder, når brugeren trykker på kameraet. Hvis du skal bruge Stream, skal du angive egenskaben StreamRate så højt som muligt for at reducere antallet af opdateringer. |
App genstartes, når du bruger kontrolelementet Tilføj billede. | Kontrolelementet Tilføj billede gemmer det valgte medieindhold i hukommelsen. På grund af medieindholdets størrelse kan dette resultere i et betydeligt hukommelsesforbrug. | Overvej at ændre, hvor medieindholdet registreres. Overvej at slå egenskaben UseMobileCamera fra, så brugerne kun kan vælge medier fra galleri/fotobibliotek. Overvej kun at bruge attachment-kontrolelementet (som en del af en formular) til at vælge filer i stedet for at registrere dem med kameraet. Overvej at skifte til Kamera-kontrolelementet. |
Appen genstartes, når du bruger indbyggede kontrolelementer som Tilføj billede, Stregkodescanner/-læser, Vis i MR, Målekamera og andre. | Indbyggede kontrolelementer kan placere appen i baggrunden, hvor operativsystemet har strengere begrænsninger på hukommelsen, før appen genstartes. | Kontrollér, at alle hukommelses- og databehandlingskrævende handlinger er fuldført, før du bruger disse kontrolelementer. Du kan f.eks. deaktivere kontrolelementet Tilføj billede, indtil alle SaveData-handlinger er fuldført. Overvej at skifte til et andet kontrolelement, f.eks. Kamera i stedet for Tilføj billede. |
Appen genstarter for et undersæt af enheder. | Enheder har forskellige mængder ledig hukommelse og tilgængelig databehandling. Ældre enheder er f.eks. mere udsat for, at appen genstartes, på grund af deres lavere tilgængelige databehandling. Hvis andre apps kører, kan det også reducere mængden af tilgængelig databehandling. På samme måde kan andre installerede apps og mange billeder/medier, der gemmes på enheden, optage hukommelse og reducere den mængde, der er tilgængelig for appen. |
Henvis brugerne til de tip, der er anført ovenfor, i afsnittet Forebyggelsestip for slutbrugere. Overvej at investere i enheder, der opfylder appens ydeevnebehov. |
Appen genstarter fortsat. | Forbrug af hukommelse påvirkes af, hvordan lærredappen oprettes. Sørg for, at din app følger bedste praksis, for at sikre ydeevne, reducere brugen af hukommelse og databehandling. | Optimer din app ved at følge bedste praksis nedenfor. |
Bedste praksis for opbygning af velfungerende apps
- Oprette store og komplekse apps
- Almindelige problemer med og løsninger til ydeevne i lærredapp
- Tip og bedste praksis til forbedring af ydeevnen for lærredapps
- Standarder og retningslinjer for kodning af Power Apps-lærredapps
- Hvidbog om Standarder og retningslinjer for kodning af Power Apps-lærredapps (Sørg for at gennemgå afsnittet med titlen Optimering for ydeevne).