Android jossa on sovellustiedot tallennetaan

Lisäämällä Tallennetut pelit Android Peli

Tässä oppaassa kerrotaan, kuinka käyttää Saved Games API vuonna Android-sovellus. API voi löytyä com.google.android.gms.games.snapshot paketti.

Ennen kuin aloitat

Jos et ole jo tehnyt niin, saatat olla hyödyllistä tarkastella Saved Games peli käsitteitä.

Android jossa on sovellustiedot tallennetaan

Ennen kuin aloitat koodin Saved Games API:

Kun pelaaja on kirjautunut ja GoogleApiClient on kytkettynä, peli voi alkaa käyttää Tallennetut pelit API.

Tuotteet Tallennetut pelit

Voit integroida Saved Games API minne peli tarjoaa pelaajille mahdollisuus tallentaa tai palauttaa niiden edistymistä. Peli saattaa näyttää tällaisen vaihtoehdon nimetyissä save / palautuspisteet tai pelaajat voivat tallentaa tai palauttaa edistymistä milloin tahansa.

Kun pelaaja valita tallentaa / palauttaa vaihtoehto pelin, peli pitäisi tuoda esille näytön, joka kehottaa pelaajat syöttää tietoja uuden tallennetun pelin tai valita olemassa olevan tallennetun pelin palauttamiseksi. Yksinkertaistaa kehitystä, Tallennetut pelit API tarjoaa oletuksena Saved Games valinta käyttöliittymän (UI), että voit käyttää out-of-the-box. Tallennetut pelit valinta käyttöliittymän avulla pelaajat voivat luoda uuden tallennetun pelin, tarkastella olemassa olevista tallennettuja pelejä, ja lataa edellinen pelitallennuksia.

Jos haluat tuoda oletuksena Tallennetut pelit UI:

  1. Soita getSelectSnapshotIntent () saada Intent käynnistämiselle oletuksena Tallennetut pelit valinnan UI. Menetelmässä puhelun, voit asettaa boolean arvoja allowAddButton ja allowDelete parametreja ilmaisemaan jos peli haluaa UI antaa painikkeita luoda uuden tallennetun pelin tai poistaa olemassa olevia tallennettuja pelejä.
  2. Soita startActivityForResult () ja siirtää kyseisessä Intent. Jos puhelu onnistuu, peli näyttää Tallennetut Pelivalikoima UI yhdessä vaihtoehdot määritelty.

Seuraavassa katkelmassa näyttää kuinka esiin oletus Tallennetut pelit valinta UI:

Jos pelaaja valitsee luoda uuden tallennetun pelin tai lataa olemassa olevan tallennetun pelin, UI lähettää pyynnön Google Play pelejä palveluihin. Jos pyyntö on onnistunut, Google Play pelejä palveluiden palauttaa tilannekuva objekti edustaa tallennettu peli pelin kautta onActivityResult () soittopyyntö. Peli voidaan ohittaa soittopyynnön tarkistaa, onko virheitä tapahtunut pyynnöstä.

Seuraava koodinpätkä on esimerkki toteuttamiseen onActivityResult ():

Kirjoittaminen Tallennetut pelit

Tallentaa sisältöä tallennettua peliä, pelin on hankittava viittaus yksittäiskuvaan esine soita auki () päästä käsiksi muuttaa sen sisältöä. Voit tallentaa pelaajan tiedot tavujen soittamalla writeBytes ().

Kun kaikki muutokset on tehty tallennetun pelin sisältöä tai metadataa, soita commitAndClose () lähettää muutokset Googlen palvelimille. Menetelmässä puhelun, pelin voi liittää lisätietoja kertoa Google Play pelejä palveluiden miten esittää tämä tallennetun pelin pelaajille. Tämä tieto on edustettuna SnapshotMetaDataChange esine, jonka pelin luo käyttäen SnapshotMetadataChange.Builder.

Seuraavassa katkelmassa näyttää kuinka pelin voisi toimittaa muutoksia tallennettua peliä:

Jos pelaajan laite ei ole kytketty verkkoon, kun sovellus kutsuu commitAndClose (). Google Play pelejä palveluiden tallentaa tallennetun pelin tietoja paikallisesti laitteella. Kun laite uudelleen yhteyden, Google Play pelejä palveluiden synkronoi paikallisesti välimuistissa tallennettu peli muutoksia Googlen palvelimille.

Ladataan Tallennetut pelit

Voit hakea kaikki tallennetut pelit nykyisin kirjautuneiden soitin, soittaa kuorma () menetelmällä.

Peli voi myös noutaa tietyn tallennetun pelin kautta pelaajan UI valikoima, kuten on kuvattu Näytetään Tallennetut pelit. Palautetut tallennettu peli on edustettuna tilannekuva. joka pelin voi sitten avata lukea sen sisällön ja metadatan.

Parantaa pelin suorituskykyä, sinun kannattaa suorittaa tallennettu peli lastaus kuin tausta toimintaa pikemminkin kuin punainen lanka. Yksi tapa tehdä tämä on käyttää AsyncTask ja ohittaa sen doInBackground () menetelmä avaa tallennetun pelin.

Seuraavassa katkelmassa näyttää, miten toteuttaa AsyncTask ladata tiettyyn tallennettu peli:

Käsittely tallennettu peli konfliktit

Käytettäessä Tallennetut pelit palvelun pelin, on mahdollista, että useita laitteita suorittamaan lukee ja kirjoittaa samassa tallennetun pelin. Siinä tapauksessa, että laite väliaikaisesti verkkoyhteys katkeaa ja myöhemmin reconnects, tämä saattaa aiheuttaa tietoristiriidoista jolloin tallennettu peli tallennetaan pelaajan paikallinen laite on out-of-sync kauko version tallennettu Googlen palvelimille. Tallennetut Games palvelut tarjoaa konfliktien ratkaisuun mekanismi, joka esittelee molempien ristiriitaisia ​​tallennettuja pelejä read-aikaa ja voit toteuttaa resoluutio strategia, joka on sopiva peli.

Kun Google Play pelejä palveluiden havaitsee tietojen konflikti, se ilmoittaa pelin aikana tallennettu peli avoin toiminta palauttamalla tilakoodi STATUS_SNAPSHOT_CONFLICT. Tässä tapauksessa OpenSnapshotResult tarjoaa kaksi versiota tallennettu peli:

  • Eniten-ajan voimassa tunnetaan Google Play pelejä palveluiden olevan tarkkoja; ja
  • Muunneltu versio havaitaan yhdellä pelaajan laitteista, joka sisältää ristiriitaisia ​​sisältöä tai metadataa. Tämä ei välttämättä ole sama kuin versio, jota yritit tallentaa.

Peli on päätettävä, miten konfliktin ratkaisemiseksi poimimalla yksi edellyttäen versioita tai yhdistämällä tietoja näiden kahden tallennetun pelin versiota.

Havaita ja korjata tallennetun pelin konflikteja seuraavasti:

  1. Soita Snapshots.open (). Jos STATUS_SNAPSHOT_CONFLICT palautetaan, olet konfliktin ratkaisemiseksi.
  2. Soita OpenSnapshotResult.getConflictId () noutaa konfliktin tunnus, joka yksilöi havaitut konflikti. Peli tarvitsee tätä arvoa lähettää konfliktinratkaisua pyynnön myöhemmin.
  3. Soita getConflictingSnapshot () saada muokatun version.
  4. Soita getSnapshot () saada palvelimen version.
  5. Ratkaista tallennettu peli konflikti, valitse versio, jonka haluat tallentaa palvelimelle kuin lopullinen versio, ja siirtää sen Snapshots.resolveConflict () menetelmällä.

Seuraavat pätkä näyttää ja esimerkki siitä, miten pelin saattavat käsitellä tallennettua peliä konflikti valitsemalla uusin tallennettu peli kuin lopullinen versio säästää:

Muokkaaminen tallennettu peli konfliktien ratkaisemisessa

Jos haluat yhdistää tietoja kahdesta Tallennetut pelit tai muokata olemassa olevaa Snapshot pelastaa palvelimelle kuin ratkaistu lopullinen versio, toimi seuraavasti:

  1. Valitse Snapshot objektin getConflictingSnapshot () tai getSnapshot () kuin your base.
  2. Seuraavaksi soita Snapshots.resolveConflict () ja kulkea Snapshot että valitsit edellisessä vaiheessa. Tämä tallentaa Snapshot palvelimelle.
  3. Soita auki () hakea Snapshot että juuri tallennettu edellisessä vaiheessa. Nyt tehdä muutoksia palasi tilannekuva. soita SnapshotsmitAndClose () lähettää muunnetun tallentaa pelin palvelimelle.

Siirtyminen AppState API

Jos peli käyttää pilvitallennus- (AppState) API tallentaa soittimen tietoja Google Play pelejä palvelut, kannattaa siirtyä koodisi käyttämään Saved Games API mahdollisimman pian. Seuraavassa taulukossa on lueteltu koodia muutosten että sinun pitäisi olla tietoinen siirrettäessä pelin:

Related viestiä

  • Mistä Play Store tallentaa sovellukset Olen tällä hetkellä lataamista? Kaupassa sovellus käyttää tavallisesti / data / local tilapäiseen tallennukseen .apk tiedostoja ladatessa, sitten asentaa niitä sieltä, ...

  • Miten asettaa Custom Ilmoitussoittoääni Android Android Devices kaulitaan laajalti koko maailmassa. Vuonna Android-laitteisiin ei ole helppo vaihtoehto asettaa oman tai oman ilmoituksen soittoäänen ....

  • Mistä hakemus tiedosto todella tallennettu Android-laitteen? Olen kehittänyt Android-sovelluksen avulla Appcelerator Titanium. Tämä sovellus luo tiedoston applicationDataDirectory ja ...

  • Paras eReader Android Reading kirjoja Android käytetään olla aivan kunnossa. Nyt se on mahtavaa. Vaikka on olemassa paljon makeita sovelluksia lukemalla kirjoja puhelimen tai tabletin, Play Books on ...

  • Video: Hands-on uuden Instagram Video Android Ei siksi, että se oli suuri yllätys jälkeen pari raportteja rikkoi uutisia edeltävinä päivinä nykypäivän Facebook tapahtuma, mutta kyllä ​​ne ...


Warning: include_once(/home/admin/web/finnish.mobilesbuzz.com/public_html/ins/aftercontent.txt): failed to open stream: No such file or directory in /home/admin/web/finnish.mobilesbuzz.com/public_html/miss/android-jossa-on-sovellustiedot-tallennetaan.php on line 156

Warning: include_once(): Failed opening '/home/admin/web/finnish.mobilesbuzz.com/public_html/ins/aftercontent.txt' for inclusion (include_path='.:/usr/share/pear:/usr/share/php') in /home/admin/web/finnish.mobilesbuzz.com/public_html/miss/android-jossa-on-sovellustiedot-tallennetaan.php on line 156