开发学院手机开发Android 开发 Asset限制文件大小UNCOMPRESS_DATA_MAX为1MB 阅读

Asset限制文件大小UNCOMPRESS_DATA_MAX为1MB

 2008-07-24 09:14:08 来源:WEB开发网   
核心提示: 在使用Android自带的Res\raw或使用Asset时都需要经过Asset Manager,这将会产生一个比较严重的问题,Asset限制文件大小UNCOMPRESS_DATA_MAX为1MB,在Android模拟器测试时不存在问题,但放到真机G1时会面临多个问题,同时openFileOutput方式读取也是不错的

 在使用Android自带的Res\raw或使用Asset时都需要经过Asset Manager,这将会产生一个比较严重的问题,在Android模拟器测试时不存在问题,但放到真机G1时会面临多个问题,经过查看UNCOMPRESS_DATA_MAX的取值为1048576字节,除以1024不难发现是1MB。也就是说Android手机在处理资源文件时不能大于1mb的体积。由于标准的G1没有Root权限,无法访问data/data/package name下面的文件夹,使用raw或asset存放的文件大小不能超过1048576字节,否则会在logcat下看到获取到Debug类型的信息,tag为asset(pid): Data exceeds UNCOMPRESS_DATA_MAX (2580997 vs 1048576) 可以看到接下产生了一个系统的错误,System.err,会发生java.io.IOException的异常。

目前解决的方法只有将文件放入到sdcard,但这样除了microsd的读取IO效率和耗电量解决不是很好,同时sd卡移除时可能存在问题,解决的方法如果数据量大的化通过sqlite是一种解决方法,同时openFileOutput方式读取也是不错的选择,看来android操作系统中最安全控制的严格,但犯了一个不小的错误。

Tags:Asset

编辑录入:coldstar [复制链接] [打 印]
[]
  • 好
  • 好的评价 如果觉得好,就请您
      0%(0)
  • 差
  • 差的评价 如果觉得差,就请您
      0%(0)
更多精彩
    赞助商链接

    热点阅读
      焦点图片
        最新推荐
          精彩阅读