首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

Android 存储概览

存储Android 一开始就将存储区分为内部存储和外部存储,对应手机自带的存储和可插拔的 sd 卡(可类比于 PC 的硬盘和 U盘)。...随着硬件技术发展,自带大容量空间的手机开始出现,关于内部存储的描述逐渐偏离现实了,于是从 Android 4.4(API 19)开始,官方不再将机身存储等同于内部存储,而是从逻辑上将其一部分划到外部存储...于是从Android 10(API 29)开始有了分区存储的概念,应用在默认情况下就能访问外部存储空间上自己的专属目录,以及本应用所创建的特定类型的媒体文件(使用MediaStore API,下面会讲到...除访问自己的媒体文件外,访问其它应用的媒体文件需要权限——在 Android 11(API 30)或更高版本中,需要 READ_EXTERNAL_STORAGE;在 Android 10(API 29)...其它文件 自 Android 4.4(API 19)始,官方提供了存储访问框架,便于应用与外部存储卷和云端存储空间在内的文档提供器互动。

8510
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    Android数据存储

    数据存储 Android数据存储的几种形式 Internal Storage Store private data on the device memory....Android平台中嵌入了一个关系型数据库SQLite,和其他数据库不同的是SQLite存储数据时不区分类型,例如一个字段声明为Integer类型, 我们也可以将一个字符串存入, 一个字段声明为布尔型...我们在更新或安装apk时一般将其放到外部存储设备中来进行安装,但是如果一个手机没有外部存储设备该怎么办呢?总不能就不给更新或者安装了。...安装应用的app是没有权限获取你应用的内部存储文件的,所以才会安装不上,那该怎么解决呢? 答案就是修改权限。...Intent.FLAG_ACTIVITY_NEW_TASK); intent.setDataAndType(Uri.parse("file://" + file), "application/vnd.android.package-archive

    2.3K70

    Android外部存储

    WeTest 导读 外部存储作为开发中经常接触的一个重要系统组成,在Android历代版本中,有过许许多多重要的变更。...一 各版本外部存储特性 1、Android 4.0 ● 支持模拟外部存储(通过FUSE实现) ● 出现了主外部存储,以及二级外部存储(没有接口对外暴露) ● 支持MTP(Media Transfer Protocol...,每个用户拥有独立的外部存储 4、Android 4.4 ● 读操作需要声明READ_EXTERNAL_STORAGE权限 ● 应用读写在外部存储的应用目录(/sdcard/Android//...5、Android 6.0 ● 外部存储支持动态权限管理 ● Adoptable Storage特性 6、Android 7.0 ● 引入作用域目录访问 ?...sdcard守护进程模拟外部存储大致流程(Android 4.0为例): ● 首先,指定/data/media目录用于模拟外部存储

    83130

    Android外部存储

    ---- 一、各版本外部存储特性 1、Android 4.0 ● 支持模拟外部存储(通过FUSE实现) ● 出现了主外部存储,以及二级外部存储(没有接口对外暴露) ● 支持MTP(Media Transfer...● 支持多用户,每个用户拥有独立的外部存储 4、Android 4.4 ● 读操作需要声明READ_EXTERNAL_STORAGE权限 ● 应用读写在外部存储的应用目录(/sdcard/Android...Storage Access Framework) [1.png] 5、Android 6.0 ● 外部存储支持动态权限管理 ● Adoptable Storage特性 6、Android 7.0 ●...[3.png] sdcard守护进程模拟外部存储大致流程(Android 4.0为例): ● 首先,指定/data/media目录用于模拟外部存储。...动态权限管理 a.背景 Android 6.0引入了运行时权限,允许用户对危险权限进行动态授权,这部分权限包含外部存储访问权限。

    2.2K60

    Android开发笔记(一百零九)利用网盘实现存储

    网盘存储 个人开发者往往没有自己的后台服务器,但同时又想获取app的运行信息,这就要借助于第三方的网络存储(也叫网盘、盘、微盘等等)。...曾几何时,各大公司纷纷推出免费的个人网盘服务,还开放了文件管理api给开发者调用,一时间涌现了网盘提供商的八大金刚:百度网盘、阿里、华为网盘、腾讯微云、新浪微盘、360盘、金山快盘、115网盘。...要想实现app的存储,得用点真金白银了。...阿里存储服务又称oss(Online Storage Service),现只提供收费服务,最经济的是40G空间半年5元,或一年9元,个人开发者的app有一定用户量时可以考虑购买。...下面是阿里对文件存储进行基本操作的代码示例: import android.app.Activity; import android.os.Bundle; import android.view.View

    4.6K30

    漫谈存储

    这篇文章也是,谈谈存储的时候,再来聊聊其他的一些想法。 计算 计算已经遍地开花,各种层面的运维已经漫地都是。。。IAAS层的运维,PAAS层的运维,SAAS层的运维。。。...而当使用所谓的申请虚拟机的时候,是否需要持久化存储,是否需要存储?数据存储在哪里?分布式存储。。。 上。。。。最重要的莫过于存储!!!...存储 心到处流浪,无处安放总是不好的,所以总要找一个人,寻一座城,进行持久化存储。。。这就是存储的由来。。。 为啥需要存储?...存储的好处太多,但是在底层基本都是分布式存储,其实存储也就是分布式存储,只不过进行了一层封装,这就是为什么那么多人需要打扮的花枝招展,不然怎么招蜂引蝶。。。...需要存储哪些数据? 大数据。。。存储存储中。 虚拟机VM的快照备份信息。。。存储存储中。 数据库的备份binlog信息。。。存储存储中。

    9.1K60

    大话存储

    1、存储的官方定义 存储是一个以数据存储和管理为核心的计算系统 即是指通过集群应用、网格技术或分布式文机房集中监控系统件系统等功能,将网络中大量各种不同类型的存储设备通过应用软件集合起来协同工作,...存储设备横向扩展的方式让存储系统具有了无限扩展的能力,能够实现控制器与硬盘的同时扩展,即性能与容量可以同时实现线性扩展,存储一般可以分为私有存储、公有存储。...,存储领域也必须正面和直视这个问题!...3、存储计算的关系 当计算系统运算和处理的核心是大量数据的存储和管理时,计算系统中就需要配置大量的存储设备,那么计算系统就转变成为一个存储系统,所以存储是一个以数据存储和管理为核心的计算系统...,小存量文件也可以存储到自己的邮箱内 5、企业用户存储计算技术如何保障数据安全 存储的一大优势在于其弹性,其实更准确说最初存储产品的安全性是产品的附加属性。

    10K60

    腾讯存储网关提供混合存储服务,实现数据分层存储

    存储网关(Cloud Storage Gateway,CSG)是腾讯提供的混合存储服务。...05 海量存储 CSG 能够配合公有对象存储 COS 提供海量的数据存储,单个文件系统最大支持1PB。...通过在腾讯上部署创建存储网关CSG,您无需关心本地应用与存储的兼容性,CSG可以在无感知的状态下实现协议转化,将数据以原始格式上传COS。...02 数据扩容 拓展本地 NAS 和 SAN 存储阵列需要耗费硬件成本和人力部署成本,您只需要在本地部署存储网关 CSG 将公有存储接入到本地存储系统架构,即可享受安全稳定、海量、低成本的公有服务。...写在最后 腾讯存储网关通过本地存储空间缓存了热点数据,保证了前端应用的本地访问性能,同时又可以利用上海量的存储空间。

    21.5K30

    腾讯存储网关提供混合存储服务,实现数据分层存储

    存储网关(Cloud Storage Gateway,CSG)是腾讯提供的混合存储服务。...05 海量存储 CSG 能够配合公有对象存储 COS 提供海量的数据存储,单个文件系统最大支持1PB。...通过在腾讯上部署创建存储网关CSG,您无需关心本地应用与存储的兼容性,CSG可以在无感知的状态下实现协议转化,将数据以原始格式上传COS。...02 数据扩容 拓展本地 NAS 和 SAN 存储阵列需要耗费硬件成本和人力部署成本,您只需要在本地部署存储网关 CSG 将公有存储接入到本地存储系统架构,即可享受安全稳定、海量、低成本的公有服务。...写 在 最 后 腾讯存储网关通过本地存储空间缓存了热点数据,保证了前端应用的本地访问性能,同时又可以利用上海量的存储空间。

    23.5K30

    android存储篇_SharedPreferences存储方式

    SharedPreferences是一种轻型的数据存储方式,它的本质是基于XML文件存储key-value键值对数据,通常用来存储一些简单的配置信息。...其存储位置在/data/data//shared_prefs目录下。SharedPreferences对象本身只能获取数据而不支持存储和修改,存储修改是通过Editor对象实现。...实现SharedPreferences存储的步骤如下:   一、根据Context获取SharedPreferences对象   二、利用edit()方法获取Editor对象。   ...三、通过Editor对象存储key-value键值对数据。   四、通过commit()方法提交数据。   ...所以不论SharedPreferences的数据存储操作是如何简单,它也只能是存储方式的一种补充,而无法完全替代如SQLite数据库这样的其他数据存储方式。

    1.6K30

    android存储篇_存储方式总览

    作为一个完成的应用程序,数据存储操作是必不可少的。因此,Android系统一共提供了四种数据存储方式。分别是:SharePreference、SQLite、Content Provider和File。...由于Android系统中,数据基本都是私有的的,都是存放于“data/data/程序包名”目录下,所以要实现数据共享,正确方式是使用Content Provider。...Android为此数据库提供了一个名为SQLiteDatabase的类,封装了一些操作数据库的API。...详见:SharedPreference存储详解 File: 即常说的文件(I/O)存储方法,常用语存储大数量的数据,但是缺点是更新数据将是一件困难的事情。...ContentProvider: Android系统中能实现所有应用程序共享的一种数据存储方式,由于数据通常在各应用间的是互相私密的,所以此存储方式较少使用,但是其又是必不可少的一种存储方式。

    65820

    Android 优化——存储优化

    Android 优化目录 ---- 交换数据格式 Google 推出的 Protocal Buffers 是一种更轻便高效的存储结构,但消耗内存较大。...占用存储比 Protocal 要大。...异步线程 Android 中数据不多时表查询可能耗时不多,不会导致 ANR,不过大于 100ms 时同样会让用户感觉到延时和卡顿,可以放在线程中运行,但 sqlite 在并发方面存在局限,多线程控制较麻烦...SQLiteStatement 使用 Android 系统提供的 SQLiteStatement 来插入数据,在性能上有一定的提高,并且也解决了 SQL 注入的问题。...分类 直接创建索引和间接创建索引 直接创建: 使用 sql 语句创建,Android 中可以在 SQLiteOpenHelper 的 onCreate 或是 onUpgrade 中直接 excuSql

    1.2K20

    Android文件存储路径

    注意点 使用内部存储应用卸载后,存储的文件自动删除 使用外部存储要申请权限,并且要判断外部存储是否可用 实例 public static String getFilePath(Context context...())) { directoryPath = context.getExternalFilesDir(dir).getAbsolutePath(); } else {//没外部存储就使用内部存储...数据文件私有 不需要申请权限 当应用被卸载的时候,目录下的文件会被删除 存储小文件 需要注意的是,这个文件的目录和应用的存储位置有关, 当应用被移动到外部存储设备的时候,文件的绝对路径也是变化的,所以建议当数据存储到这个目录的时候...(File)) 当应用被卸载的时候,目录下的文件会被删除 存储大文件 当应用被卸载的时候,目录下的文件会被删除,但是这里和getCacheDir()还有不同之处: 只有手机系统使用的是虚拟外部存储(虚拟...= context.getFilesDir(); 特点 应用内部存储空间 数据文件私有 不需要申请权限 当应用被卸载的时候,目录下的文件会被删除 当应用被移动到外部存储设备的时候,文件的绝对路径也是变化的

    3.4K20
    领券