Share via


Funkcije SaveData, LoadData in ClearData

Velja za: aplikacije Canvas

Shranite in znova naložite zbirko iz shrambe gostitelja aplikacije.

opomba,

Te funkcije je zdaj mogoče uporabiti pri predvajanju aplikacije v spletnem brskalniku kot poskusne funkcije. Ta funkcija je privzeto onemogočena. Če jo želite omogočiti, odprite Nastavitve>Prihajajoče funkcije>Poskusno>Omogočene funkcije SaveData, LoadData, ClearData v spletnem predvajalniku.« in vklopite stikalo. Če želite poslati povratne informacije o tej poskusni funkciji, pojdite v forum skupnosti Power Apps.

Opis

Funkcija SaveData shrani zbirko za poznejšo uporabo z imenom.

Funkcija LoadData znova naloži zbirko po imenu, s katerim je bila prej shranjena v funkciji SaveData. Te funkcije ne morete uporabiti za nalaganje zbirke iz drugega vira.

Funkcija ClearData izbriše pomnilnik pod določenim imenom ali izbriše ves pomnilnik, povezan z aplikacijo, če ime ni navedeno.

opomba,

  • Ime, ki si ga delijo funkcije SaveData, LoadData in ClearData, je ime ključa in ne datoteke. Ni treba, da je zapleteno, saj so imena enolična za vsako aplikacijo in ni nevarnosti, da bi prišlo do spora zaradi imena. Ime ne sme vsebovati teh znakov: *".?:\<>|/.
  • Možnost SaveData je omejena na 1 MB podatkov za izvajanje Power Apps v Teams in spletnem brskalniku. Omejitev za Power Apps, ki se izvaja v predvajalniku prenosnih naprav, ni določena, spodaj pa so vseeno pojasnjene praktične omejitve.
  • Ne uporabljajte SaveData za shranjevanje občutljivih podatkov v spletu, saj bodo shranjeni v navadnem besedilu.

Uporabite te funkcije in izboljšajte učinkovitost zagona aplikacije, tako da:

  • predpomnite podatke v formuliApp.OnStart pri prvem zagonu.
  • znova naložite lokalni predpomnilnik pri naslednjih zagonih.

Te funkcije lahko uporabite tudi za dodajanje preprostih zmogljivosti v načinu brez povezave v aplikacijo.

Teh funkcij v brskalniku ne morete uporabljati, če:

  • ustvarjate aplikacijo v Power Apps Studio.

Če želite preskusiti svojo aplikacijo, jo zaženite v Power Apps Mobile v telefonu iPhone ali napravi s sistemom Android.

Te funkcije so omejene s količino razpoložljivega pomnilnika, ker delujejo v zbirki znotraj pomnilnika. Razpoložljivi pomnilnik je odvisen od različnih dejavnikov:

  • Naprava in operacijski sistem.
  • Pomnilnik, ki ga uporablja predvajalnik Power Apps.
  • Zapletenost aplikacije z zasloni in kontrolniki.

Preskusite svojo aplikacijo s pričakovanimi scenariji v vrsti naprav, v katerih pričakujete, da se bo aplikacija zagnala pri shranjevanju velikih količin podatkov. Pričakujte, da boste imeli na voljo med 30 in 70 MB pomnilnika.

Te funkcije so odvisne od zbirke, ki je implicitno določena s funkcijo Collect ali ClearCollect. Ni vam treba klicati funkcije Collect ali ClearCollect, da naložite podatke v zbirko in jo tako opredelite. To je pogost primer pri uporabi funkcije LoadData, če ste prej uporabili funkcijo SaveData. Potrebna je le prisotnost teh funkcij v formuli za implicitno določitev strukture zbirke. Če želite več informacij, glejte članek o ustvarjanju in odstranjevanju spremenljivk.

Naloženi podatki bodo priloženi v zbirko. Če želite začeti s prazno zbirko, uporabite funkcijo Clear, preden prikličete funkcijo LoadData.

Varnost podatkov

Pazljivo razmislite o izolaciji in šifriranju podatkov, shranjenih s SaveData in se odločite, ali je primerno za vaše potrebe, zlasti če si naprave deli več uporabnikov.

Podatke, shranjene s SaveData ločijo od drugih Power Apps igralci Power Apps . Podatki se shranjujejo na podlagi ID-ja aplikacije, pri čemer se med njimi samodejno izolira imenski prostor SaveData Power Apps.

Operacijski sistem in brskalnik sta odgovorna za izolacijo podatkov med Power Apps in drugimi aplikacijami v napravi ter s spletnimi mesti. Na primer, operacijski sistem je odgovoren za izolacijo podatkov, shranjenih v Microsoft Outlook od podatkov, shranjenih v Power Apps, in tudi izolacijo teh podatkov s spletnih mest, kot sta Bing.com ali PowerApps.com. Zmožnosti peskovnika aplikacij, vgrajene v operacijski sistem, se uporabljajo za SaveData shrambo, ki običajno ni dostopna ali skrita uporabniku.

Pri uporabi iste aplikacije sta operacijski sistem in brskalnik odgovorna tudi za izolacijo podatkov med različnimi uporabniki na ravni operacijskega sistema. Če si na primer dva različna uporabnika delita računalnik in uporabljata dve različni poverilnici za prijavo v Windows, je operacijski sistem odgovoren za izolacijo podatkov med obema uporabnikoma Windows.

Podatki so lahko ločeni med različnimi Power Apps uporabniki ali pa tudi ne, če je uporabnik operacijskega sistema isti. Vsak Power Apps igralec tega ne obravnava enako. Na primer, ko je prijavljen kot isti uporabnik sistema Windows, se v Power Apps predvajalniku uporabnik odjavi iz Power Apps in prijavi kot drug Power Apps uporabnik. Podatki, shranjeni v aplikaciji pred spremembo Power Apps uporabnika, so lahko dostopni drugemu Power Apps uporabniku znotraj iste aplikacije. Podatki so lahko tudi odstranjeni in prvi Power Apps uporabnik morda ne bo mogel več dostopati do njih. Vedenje se razlikuje med Power Apps igralci.

Operacijski sistem lahko tudi šifrira podatke ali pa uporabite orodje za upravljanje mobilnih naprav, kot je Microsoft Intune. Podatki, shranjeni med predvajanjem aplikacije v spletnem brskalniku, niso šifrirani.

Sintaksa

SaveData( Collection, Name )
LoadData( Collection, Name [, IgnoreNonexistentFile ])

  • Collection – obvezno. Zbirka za shranjevanje ali nalaganje.
  • Name – obvezno. Ime shrambe. Za shranjevanje in nalaganje istega nabora podatkov mora biti ime enako. Imenski prostor ni v skupni rabi z drugimi aplikacijami. Imena ne smejo vsebovati teh znakov: *".?:\<>|/.
  • IgnoreNonexistentFile – izbirno. Logična vrednost, ki označuje, kaj morate storiti, če datoteka še ne obstaja. Uporabite false (privzeto), da vrnete napako, in true, da preprečite napako.

ClearData( [Ime] )

  • Name – izbirno. Ime shrambe, ki je bila predhodno shranjena s funkcijo SaveData. Če Ime ni navedeno, se izbriše vsa shramba, povezana z aplikacijo.

Primeri

Formula Opis Rezultat
SaveData( LocalCache, "MyCache" ) Shranite zbirko LocalCache v uporabnikovo napravo pod imenom »MyCache«, da jo bo funkcija LoadData pozneje lahko pridobila. Podatki se shranijo v gostitelja aplikacije pod imenom »MyCache«.
LoadData( LocalCache, "MyCache" ) Naloži zbirko LocalCache iz uporabnikove naprave pod imenom »MyCache«, ki je bila shranjena s klicem funkcije SaveData. Podatki se naložijo iz gostitelja aplikacije pod imenom »MyCache«.
ClearData( "MyCache" ) Izbriše shrambo pod imenom »MyCache«. Podatki, shranjeni pod tem imenom, ne bodo več na voljo prek LoadData. Podatki se odstranijo iz gostitelja aplikacije pod imenom »MyCache«.
ClearData() Izbrišite celotno shrambo, povezano s to aplikacijo. To ne vpliva na podatke, ki jih shranjujejo druge aplikacije. Vsi podatki so odstranjeni iz gostitelja aplikacije.

Enostavne primer v načinu brez povezave

Spodnji enostaven primer zajame in shrani imena in slike vsakdanjih predmetov v načinu brez povezave. Informacije shrani v lokalni pomnilnik naprave za poznejšo uporabo. To omogoča zapiranje aplikacije ali vnovični zagon naprave brez izgube podatkov.

opomba,

Ta primer uporablja kontrolnik kamere za zajemanje slik. Odkar je funkcija SaveData omejena na 1 MB podatkov pri izvajanju v Teams ali spletnem brskalniku, ta primer ne bo deloval z več kot nekaj slikami. Poleg tega je odvisno tudi od kamere, ali bo deloval že z eno sliko. Uporabite napravo, da predelate ta celoten primer ali odstranite del kontrolnik kamere in slike tega primera, da ga zaženete v Teams ali spletnem brskalniku.

  1. Ustvarite prazno aplikacijo delovnega območja s postavitvijo za tablični računalnik. Za več podrobnosti preberite članek o ustvarjanju aplikacije iz predloge in izberite Postavitev za tablični računalnik pod možnostjo Prazna aplikacija.

  2. Dodajte kontrolnik Text input in kontrolnik Camera ter ju razporedite približno tako, kot je prikazano:

    Na prazen zaslon sta dodana vnos besedila in nadzor kamere.

  3. Dodajte kontrolnik Button.

  4. Dvokliknite kontrolnik »Button« in spremenite besedilo gumba v Dodaj element (ali spremenite lastnost Besedilo).

  5. Nastavite lastnost OnSelect kontrolnika »Button« na to formulo, ki bo dodala element v našo zbirko:

    Collect( MyItems, { Item: TextInput1.Text, Picture: Camera1.Photo } )
    

    Dodan kontrolnik gumba z besedilom »Dodaj element« in naborom lastnosti OnSelect

  6. Dodajte še en kontrolnik Button.

  7. Dvokliknite kontrolnik »Button« in spremenite besedilo kontrolnika v Shrani podatke (ali spremenite lastnost Besedilo).

  8. Nastavite lastnost OnSelect kontrolnika »Button« na to formulo, da shranite našo zbirko v lokalno napravo:

    SaveData( MyItems, "LocalSavedItems" )
    

    Dodan kontrolnik gumba z besedilom »Shrani podatke« in naborom lastnosti OnSelect

    Morda boste želeli preskusiti gumb, saj ne vpliva na nič. Vendar se bo prikazala napaka, saj ustvarjate v spletnem brskalniku. Najprej shranite aplikacijo in jo odprite v napravi, preden sledite spodnjim korakom za preskus te formule:

  9. Dodajte tretji kontrolnik Button.

  10. Dvokliknite kontrolnik »Button« in spremenite besedilo gumba v Naloži podatke (ali spremenite lastnost Besedilo).

  11. Nastavite lastnost OnSelect kontrolnika »Button« na to formulo, da naložite našo zbirko iz lokalne naprave:

    LoadData( MyItems, "LocalSavedItems" )
    

    Dodan kontrolnik gumba z besedilom »Naloži podatke« in naborom lastnosti OnSelect

  12. Dodajte kontrolnik Gallery z navpično postavitvijo, ki vključuje območja za slike in besedilo:

    Izbira sort galerije,

  13. Ko ste pozvani, izberite zbirko MyItems kot vir podatkov za to galerijo. S tem nastavite lastnost Items za kontrolnik Gallery:

    Galerijski izbor vir podatkov.Kontrolnik slike v predlogi galerije bi moral svojo lastnost Image privzeto na ThisItem.Picture in kontrolniki oznake bi morali oboje privzete njihove Besedilne lastnosti na ThisItem.Item. Če po dodajanju elementov v naslednjih korakih v galeriji ne vidite ničesar, preverite te formule.

  14. Kontrolnik postavite desno od ostalih kontrolnikov:

    Galerija je premaknjena na desno stran zaslona.

  15. Shranite aplikacijo. Če ste jo shranili prvič, je ni treba objaviti. V nasprotnem primeru po shranjevanju objavite aplikacijo.

  16. Odprite aplikacijo v napravi, na primer v telefonu ali tabličnem računalniku. Funkcij SaveData in LoadData ni mogoče uporabljati v Studiu ali v spletnem brskalniku. Če aplikacije ne vidite takoj, osvežite seznam aplikacij, saj lahko traja nekaj sekund, da se aplikacija prikaže v vaši napravi. Pomaga tudi, če se izpišete in znova vpišete v račun.

    Aplikacija teče brez dodanih elementov.Ko je aplikacija prenesena, lahko prekinete povezavo z omrežjem in aplikacijo zaženete brez povezave.

  17. Vnesite ime in fotografirajte predmet.

  18. Izberite gumb Dodaj element. Nekajkrat ponovite dodajaje elementa, da naložite svojo zbirko.

    Aplikacija deluje z dodanimi tremi elementi.

  19. Izberite gumb Shrani podatke. S tem boste shranili podatke v svoji zbirki v lokalno napravo.

  20. Zaprite aplikacijo. Vaša zbirka v pomnilniku bo izgubljena, vključno z vsemi imeni in slikami elementov, vendar bodo še vedno v shrambi naprave.

  21. Znova zaženite aplikacijo. Zbirka v pomnilniku bo v galeriji znova prikazana kot prazna.

    Aplikacija se znova izvaja brez dodanih elementov.

  22. Izberite gumb Naloži podatke. Zbirka bo znova izpolnjena s shranjenimi podatki v napravi, elementi pa bodo znova v galeriji. Zbirka je bila prazna, preden je ta gumb poklical funkcijo LoadData; pred nalaganjem podatkov iz shrambe ni bilo treba klicati funkcije Collect ali ClearCollect.

    Aplikacija teče s tremi elementi, obnovljenimi po klicu funkcije LoadData.

  23. Znova izberite gumb Naloži podatke. Shranjeni podatki bodo priloženi na koncu zbirke in v galeriji bo prikazan drsni trak. Če ne želite priložiti podatkov, ampak jih zamenjati, uporabite funkcijo Clear in počistite zbirko, preden pokličete funkcijo LoadData.

    Aplikacija teče s šestimi elementi, obnovljenimi po dvakratnem klicu funkcije LoadData.

Naprednejši primer v načinu brez povezave

Za podroben primer glejte članek o preprostih zmogljivosti v načinu brez povezave.