单元测试与移动存储

发表于:2016-7-04 11:08

字体: | 上一篇 | 下一篇 | 我要投稿

 作者:复写纸    来源:51Testing软件测试网采编

  五、手机外部存储
  所有兼容Android的设备都支持一个可共享的“外部存储(external storage)”,可用来保存文件。这可以是一个可移动的存储设备(比如SD卡)或者一个内部的(不可移动的)存储。保存在外部存储的文件是可全局读写的。
  Sdcard存储的特点(外部存储):
  依赖于Sdcard,使用SDCard存储,需先检测其状态,能够挂载成功
  存在Sdcard的文件是可全局读写的
  写入Sdcard时,需要权限
  关注点:
  Environment.getExternalStorageState() 取得外部存储状态 //环境
  Environment.getExternalStorageDirectory() 取得外部存储根路径 //
  写入外部存储的权限
  android.permission.MOUNT_UNMOUNT_FILESYSTEMS //挂载、卸载文件系统
  android.permission.WRITE_EXTERNAL_STORAGE //写外部存储权限
  android.permission.READ_EXTERNAL_STORAGE //读外部存储的权限
  在android 4.0以后,假如你的外部存储的路径不规范,则需要该权限
  外部存储路径描述
  1.取得外存的公共共享的存储路径
  取目录:Environment.getExternalStoragePublicDirectory(Environment.DIRECTORY_DOWNLOADS);
  /mnt/sdcard/downloads/
  2.在外存中存放应用的私有数据,但是该数据可以全局读写,当应用删除时,该内容会同步删除 :
  取目录:context.getExternalFilesDir(Environment.DIRECTORY_DOWNLOADS)
  目录/mnt/sdcard/android/data/<包名>/files/<类型>/
  3.在外存中存放应用的私有缓存文件 ,当应用删除时,该内容会同步删除
  取目录: context.getExternalCacheDir()
  目录 /mtn/sdcard/android/data/<包名>/cache
  4.取得外存的根路径
  取目录:Environment.getExternalStorageDirectory()
  /mnt/sdcard
  六、SharedPreferences :共享偏好设置存储
  SharedPreferences,是一个非常轻量的数据存储方式,
  以xml的形式存取简单的键值对数据,存放基本的数据。
  数据类型包括(ints,floats,boolean,strings,longs,Set<String>(android 11以后)),
  存放位置:/data/data/<包名>/shared_prefs,存放的是应用私有的数据,
  主要用于软件偏好设置,简单信息存取、数据缓存等
  如何取得SharedPreferences对象
  context.getSharedPreferences(name,Mode)
  返回的是SharedPreferences对象,通过该对象存储简单的键值对数据到该对象关联的xml文件中
  name :文件名,不需要写扩展名,默认是*.xml :有则打开,无则创建
  mode :在android 4.0版本 以后,只支持mode_private
  Activity.getPreferences(name)
  name :默认的名字,以当前的Activity的类名作为文件名
  get values
  SharedPreferences.getString(key,defvalue) ,取字符串类型的数据,假如key不存在,则返回 defvule : null
  SharedPreferences.getInt(key,defvalue) ,取整数类型的数据,假如key不存在,则返回 defvule : 0
  SharedPreferences.getBoolean(key,defvalue) ,取字符串类型的数据,假如key不存在,则返回 defvule : false
  save values
  实现步骤:
  取得编辑器 Editor editor=SharedPreferences.edit()
  editor.putString(key,value)
  editor.putInt(key,value)
  editor.putBoolean(key,value)
  editor.commit();//提交数据,把键值对数据更新到xml文件中
  小案例 :运用SharedPreferences保存用户登录信息
  要求:
  1.账号密码验证成功,则进入另一个Activity:SystemActivity
  2.选中复选框,则用户登录时,把账户及密码信息以SharedPreferences存储xml文件中
  3.应用下次启动,依据存储的复选框状态值,决定是否填充账户与密码信息
  4.对存入SharedPreference的值对信息加密
  des :对称加密 : 加密和解密密钥是相同的 ,把密文还原成原文
  aes 对des加强版
  重点:
  通知
  手机内存存储、手机外部存储
  SharedPrefenrencs
  练习:
  SharedPrefenrencs
  FileStore 项目: 从sdcard读数据
  通知
22/2<12
《2023软件测试行业现状调查报告》独家发布~

关注51Testing

联系我们

快捷面板 站点地图 联系我们 广告服务 关于我们 站长统计 发展历程

法律顾问:上海兰迪律师事务所 项棋律师
版权所有 上海博为峰软件技术股份有限公司 Copyright©51testing.com 2003-2024
投诉及意见反馈:webmaster@51testing.com; 业务联系:service@51testing.com 021-64471599-8017

沪ICP备05003035号

沪公网安备 31010102002173号