说三道四技术文摘-感悟人生的经典句子
说三道四 > 文档快照

OBB文件和StorageManager类使用介绍

HTML文档下载 WORD文档下载 PDF文档下载
OBB文件和StorageManager类使用介绍

作者:Android开发网


  从Android 2.3开始新增了一个OBB文件系统和StorageManager类用来管理外部存储上的数据安全。如果你过去开发过Symbian S60第三版或以上的版本可能发现都有一个隔离的文件系统,仅根据自己应用的UID才能读取,当然这样的设计在iOS和WP7均实现了,Android123提示大家这种叫做隔离文件系统,为什么Android 2.3的android.os.storage.StorageManager类就是来解决这个问题的。

  如果我们设计一款资源包含比较多的游戏,可能你会发现最终生成的APK文件可能高达300MB,但是APK文件很大导致Android系统无法正常安装,而这么大其实都是游戏中用到的资源文件,我们放到SD卡上可能其他应用也可以访问,比如说系统的图片管理器会索引游戏中的图片资源,而音乐播放器也会索引资源中的音乐,所以Android 2.3的OBB文件(Opaque Binary Blob)可以很好的解决大文件在SD卡上分离出APK文件,同时别的程序没有权限访问这样一种隔离的文件系统。

  android.os.storage.StorageManager类的实例化方法需要使用getSystemService(Contxt.STORAGE_SERVICE)才可以,Android开发网再次提醒这是一个API Level至少为9才能调用的类,注意SDK版本以及目标设备的固件。

  String  getMountedObbPath(String filename) //通过一个文件名判断挂载的OBB文件路径
  boolean  isObbMounted(String filename) //这个OBB文件是否挂载了
  boolean  mountObb(String filename, String key, OnObbStateChangeListener listener)  //挂载一个OBB文件
  boolean  unmountObb(String filename, boolean force, OnObbStateChangeListener listener)  //反挂载一个obb文件,这个方法是异步的,第二个参数可以强制反挂载。

  我们可以看到挂载和反挂载obb文件时都有一个状态回调的类,位于android.os.storage.OnObbStateChangeListener,OnObbStateChangeListener接口实现了一个void  onObbStateChange(String path, int state) 方法来回调状态,第二个参数state的状态有:

int ERROR_ALREADY_MOUNTED 这个OBB已经挂载了
int ERROR_COULD_NOT_MOUNT 这个OBB不能挂在到系统.
int ERROR_COULD_NOT_UNMOUNT 这个OBB不能反挂载.
int ERROR_INTERNAL 一个内部的系统错误导致正在重试挂载obb
int ERROR_NOT_MOUNTED 一个反挂载调用执行时这个obb还没有挂在过.
int ERROR_PERMISSION_DENIED 当前程序没有使用这个obb的权限.
int MOUNTED The obb容器已经挂载好了,可以使用了.
int UNMOUNTED The OBB容易现在反挂载完成,将无法再使用. 

 从体而言我们看到Android 2.3系统中很多新的功能都很实用,同时Google正在吸取其他平台的优点,通过更多的实现方法更灵活的处理,而不是其他系统那样封闭,导致了不越狱很多事情都无法做的尴尬问题,Android系统既保证了安全,又处理好了灵活的功能。

生成程序组和项-Delphi资料 实现超级链接-Delphi资料 实战Delphi数据网格色彩特效 使dbgrid的某几笔资料变色-Delphi资料 树形图(Treeview)的使用概述-Delphi资料 透明FORM-Delphi资料 为列表框添光彩-Delphi资料 限制FORM的大小-Delphi资料 用Delphi开发分隔线组件 用Delphi设计拨动、跳线开关组件 用Delphi 设 计 拨 动、 跳 线 开 关 组 件 用Delphi实现JPEG格式图像的显示 用Delphi制作动态有声标签 运行时生成控件-Delphi资料 在DBGRID中实现COPY、PASTE功能-Delphi资料 在Delphi程序的About窗口中建立URL连接 在Delphi中利用Tbatch组件完成数据批处理 在Delphi中巧改窗体文件实现控件数组化 在Delphi中实现不同风格的SPEED和BUTTON 在Delphi中实现类似VB中的控件数组。 在RichEdit中的串查找-Delphi资料 在按钮中快速启动程序-Delphi资料 怎样读出MEMO控件的当前值-Delphi资料 怎样使用Delphi 5中的TExcelApplication操纵Excel 97/2000 怎样在TDataset中汉英混用-Delphi资料 制作可移动的窗体的MovePanel控件-Delphi资料 制作可移动的分割窗体-Delphi资料 制作用于日期时间型字段的DELPHI数据感知控件 制作主窗口显示前的版权窗口-Delphi资料 状态条插入可视控件-Delphi资料 做动态显示的控件-Delphi资料 为什么我的Linux只能打开国外的网站? 用resin时,“No tags”是什么错误!分必给! 热烈庆祝VBA开张! 请问在asp中如何读取/显示access数据库中的备注字段 紧急求救:在VC++里如何通过ATL OLE DB访问(INSERT\UPDATE\DELETE\SELECT)ORACLE和SQL SERVER里的BLOB字段内容? 高薪寻找西安的兼职UNIX程序 员 在delphi中,怎么调用api函数? www.alldas.de为什么无法访问了??? 如何检测被覆盖的窗口区域是否发生了变化? 高薪寻找西安的兼职UNIX 程序员 如何制作下拉菜单 请高手指点:好猫为何不工作? 一种设想,20台电脑5根电话线上网,如何达到较快的速度? 对话框程序调试时的问题?!!!! 请介绍几本好用的自学C语言的书籍好吗?? 紧急求救,请高手来看看 .NET和JAVA到底哪个好? 谁来救我?ISequentialStream::write()为何不好使? 定义类型的困惑 大虾们,如何做一个图标选择框!!!(详情见内) ADO编程问题求解!!!!!!!!!!! ****************简单问题,高分求救??????????????????????? 请问怎样在TabStrip中的选项卡中增加图片?谢了 工程如何能建的工整一些? www.alldas.de为什么无法访问了? 关于动态控件的问题 ADO编程问题求解 怎么编程产生1MHz甚至更高频率的周期信号? 紧急求助—有关JMail4.1附件问题 挥泪大送分!!!!! 怎样才能让自己变胖? 做个仅有对话框的应用,但想把它放到托盘, 给ASP爱好者提个建议! 关于SQLserver2000“视图“的两个问题,请教高手! 好久没上网了,送分以庆祝再回csdn!!!!! 做浏览器,如何实现 “后退”,“前进”,这二个功能? 如何使C:盘,D盘的根目录不共享? 用resin时,是否需要jdk,如何配置?分必给! SDI中的某一个子视图里怎样对主窗口的状态栏进行更改?? ◇◆◇ 失恋代表什么? ◇◆◇ 我英语不懂,想考高程.行吗 ◇◆◇ 学生生涯快完了,大家来说说对学生生涯的感受,特别是什么最深刻的! ◇◆◇ 求救!如何把SQL命令从前端应用程序传给应用程序服务器 要去招商行笔试了,有参加过的兄弟给点建议。 ###############讨论一下->微软全力推出.NET技术和C#语言的出现,VC++还有多久的寿命??? 要去招商行笔试了,有参加过的兄弟给点建议 如何发一消息,帮别人问的 高手帮助!!! 要去招商行笔试,有参加过的兄弟给点建议。 要去招商行笔试,有参加过的兄弟给点建议 我配置的IIS,为什么只能读数据库,不能写入?为什么? 张奶奶家养的鸡和鸭共150只,鸡是鸭的5 倍,问张奶奶家养的鸡和鸭个多少只 已知X1,X2 是方程-3X-4X+2=0的两根,求x1+x2=?x1x2=? 方程2的x次方=3-2x的解为x1,方程log2(x)=3-2x的解为x2,求x1+x2的值答案是3/2,可是我怎么都是2啊? 奶奶家养鸡,兔若干只,鸡比兔多20只,鸡脚比兔脚多4只,奶奶家养鸡,兔各几只? 已知方程3x的平方+4x的两根是x1、x2,求1/x1的平方+1/x2的平方的值已知方程3x的平方+4x=7的两根是x1、x2,求1/x1的平方+1/x2的平方的值用韦达定理, 设方程2的-x次方=lgx绝对值的两个根为x1,x2,则x1乘以x2的积与0,1的大小关系 王奶奶家有鸡兔若感知已知鸡比兔多13只共146只脚,鸡兔各几只 若方程X平方-3X-1=0的两个根为x1,x2,则1/X1 + 1/X2的值为 关于x的二次方程2x^2+(log2为底,m为真)x+log2为底根号m为真=0有两个实数根,求m的值两个相等的实数根。。对不起啊,少打两个字。。 养鸡场共养鸡兔176只,已知鸡脚总数比兔脚总数多214只,问养的鸡兔各为多少只?不用方程 设方程4x的平方-3x-8=0的两根分别为x1,x2求下列代数式的值(x1-3)(x2-3) x1分之2+X2分之2 (x1-x2)的平方 若关于x的方程(根号x+3)+2x+m=0只有一个实数根,求m的取值范围 奶奶家喂的鸡兔共有有20个头,52只脚.奶奶家喂了多少只鸡和兔? 设x1,x2是方程2x²-3x-3=0的两个实数根,则x1/x2+x2/x1的值为 已知关于方程x^2+2x+2根号(x^2+2x+2p) -p^2=0,其中p为实数(1)若方程没有实数根,求p的范围(2)若p>0,为p为何值时,方程只有一个实数根,并求出这个根用换元法设根号中为a,我想知道分解因式后 设方程x^3+2x^2-x+3=0在复数集C中的根是x1,x2,x3,求一元三次方程,使它在C中的根是:1) 2x1,2x2,2x32) -x1,-x2,-x33) 1/x1,1/x2,1/x3 已知方程3x²-4x-2=0的两根是x1、x2求、x1²+x2² 2、1/x1²+1/x2²3、x1三次方+x2三次方. log根号2^(x-5)log2^(x-1) 设x1,x2,x3是方程x^3-x+1=0的三个根,则x1^5+x2^5+x3^5的值为 已知关于x的方程3x^2-5x+a=0的两个根为x1、x2,且-2小于x1小于0,1小于x2小于3,求实数a的取?、 log2(1+根号2+根号3)+log2(1+根号2 -根号3) X1、X2为方程X²+3X+1=0的两实根,求代数式X1³+8X+20的值 已知关于X的方程3x^2-5x+a=0的一根分布在区间(-2,0)内,另一根分布在区间(1,3)内,求实数a的取值范围 已知函数f(x)=2^x+x,g(x)=x-log1/2x(1/2为底数),h(x)=log2x-根号x(2为底数)的零点是x1,x2,x3,比较大小 已知方程3x平方+5x-2=0的两个根分别为x1 x2 求代数式x1+x2+x1乘x2的值 已知关于x的方程3x^2-6(m-1)x+m^2+1=0的两个根x1,x2满足|x1|+|x2|=2,求实数m的值 已知x∈[根号2,8],函数f(x)=log2 (x/2)乘以log根号2 ((根号x)/2)求该函数的最大值与最小值,注:这两个对数式是相乘,底数分别是2和(根号2),真数分别是 (x÷2)与 (根号x÷2),在10月23日下午3 已知x1、x2为方程xˆ2+3x+1=0的两实根,求代数式x1ˆ3+8x2 20的值 设x1,x2是方程3x方-5x-7=0的两根.求(1)x1方+x2方=?(2)1/x1+1/x2=?(3)X2/X1+X1/X2=? 已知函数f(x)=log2(2^x+1),g(x)=log2(2^x-1),若关于x的函数F(x)=g(x)-f(x)-m在[1,2]上有零点,求m范围 已知函数f(x)=3x的平方—x的2次方,求方程f(x)=0在区间【-1,0】上实根的个数已知函数f(x)=3的x次方—x的2次方,求方程f(x)=0在区间【-1,0】上实根的个数 设方程3x²-5x-7=0的两根,分别为x1,x2,求一.(x1-x2) 二.(x1-2)(x2-2) 若关于x的方程根号下1-x^2=log2(x-a)有正数解,则实数a的取值范围 已知函数f(x)=3x次方+3x-8,用二分法求方程3x次方+3x-8=0在x∈(1,3)内近似解的过程中,取区间中点x0=2那么下一个有根区间为() 已知,方程3x²-5x-7=0的两个根为x1、x2(韦达定理)求|x1-x2|根据韦达定理x1+x2=-b/ax1x2=c/a 关于X的方程根号下1-X^2=x+a在区间[1,1]上有解,则实数a的取值范围是 f(x)=三分之一x三次方+x方-3x,一、求图像在原点处的切线方程 二、求函数的单调区间 已知方程-x2+3x-m=3-x在x∈(0,3)内有唯一解,求实数m的取值范围 使得方程根号(16-x^2)-x-m=0有实数解,则实数m的取值范围?答案是4≤m≤4根号2.这个好像要画图!麻烦给个图解, 已知函数f(x)=2x的三次方-3x的平方+3 若关于x的方程f(x)+m=0有三个不同的实根,求实数m的取值范围 若正数a为方程3x^2-5x+3=0的两个根x1,x2的比例中项,求a(我觉得3x^2-5x+3=0这个方程无解) 已知全集U=R A={x f(x)=根号(X-1)(X-2)} B={x log2(X-a) 已知函数f(x)=2/3x三次方-2x二次方-6x+1.求:曲线f(x)在x=0处的方程.求函数在区间〔-3,1〕上的最大...已知函数f(x)=2/3x三次方-2x二次方-6x+1.求:曲线f(x)在x=0处的方程.求函数在区间〔-3,1〕上的最大 设集合A={x1,x2,x3}={x|x^3=1,x∈C},则集合B={x1x2,x1x3,x2x3}(x1,x2,x3∈A)与A的关系是 已知函数f(x)=log2(x^2-ax-a)在区间(-∞ ,1减根号3]是单调递减函数.求实数a的取值范围 已知x1,x2为方程x²+3x+1=0的两实根,则x1的三次方+8x2+20=__________________. 已知5a的y+5次方b的3x次方,与-4a的2x次方b的2-4y次方是同类项,则x= y= 已知a>0a≠1,试求使方程log2(x-ka)=log2根号下(x^2-a^2)有解的k的取值范围希望得到图象法的解释,谢 x1、x2是方程3x平方+4x-7=0的两个根,利用根与系数的关系,求下列格式的值(1).x2 x1 ( 2).(x1-2)(x2-2) (3).x1-x2__ + __ x1 x2 已知2a的y+5次方b的3x次方与2分之5a的2x次方b的2-4y次方是同类项则x=【】,y=【】 若log2(2-a)/根号(a-1)有意义,则a的取值范围 设x1、x2是方程是2x^2+4x-3=0的两个根,利用根与系数的关系,求下列各式的值:1、(x1+1)(x2+1) 2、x1^2x2+x1x2^2 3、x2/x1+x1/x2 4、(x1-x2)^2 已知关于x的方程2x^2+(log2m)x+log2根号m=0,有两个相等的实数根,求m的值 设关于方程4^x-2^x+1-b=0,若方程有实数解,求实数b的取值范围 1方程x^2+2x+1=0的根为X1= X2= X1+X2= X1X2= 方程x^2-3x-1=0的根为X1= X2= X1+X2= X1X2= 方程3x^2+4x-7=0的根为X1= X2= X1+X2= X1X2=由上述的你能得出什么猜想 你能证明你的猜想吗? 若方程(1/2)^x=log2(X)的解为x1,方程(1/2)^x=log1/2X的解为x2,则x1x2的取值范围为若方程(1/2)的x次方=log以2为底x的对数的解为X1,若方程(1/2)的x次方=log以1/2为底X的对数的解为x2,则x1.x2的取值范围是什么 方程根号下(4-x^2)=lgx的根的个数是请把步骤写得清楚点,谢谢 王奶奶家养了25只鸡和15只鸭.根据25×3/5=15这个算式编一道乘法应用题和两道除法应用题,并写步奏解答 (1)方程x²+2x+1=0的根为x1= x2= x1+x2= x1x2= (2)方程x^2-3x-1=0的根为X1= X2= X1+X2= X1X2=(3)方程3x^2+4x-7=0X1=的根为X1= X2= X1+X2= X1X2= 由上述的你能得出什么猜想 ?你能证明你的猜想吗? 主 若x1,x2为方程【2的x次方=(1/2)的-1/x+1次方】的两个实数解,则x1+x2=
备案号:鲁ICP备13029499号-2 说三道四 www.s3d4.cn