Android Data Backup Tutorial

Android lar deg sikkerhetskopiere din søknad data til eksterne "cloud" lagring, for å gi et gjenopprettingspunkt for applikasjonsdata og innstillinger. Du kan bare sikkerhetskopiere applikasjonsdata. For å få tilgang til andre applikasjoner data, må du heie telefonen.

For å gjøre en data backup-program, må du registrere din søknad med google backup-tjeneste. Dette er blitt forklart i eksempelet. Etter registrering, må du angi nøkkelen i AndroidManifest.xml
< søknad android: allowBackup = "true" android: Backup = "MyBackupPlace" > < meta-data android: name = "com.google.android.backup.api_key" android: value = "AEdPqrEAAAAIErlxFByGgNz2ywBeQb6TsmLpp5Ksh1PW-ZSexg" /> < /søknad >

Android gir BackUpAgentHelper
klasse å håndtere alle operasjoner av data backup. For å kunne bruke denne klassen, må du utvide klassen med det. Syntaksen er gitt nedenfor:
public class MyBackUpPlace strekker BackupAgentHelper {}

Den vedvarende data som du ønsker å ta backup er i en av de to formene. Enten kan det være SharedPrefrences eller det kan være fil. Android støtter begge typer backup i de respektive klasser av SharedPreferencesBackupHelper Hotell og FileBackupHelper
.

For å bruke SharedPerefernceBackupHelper
, må du på å bruke sin objekt med navnet på din sharedPerefernces File. Syntaksen er gitt nedenfor −
statiske endelige String File_Name_Of_Prefrences = "myPrefrences"; SharedPreferencesBackupHelper helper = new SharedPreferencesBackupHelper (dette, File_Name_Of_Prefrences);

Det siste du trenger å gjøre er å ringe addHelper metoden ved å angi sikkerhetskopinøkkelen streng, og hjelperen objektet. Syntaksen er gitt nedenfor −
addHelper (PREFS_BACKUP_KEY, hjelper);

addHelper metoden vil automatisk legge til en hjelper til en gitt data undergruppe til agenten konfigurasjon

Bortsett fra disse metodene, der. finnes andre metoder som er definert i BackupAgentHelper klassen. De er definert under −
Sr.NoMethod & description1 onBackup (ParcelFileDescriptor oldState, BackupDataOutput data, ParcelFileDescriptor newstate)

Kjør sikkerhetskopieringen på hver av de konfigurerte handlers
2 onRestore (BackupDataInput data, int appVersionCode, ParcelFileDescriptor newstate)

Kjør gjenopprettingen på hver av de konfigurerte handlers

Metodene for SharedPreferencesBackUpHelper klassen er listet nedenfor
Sr.NoMethod &.; description1 performBackup (ParcelFileDescriptor oldState, BackupDataOutput data, ParcelFileDescriptor newstate)

Sikkerhetskopierer konfigurerte SharedPreferences grupper
2 restoreEntity (BackupDataInputStream data)

Gjenoppretter en enhet fra gjenopprette datastrømmen til sin rette delt innstillingsfil butikk

Eksempel

Følgende eksempel viser bruken av BackupAgentHelper klasse for å lage backup av dine applikasjonsdata.

For å eksperimentere med dette eksempel, må du kjøre dette på en faktisk enhet eller i en emulator.
StepsDescription1You vil bruke Android studio for å lage en Android-applikasjon, og gi det et navn som Backup under en pakke com.example.backup. Mens du oppretter dette prosjektet, må du Target SDK og kompilere med på den nyeste versjonen av Android SDK til å bruke høyere nivåer av APIs.2Register søknaden din med Google backup service.3Modify den AndroidManifest å legge respektive nødvendig nøkkel og andre components4Create backup middel klasse med Navnet du oppgir ved AndroidManifest.XML5Run programmet og kontrollere resultatene

Registrer deg android søknad med google backup-tjeneste. For å gjøre det, gå til denne linken. Du må godta vilkårene for tjenesten, og skriv deretter inn navnet på programmet pakken. Det er vist nedenfor −

Deretter klikker du på Register med android backup-tjeneste. Det vil gi deg din nøkkel, sammen med din AndroidManifest koden for å kopiere. Bare kopier nøkkelen. Det er vist nedenfor −

Når du kopierer nøkkelen, må du skrive det i din AndroidManifest.xml fil. ? Sin kode er gitt nedenfor −
< xml version = "1.0" encoding = "utf-8" > < manifest xmlns:? Android = "http://schemas.android.com/apk/res /android "pakken =" com.example.backup "android: version =" 1 "android: versjon =" 1.0 "> < bruker-SDK android: minSdkVersion = "8" android: targetSdkVersion = "17" /> < søknad android: allowBackup = "true" android: icon = "@ teikne /ic_launcher" android: label = "@ streng /APP_NAME" android: Backup = "MyBackUpPlace" android: tema = "@ stil /AppTheme" > < aktivitet android: name = "com.example.backup.MainActivity" android: label = "@ streng /APP_NAME" > < intent-filter > < handling android: name = "android.intent.action.MAIN" /> < kategori android: name = "android.intent.category.LAUNCHER" /> < /intent-filter > < /aktivitets > < meta-data android: name = "com.google.android.backup.api_key" android: value = "AEdPqrEAAAAIErlxFByGgNz2ywBeQb6TsmLpp5Ksh1PW-ZSexg" /> < /søknad > < /manifest >

Her er koden for BackUpAgentHelper klasse. Navnet på klassen bør være den samme som du har angitt i Backup kode under programmet i AndroidManifest.xml
pakken com.example.backup, import android.app.backup.BackupAgentHelper, import android.app.backup.SharedPreferencesBackupHelper; public class MyBackUpPlace strekker BackupAgentHelper {statiske endelige String File_Name_Of_Prefrences = "myPrefrences"; statiske endelige String PREFS_BACKUP_KEY = "backup"; Override Public void onCreate () {SharedPreferencesBackupHelper helper = new SharedPreferencesBackupHelper (dette, File_Name_Of_Prefrences); addHelper (PREFS_BACKUP_KEY, hjelper); }}
Test din Backup

Når du har gjennomført din backup agent, kan du teste backup og gjenopprette funksjonaliteten med følgende prosedyre, ved hjelp bmgr.

Installer programmet på en egnet Android system image.

Hvis du bruker emulator, opprette og bruke en AVD med Android 2.2 (API Level 8).

Hvis du bruker en enhet, må enheten kjører Android 2.2 eller høyere og har Google Play bygget i

Sikre data backup er aktivert

Hvis du bruker emulator, kan du aktivere backup med følgende kommando fra SDK verktøy /sti −.
ADB shell bmgr aktiver sant

Hvis du bruker en enhet, åpner systeminnstillinger, velger personvern, deretter aktivere Sikkerhetskopier mine data og automatisk gjenoppretting.

Utføre sikkerhetskopiering

For testformål, kan du også gjøre en forespørsel med følgende bmgr kommando −.
ADB shell bmgr backup your.package.name

Starte en sikkerhetskopiering ved å skrive følgende kommando
ADB shell bmgr kjøre

Dette tvinger Backup Manager . å utføre alle forespørsler om sikkerhetskopiering som er i køen

Avinstaller og installere applikasjonen

Avinstaller programmet med følgende kommando −
ADB uninstall your.package.name

deretter installere programmet og kontrollere resultatene. Anmeldelser