Android中的文件存储和sharedpreference

Android下的常用单位

  • px: 电脑 电视上的分辨率的尺寸单位
  • dp: 与平时所说的dpi是一样的。(设备独立像素
  • sp: scaled pixels(放大像素). 主要用于字体显示best for textsize。
  • 目前市场上所有主流的机型被划分为5种类型(120dpi的基本不再支持)
    DPI:dots per inch,一英寸的像素数量(一英寸有多少个点)
  • dp与px换算公式:

    px=dp * (densityDpi/160).
    dp=px*160/densityDpi
    

* 屏幕的dpi=高和宽的平方和,在开方,再除以屏幕对角线

LogCat的使用

  • 日志的等级划分

    Lpg.v("abc","verbose");
    
    Lpg.v("abc","debug");
    
    Lpg.v("abc","info");
    
    Lpg.v("abc","warn");
    
    Lpg.v("abc","error");
    
    1. 当应用程序直接报错的时候,可以找到error等级的日志,然后查看cause by附近的日志。
    
    2. 当应用运行时不报错,但与预期的效果不一致,可以查看warn日志,比如有的功能缺少了使用权限。
    

测试概念

  • 1) 根据是否知道源代码:

    白盒测试: 知道源代码 根据源代码来进行测试 (程序员 高级测试人员)
    黑盒测试: 不知道源代码 知道产品的功能 根据功能去测试 (大部分小型公司的做法)
    
  • 2) 根据测试的粒度(精细程度):

    方法测试: 写一个测试方法  测试某个类里面的方法
    单元测试:可以测试某一个方法  测试多个方法 (安卓下的单元测试 测试Dao层)
    集成测试: 软件除了有前端 还有后台 如果对软件的某一模块的前端 后台做统一的测试
    系统测试:  对同一产品下的多个软件进行统一测试 多个软件之间存在一定的关系.
    
  • 3)测试的暴力程度:

    压力测试:  pressure test 单一的时间内 进行频繁的测试.
    冒烟测试: smoke test 一段时间内的重复测试  android的monkey test 
    

Android下的单元测试

  • Android JunitTest开发步骤:
     

    1. 写一个业务方法
    2. 创建一个类继承AndroidTestCase
    3. 编写测试代码(记住抛异常)。
        assertEquals(期待的结果,真实的结果)
    4. 配置AndroidMenifest.xml清单文件。
    5. 运行测试代码,对着方法名右键,run as android junit test。
            <!-- 第三步 配置权限 -->
        <uses-library android:name="android.test.runner" />
        <!-- android:targetPackage 需要测试的包 一般是应用的包名 -->
        <instrumentation  android:name="android.test.InstrumentationTestRunner"
        android:targetPackage="com.m520it.test"/>
    6. 根据红色或者绿色判断错对。
    

Android下的数据读写

  • 如何在手机上保存数据:

    1. android下应用程序的路径和javase不同,直接保存在根目录下会报错
    2. 直接保存文件到系统根目录下的异常
         FileNotFoundException
    
    3. 一般保存文件到哪里? 
        * 保存到/data/data/应用的包名/files目录  
            数据选型:一般保存的是重要的信息 用户信息 应用的配置
            手机如何清除应用保存的数据:设置->应用程序->应用详情->clear data (删除cache目录 删除files目录  )
        * 保存到/data/data/应用的包名/cache目录:
            数据选型:  一般可以用来缓存不重要的数据 保存图片
            手机如何清除应用保存的数据:设置->应用程序->应用详情->clear cache (删除cache目录下的文件 )
    

手机存储目录的划分

1:手机内部存储 Environment.getDataDirectory();    -->   /data/..
file目录 cache目录   容量有限,价格比较贵,访问速度快
创建的文件在手机内部存储空间,默认的权限全部私有,只有自己的应用程序可以访问。别的应用程序不可以访问
实验:模拟一个黑客程序访问我们的QQ保存信息


2:手机外部存储 Environment.getExternalStorageDirectory();  -->  /mnt/sdcard/..
sd卡(手机常见插拔的容量卡)   容量大,可以更换,价格便宜。

(外部存储)SD卡的读写操作

    1. 将文件写入到SD卡上 首先要判断SD卡是否存在
  • 2 读写SD卡是敏感的行为 需要用户同意 所以需要使用”使用权限”

    解决方案:找到AndroidMenifest.xml文件,在<application />后面添加使用权限
    <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"/>
    

内部存储操作(访问模式)

* 在创建文件的时候,就加入访问权限

 openFileOutput("文件名",“访问模式”);//openFileInput()读进来
 MODE_WORLD_READABLE        别的应用程序可以读取你的文件
 MODE_WORLD_WRITEABLE   别的应用程序可以写入你的文件
 MODE_WORLD_READABLE + MODE_WORLD_WRITEABLE 别的应用程序可以对你的文件读写

SharePreference的使用

  • 以键值对的形式保存为XMl文件

    获取 SharedPreference sp= getSharedPreference("文件名","访问权限")
    添加值 sp.edit().putString("属性名",属性值)
    提交事务sp.edit().commit();
    获取数据
    sp.getString(属性名,属性值)
    
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值