求知 文章 文库 Lib 视频 iPerson 课程 认证 咨询 工具 讲座 Model Center   模型库  
会员   
 


AI 智能化软件测试方法与实践
5月23-24日 上海+在线



人工智能.机器学习TensorFlow
5月22-23日 北京



图数据库与知识图谱
5月22-23日 北京
 
 
 

Android开发教程
Android 开发环境配置
Android 架构
Android 应用组件
Android Hello World示例
Android 资源组织和访问
Android Activity
Android Service
Android 广播接收器
Android 内容提供者
Android 碎片/片段
Android Intent过滤器
Android UI布局
Android UI控件
Android 事件处理
Android 样式和主题
Android 自定义组件
Android 拖放
Android 通知
Android 基于位置服务
Android 发送电子邮件
Android 发送短信/SMS
Android 拨打电话
发布Android应用
ndroid Alertdialog
Android Animation实例
Android音频捕获
Android音频管理器实例
Android
Android最佳实践
Android Bluetooth实例
Android Camera
Android Clipboard
Android自定义字体
Android数据备份
Android Gestures/手势
Android图片效果
Android图片切换
Android内部存储
Android JetPlayer实例
Android JSON解析器
Android加载Spinner
Android本地化
Android登录实例
Android MediaPlayer
 
 

Android数据备份
1106 次浏览
42次  

Android可以备份应用程序的数据到远程“云”存储,以应用程序的数据和设置的一个还原点。可以只备份应用程序数据。为了访问其他应用程序的数据,需要以root在手机上操作。

为了使数据备份的应用程序,需要注册使用谷歌备份服务应用程序。这已在实施例进行了说明。注册后必须在AndroidManifest.xml?指定其键值

<application
     android:allowBackup="true"
     android:backupAgent="MyBackupPlace">
    <meta-data
        android:name="com.google.android.backup.api_key"
        android:value="AEdPqrEAAAAIErlxFByGgNz2ywBeQb6TsmLpp5Ksh1PW-ZSexg" />
  </application>

Android提供BackUpAgentHelper类来处理数据备份的所有操作。为了使用这个类,必须使用它的扩展类。它的语法如下:

public class MyBackUpPlace extends BackupAgentHelper {    }

要备份的持久性数据无论是哪两种形式。它可以是SharedPrefrences或者它可能是文件。 Android支持两种类型的备份在 SharedPreferencesBackupHelper 和 FileBackupHelper 各自的类。

为了使用SharedPerefernceBackupHelper,需要实例的对象sharedPerefernces文件的名称。它的语法如下:

static final String File_Name_Of_Prefrences = "myPrefrences";
    SharedPreferencesBackupHelper helper = new SharedPreferencesBackupHelper(this, File_Name_Of_Prefrences);

需要做的最后一件事是通过指定的备份键字符串和辅助对象调用addHelper方法。它的语法如下:

addHelper(PREFS_BACKUP_KEY, helper);

addHelper方法将一个辅助自动添加到给定数据集,以代理的配置。

除了这些方法,也有在 BackupAgentHelper 类中定义的其他方法。它们被定义如下:

所述SharedPreferencesBackUpHelper类的方法在下面列出。

例子

下面的例子演示了如何使用BackupAgentHelper类来创建应用程序数据的备份。

为了试验这个例子,需要在实际设备或模拟器运行此。

注册您的Android应用程序使用谷歌备份服务。为了做到这一点, 必须同意服务条款,然后输入应用程序包的名称。它如下所示:

然后点击注册与Android备份服务。这会给定钥匙,以及AndroidManifest代码进行复制刚才的键。它如下所示:

复制的键之后,需要写入到AndroidManifest.xml文件。其代码如下:

<?xml version="1.0" encoding="utf-8"?>
    <manifest xmlns:android="http://schemas.android.com/apk/res/android"
     package="com.yiibai.backup"
     android:versionCode="1"
     android:versionName="1.0" >
       <uses-sdk
        android:minSdkVersion="8"
        android:targetSdkVersion="17" />
       <application
        android:allowBackup="true"
        android:icon="@drawable/ic_launcher"
        android:label="@string/app_name"
        android:backupAgent="MyBackUpPlace"
        android:theme="@style/AppTheme" >
        <activity
           android:name="com.yiibai.backup.MainActivity"
           android:label="@string/app_name" >
           <intent-filter>
              <action android:name="android.intent.action.MAIN" />
                <category android:name="android.intent.category.LAUNCHER" />
           </intent-filter>
        </activity>
        <meta-data
            android:name="com.google.android.backup.api_key"
            android:value="AEdPqrEAAAAIErlxFByGgNz2ywBeQb6TsmLpp5Ksh1PW-ZSexg" />
       </application>
    </manifest>

这里是BackUpAgentHelper类的代码。在backupAgent标签下的应用程序在AndroidManifest.xml中指定的类的名称应该是相同的

package com.example.backup;
    import android.app.backup.BackupAgentHelper;
    import android.app.backup.SharedPreferencesBackupHelper;
    public class MyBackUpPlace extends BackupAgentHelper { 
        static final String File_Name_Of_Prefrences = "myPrefrences";
        static final String PREFS_BACKUP_KEY = "backup";
       @Override
       public void onCreate() {
          SharedPreferencesBackupHelper helper = new SharedPreferencesBackupHelper(this,
          File_Name_Of_Prefrences);
          addHelper(PREFS_BACKUP_KEY, helper);
  }
}

测试BackupAgent

实现备份代理之后,就可以测试备份和恢复功能如以下步骤,使用BMGR。

安装应用程序在一个合适的ANDROID系统映像。

如果使用模拟器,创建和使用AVD采用Android2.2(API等级8级)。

如果使用的设备,设备必须运行Android 2.2或更高版本,并已Google Play内置

保证数据备份是启用

如果使用模拟器,启用备份SDK工具/路径下面的命令:

adb shell bmgr enable true

如果使用的设备,打开系统设置,选择隐私,然后启用备份数据,并自动恢复。

执行备份

出于测试目的,也可以用下面的命令BMGR一个请求:

adb shell bmgr backup your.package.name

通过键入以下命令启动备份操作

adb shell bmgr run

这迫使备份管理器来执行那些在队列中的所有备份请求。

卸载并重新安装应用

卸载使用以下命令应用程序:

adb uninstall your.package.name

然后重新安装应用程序和验证结果


您可以捐助,支持我们的公益事业。

1元 10元 50元





认证码: 验证码,看不清楚?请点击刷新验证码 必填



1106 次浏览
42次
 捐助