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

Android 10发布后,如何重新实现不推荐使用的方法?用于处理MediaStore和存储?

Android 10发布后,为了提高应用程序的安全性和隐私保护,一些方法被标记为不推荐使用。为了重新实现这些方法,处理MediaStore和存储,可以按照以下步骤进行:

  1. 替代不推荐使用的方法:首先,需要查看Android官方文档,了解哪些方法被标记为不推荐使用,并找到它们的替代方法。通常,官方会提供新的API或库来替代旧的方法。可以通过查看官方文档或开发者网站来获取这些信息。
  2. 更新代码:根据新的API或库,更新应用程序的代码以使用推荐的方法。这可能涉及到修改现有的代码或添加新的代码段。确保在更新代码时,考虑到应用程序的兼容性和稳定性。
  3. 迁移数据:如果旧的方法涉及到存储或处理媒体文件,可能需要迁移现有的数据到新的方法中。这可能需要编写一些脚本或工具来完成数据的迁移过程。
  4. 测试和调试:在重新实现方法后,进行全面的测试和调试以确保应用程序的功能正常。这包括对存储和媒体处理功能进行测试,以确保它们按预期工作。
  5. 更新文档和用户指南:最后,更新应用程序的文档和用户指南,以反映新的方法和功能。这有助于用户了解如何正确地使用应用程序的存储和媒体处理功能。

对于处理MediaStore和存储的具体方法,可以参考腾讯云的相关产品和文档,例如:

  • 腾讯云对象存储(COS):提供了可靠、安全、低成本的云存储服务,适用于存储和管理媒体文件。详情请参考:腾讯云对象存储(COS)
  • 腾讯云云数据库(TencentDB):提供了高性能、可扩展的数据库服务,适用于存储和管理应用程序的数据。详情请参考:腾讯云云数据库(TencentDB)

请注意,以上只是示例,具体的产品选择应根据实际需求和项目要求进行评估和选择。

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

Android 截屏监控(已适配Android 14)

ContentObserver监听全部资源的变化直接监听截屏快捷键(由于不同的厂商自定义的原因,使用这种方法进行监听比较困难)本文主要使用ContentObserver的方式来实现对截屏的监控。...Android 各版本适配主要针对Android 13及Android 14更新的存储权限进行适配。...|权限状态|Android 13及以下机型|Android 14及以上机型||----|----|---||有全部相册权限|使用媒体库监控实现监控|使用媒体库监控实现监控|有部分相册权限|无法进行监控|...\_MODIFIED} desc limit ${maxCount}", )}其中,针对不同版本的Android机型,获取的字段也做了相应的处理Android 10及以上val MEDIA\_PROJECTIONS...处理截屏文件当判断为是截屏文件后,对截屏文件进行处理,这里通过一个全局变量的listener来控制监听到截屏后的动作,针对不同的场景对listener做动态的更新。

98610

相册适配 Android 11 绕的那些弯路

分区存储 为了让用户更好地管理自己的文件并减少混乱,以 Android 10(API 级别 29)及更高版本为目标平台的应用在默认情况下被赋予了对外部存储空间的分区访问权限(即分区存储)。...启用分区存储后,应用将无法访问属于其他应用的应用专属目录。...这是摘自官方文档的一段话,我们可以把「分区存储」简单解释为,Android 10 开启分区存储后,你的应用在有权限的情况下也无法随便访问其他外部存储空间中的公有文件夹了 2....只适配 Android 10 (不推荐) 在Manifest中添加 <application   android:requestLegacyExternalStorage="true"   ...> 我们刚才知道了...,确实找到了一小段不起眼的文字 使用直接文件路径和原生库访问文件 为了帮助您的应用更顺畅地使用第三方媒体库,Android 11 允许您使用除 MediaStore API 之外的 API 通过直接文件路径访问共享存储空间中的媒体文件

1.8K30
  • Android 11 应用兼容性适配,看这篇就够了

    ● 接收并处理Uri 1.3.3.2.3.App自定义私有Provider App可以实现自定义ContentProvider,尤其是内部文件共享,但是不希望UI交互。...: ● App存放到公共目录下的文件,卸载后,如果需要修改,需要用户重新授予权限 1.3.11.App数据迁移 App打开分区存储,会涉及到数据的迁移,不然会导致旧数据无法使用。...toast,可以使用纯文本的toast,即不设置自定义的view使用系统提供的toast默认样式即可,不调用setView()方法。...不推荐:int fd = dup(STDOUT_FILENO); 推荐: android::base::unique_fd fd(dup(STDOUT_FILENO)); 3.9无障碍服务按钮 1背景...● 建议开发者开始对应用,SDK和库进行最终的兼容性测试。发布兼容版本,留意Android Beta 版用户反馈,继续针对Android 11的工作。使用正式API进行构建和测试。

    13.7K42

    Android Q 分区储存: 最佳实践和几项更新

    在这篇文章中,我们将与您分享在 Android Q 设备上如何声明应用对分区储存特性支持的方法,以及对开发者社区提交上来的一些问题的解答和最佳实践。...这些变更的具体实现细节将在 Beta 3 版本中公布,但我们想要提前通知您,帮助您更好地计划对于 Android Q 设备的应用更新。...在这里,我们希望与您分享一下团队对几个常见问题的解答以及建议您采用的最佳实践: 存储共享媒体文件: 如果您的应用需要与其它应用 (如照片库) 共享文件,而且即使在应用卸载后,这些文件仍需继续保留在设备中...,那么,请您使用 MediaStore API。...请阅读《存储访问框架》,进一步了解两者差异。 文件管理应用往往需要和各层目录下的其它应用协同工作。请使用 OPEN_DOCUMENT_TREE 让用户选择目录子树,接着,应用便可处理返回目录中的文件。

    1.2K20

    干货 | Trip.com Android 11 适配之旅

    分区存储较为复杂,我们提供了一个工具类 IBUStorageEnvironment ,里面实现了和 Environment 相似的函数,以及一些封装好的判断方法,供产线使用。...其中适配的部分细节如下,要适配分区存储,我们需要明确以下几个问题: 什么情况下会启用分区存储? 不同场景如何适配分区存储? 对于媒体文件,是否一定要用 MediaStore ?...推荐的适配方式:满足分区存储条件时,当有性能要求时,使用 MediaStore 来读取媒体文件,无性能要求仍可以通过File来读取。写入场景较少,单独适配。...推荐的适配方式:对于这一类文件,首先推荐都存到私有目录下,如果对“应用卸载后仍要保存”有强烈的需求,可以在开发阶段考虑通过 MediaStore 保存到 Downloads 或者 Documents 文件夹内...对于这类问题,我们的处理方式是在适配和测试阶段每发现一个,检查搜索使用了同样API的项目代码, 适配后更新到共享的文档中。

    1.8K20

    Android 启动系统相机,相册,裁剪图片及6.0权限管理

    主要内容如下 - 怎样通过相机获取我们的图片 - 怎样启动相册获取我们想要的图片 - 在Android 6.0中的动态权限处理】 - 调用系统Intent和自定义相册的优缺点对比 怎样通过相机获取我们的图片...URI,这样,最终返回的信息会存储在我们的mFile中。...第一种方法获取的bitmap是被缩放的bitmap,第二种方法获取的bitmap是完整的bitmap,实际使用中根据需求情况决定使用哪一种方法。...缺点: 代码量稍微多一些 总结 综上所述,对于本地相册的功能,本人还是强烈推荐自己实现,因为采用系统的,灵活性差,更重要的是,经常会有一些 莫名其妙的bug 这里给大家推荐两种实现方式,一个是鸿洋大神以前写的...裁剪区的宽和高 其实就是裁剪后的显示区域 若裁剪的比例不是显示的比例, // 则自动压缩图片填满显示区域。

    1.4K10

    Android 11 中的存储机制更新

    在 Android 10 中,我们调整了存储权限的工作方式,仅为应用提供其所需的访问权限。这也是在鼓励应用在指定目录下进行文件存储以限制文件混乱。当应用被卸载后,这些相关的目录也会被删除。...目标 API 级别 (Target SDK Level) 设定为 Android 10 的应用无需请求 Storage 权限,就可以使用自己的外部存储目录并管理媒体集合 (音频、视频、图片和下载数据)。...Android 10 对外部存储权限行为 developer.android.google.cn/training/da… 改进媒体存储 Android 10 中要求所有应用都使用 MediaStore...因此在 Android 11 里,依赖原始文件路径的 API 和库可以再次使用了。...也请继续关注谷歌开发者公众号未来发布的、基于 MediaStore 和 Storage Access Framework API 来调用分区存储的相关文章。 ?

    3.2K11

    Android 10适配要点,作用域存储

    距离Android 10系统正式发布已经过去大半年左右的时间了,你的应用程序已经对它进行适配了吗? 在Android 10众多的行为变更当中,有一点是非常值得引起我们重视的,那就是作用域存储。...一个是DISPLAY_NAME,也就是图片显示的名称,一个是MIME_TYPE,也就是图片的mime类型。还有一个是图片存储的路径,不过这个值在Android 10和之前的系统版本中的处理方式不一样。...而从Android 10开始,我们已经不能以绝对路径的方式访问外置存储空间了,所以文件下载功能也会受到影响。 那么该如何解决呢?主要有以下两种方式。...其实将文件下载到Download目录,和向相册中添加一张图片的过程是差不多的,Android 10在MediaStore中新增了一种Downloads集合,专门用于执行文件下载操作。...第三方SDK不支持作用域存储怎么办? 阅读完了本篇文章之后,相信你对Android 10作用域存储的用法和适配基本上都已经掌握了。

    2.4K10

    Android 10(Q)11(R) 分区存储适配

    Android 存储分区情况 Android 中存储可以分为两大类:私有存储和共享存储 私有存储 (Private Storage) : 每个应用在都拥有自己的私有目录,其它应用看不到,彼此也无法访问到该目录...Android 11 (R) Android 11 (R) 在 Android 10 (Q) 中分区存储的基础上进行了调整。 1....新增执行批量操作 为实现各种设备之间的一致性并增加用户便利性,Android 11 向 MediaStore API 中添加了多种方法。...使用直接文件路径和原生库访问文件 为了帮助您的应用更顺畅地使用第三方媒体库,Android 11 允许您使用除 MediaStore API 之外的 API 访问共享存储空间中的媒体文件。...按文件路径顺序读取的时候性能相当;随机读取和写入的时候则会更慢,所以还是推荐直接使用 MediaStore API。 3.

    2.5K30

    干货 | 携程Android 10适配踩坑指南

    AndroidX重新设计了包结构,旨在鼓励库的小型化,支持库和架构组件包的名字进行了简化。而且这也是减轻Android生态系统碎片化的有效方式。...以 Android 10(API 级别 29)及更高版本为目标平台的应用在默认情况下被赋予了对外部存储设备的分区访问权限(即分区存储), 对外部存储文件访问方式重新设计,便于用户更好的管理外部存储文件。...要点: Android Q文件存储机制修改成了沙盒模式 APP只能访问自己目录下的文件和公共媒体文件 Android Q版本以下机型,还是使用老的文件存储方式 Android Q及以上版本机型,所有应用均需要分区存储.../** * 创建图片地址uri,用于保存拍照后的照片 Android 10以后使用这种方法 */ private Uri createImageUri() { String status...(即从Android 10开始,普通应用已经无法获取设备的真正mac地址,标识设备已经无法使用mac地址) 3.3 如何标识设备唯一性 3.3.1 Google解决方案:如果您的应用有追踪非登录用户的需求

    3.5K77

    Android Q 适配 之 存储新特性

    而作为开发者,我们更关心的是如何解决在我们现有的 App 上,保证 Android Q 的兼容性问题。...存储空间限制 2.1 背景 为了让用户更好地控制自己的文件,并限制文件混乱的情况,Android Q 修改了 APP 访问外部存储中文件的方法。...Android Q 仍然使用 READ_EXTERNAL_STORAGE 和 WRITE_EXTERNAL_STORAGE 作为面向用户的存储相关运行时权限,但现在即使获取了这些权限,访问外部存储也受到了限制...解决方法 1:使用 MediaStore 接口访问公共目录中的多媒体文件,或者使用 SAF 访问公共目录中的任意文件。...这些 APP 如果直接通过路径的方式将文件保存到了外部存储上,例如外部存储的根目录,那么 APP 被卸载后重新安装,新的 APP 获得 Filtered View 视图,无法直接通过路径访问到旧数据,导致数据丢失

    1.1K30

    Android Q 兼容那些事

    一部分是 MediaStore 的处理,另一部分是分区存储的处理。 先说说 MediaStore,什么是 MediaStore 呢? ? 对于 MediaStore,Q 的处理如下: ?...推荐尽快完成适配,因为目前是为了给开发者更多时间适应这个变化,等到下一个版本 Android R 的时候会强制执行分区存储模式,到时候清单文件的设置也是没用的。因此强烈建议将这个工作排上兼容行程。...当然在 Q 的兼容上可以根据自身业务进度进行设置,假设时间不够,可以暂时不启用,但是后续需要排期处理。 3. 位置权限 我们看看 Android P 申请位置权限的对话框: ?...可以看到只有允许和拒绝两个选项。 现在看看 Android Q 的: ? 会发现多了一些选项,其中有一个仅在使用该应用时允许。 在 Android P 的时候,清单文件只需要申请一个权限: ?...BubbleView 和指纹识别 BubbleView 其实就是悬浮窗。指纹识别也是 Android Q 引入的一个官方方式。 这个不需要做兼容,算是新功能,这里不赘述。 ? ? 6.

    1K10

    Android 存储空间的最佳实践

    处理媒体文件 这部分内容描述了处理媒体文件 (如视频、图片、音频文件) 的一些常见用例,并概要说明了应用可以使用的方法。...评估用户的响应: 如果获得了权限,执行修改或删除操作; 如果未能获得权限,向用户解释为什么您的应用需要此权限。 详细了解如何使用 Android 11 引入的这些方法执行批量操作。...在 Android 10 上运行 如果您的应用目标 API 为 Android 10 (API level 29),请停用分区存储并继续使用 Android 9 及更低版本所使用的方法来执行这类操作。...使用 MediaStore API 来修改和删除媒体文件。...在 Android 10 上运行 如果您的应用目标 API 为 Android 10 (API level 29),请停用分区存储并继续使用 Android 9 及更低版本所使用的方法来执行这类操作。

    1.9K10

    Android11 (API30)适配

    一、兼容性调试工具 Android 11 引入了新的工具,用于针对最新版平台中的行为变更来测试和调试应用。这些工具属于新的兼容性框架的一部分,可让应用开发者单独开启和关闭各项变更。...●  接收并处理Uri 1.3.3.2.3.App自定义私有Provider App可以实现自定义ContentProvider,尤其是内部文件共享,但是不希望UI交互。...●  App存放到公共目录下的文件,卸载后,如果需要修改,需要用户重新授予权限 1.3.11.App数据迁移 App打开分区存储,会涉及到数据的迁移,不然会导致旧数据无法使用。...toast,可以使用纯文本的toast,即不设置自定义的view使用系统提供的toast默认样式即可,不调用setView()方法。...不推荐:int fd = dup(STDOUT_FILENO); 推荐: android::base::unique_fd fd(dup(STDOUT_FILENO)); 3.9无障碍服务按钮 1背景

    8.2K11

    2016级移动应用开发在线测试14-MediaPlayer

    MediaStore类是android系统提供的一个多媒体数据库,android中多媒体信息都可以从这里提取。...┋ 获取所有外部存储卡上的音乐文件信息的方法: Cursor cursor = query(MediaStore.Audio.Media.EXTERNAL_CONTENT_URI, null, null...因为流媒体资源的装载是会消耗系统资源的,在一些硬件不理想的设备上,如果使用prepare()同步的方式装载资源,可能会造成UI界面的卡顿,这是非常影响用于体验的。...因为推荐使用异步装载的方式,为了避免还没有装载完成就调用start()而报错的问题,需要绑定MediaPlayer.setOnPreparedListener()事件,它将在异步装载完成之后回调。...如果MediaPlayer进入Error状态,可以通过调用reset()来恢复,使得MediaPlayer重新返回到Idle状态。 10.

    93430

    拖不得了,Android11真的来了,最全适配实践指南奉上

    ” 关于分区存储,在Android10就已经推行了,简单的说,就是应用对于文件的读写只能在沙盒环境,也就是属于自己应用的目录里面读写。其他媒体文件可以通过MediaStore进行访问。...在targetSdkVersion = 29应用中,设置android:requestLegacyExternalStorage="true",就可以不启动分区存储,让以前的文件读取正常使用。...,因为Android10已经出来很久了,所以资料还是很多的,这里推荐几篇 访问应用专属文件 Android 10适配要点,作用域存储 AndroidQ(10)分区存储完美适配 说到这里可能又有人问了,那我的应用就是个手机管理器...” 1)执行批量操作 这里的批量操作指的是Android 11 向 MediaStore API 中添加了多种方法,用于简化特定媒体文件更改流程(例如在原位置编辑照片),分别是: createWriteRequest...方法获取辅助功能按钮控制器,并且可用于查询辅助功能按钮的状态并注册监听器以进行交互和辅助功能按钮的状态更改。

    7.3K340266

    Android 11适配攻略

    开始适配Android 11。 隐私变更 强制执行分区存储机制 为了避免存储空间的读写权限被滥用,手机中存在着大量不明文件,且应用卸载后也没有删除掉。...Android 10 中提出了分区存储(Scoped Storage)这一概念。通过添加外部存储访问机制来更好的管理文件。...File来访问媒体集合,但是,使用原始文件路径直接访问还是会重定向到MediaStore API,而且会造成性能影响,因为推荐直接使用MediaStore API。...Toast相应的setView 和 getView方法也已经废弃不建议使用。 如果要在后台使用,并且希望用户执行某项操作,请使用通知(Notification)。...AsyncTask AsyncTask在Android 11已经不建议使用,建议迁移至Kotlin的协程。 此外 Handler未指定 Looper 的构造方法也已不建议使用。

    4.1K11

    AndroidQ兼容性适配指南

    AndroidQ android10.jpeg Android 10 中的隐私权变更 隐私权变更 受影响的应用 缓解策略 ✅ 分区存储 针对外部存储的过滤视图,可提供对特定于应用的文件和媒体集合的访问权限...是Anroid10引入的,如果你进行适配Android 10之后,应用通过升级安装,那么还会使用以前的储存模式Legacy View,只有通过首次安装或是卸载重新安装才能启用新模式Filtered View...这种方式十分适用于内部文件分享,不希望有UI交互的情况。...解决方法1: 参见使用MediaStore访问公共目录和使用SAF选择单个文件,使用MediaStore接口访问公共目录中的多媒体文件,或者使用 SAF访问公共目录中的任意文件。...这种方式十分适用于内部文件分享,不希望有UI交互的情况。

    7.3K30
    领券