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

API29中不推荐使用MediaStorage.Images.Thumbnails。如何使用loadThumbnail()?

在API29中,不推荐使用MediaStorage.Images.Thumbnails来加载缩略图。相反,可以使用loadThumbnail()方法来加载缩略图。

loadThumbnail()是ContextCompat类中的一个静态方法,用于加载指定URI的缩略图。它接受以下参数:

  1. ContentResolver对象:用于访问应用程序的内容提供者。
  2. Uri对象:指定要加载缩略图的媒体文件的URI。
  3. Size对象:指定所需的缩略图尺寸。

以下是使用loadThumbnail()方法的示例代码:

代码语言:txt
复制
import android.content.ContentResolver;
import android.content.Context;
import android.graphics.Bitmap;
import android.net.Uri;
import android.os.Build;
import android.provider.MediaStore;
import android.support.v4.content.ContextCompat;

public class ThumbnailLoader {
    public static Bitmap loadThumbnail(Context context, Uri uri, int width, int height) {
        ContentResolver resolver = context.getContentResolver();
        Bitmap thumbnail = null;
        
        try {
            if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.Q) {
                thumbnail = resolver.loadThumbnail(uri, new Size(width, height), null);
            } else {
                thumbnail = MediaStore.Images.Thumbnails.getThumbnail(resolver, uri, MediaStore.Images.Thumbnails.MINI_KIND, null);
            }
        } catch (Exception e) {
            e.printStackTrace();
        }
        
        return thumbnail;
    }
}

在上面的示例中,loadThumbnail()方法首先检查设备的API级别。如果设备的API级别大于等于29(Android 10),则使用resolver.loadThumbnail()方法加载缩略图;否则,使用MediaStore.Images.Thumbnails.getThumbnail()方法加载缩略图。

注意:为了使用loadThumbnail()方法,需要在应用程序的build.gradle文件中添加以下依赖项:

代码语言:txt
复制
implementation 'androidx.core:core:1.6.0'

推荐的腾讯云相关产品和产品介绍链接地址:

  • 腾讯云对象存储(COS):提供高可靠、低成本的云端存储服务,适用于图片、音视频、文档等各类文件的存储和管理。
  • 腾讯云云服务器(CVM):提供灵活可扩展的云服务器,可满足各种计算需求。
  • 腾讯云人工智能(AI):提供丰富的人工智能服务,包括图像识别、语音识别、自然语言处理等,可应用于多媒体处理、智能推荐等场景。
  • 腾讯云物联网(IoT):提供全面的物联网解决方案,包括设备接入、数据管理、应用开发等,可用于构建智能家居、智能工厂等物联网应用。
  • 腾讯云移动开发(Mobile):提供一站式移动开发平台,包括移动应用开发、移动测试、移动运营等,可帮助开发者快速构建和发布移动应用。
  • 腾讯云数据库(CDB):提供高性能、可扩展的云数据库服务,包括关系型数据库、NoSQL数据库等,适用于各种应用场景。
  • 腾讯云区块链(BCB):提供安全可信的区块链服务,可用于构建去中心化应用、数字资产管理等场景。
  • 腾讯云元宇宙(Metaverse):提供虚拟现实(VR)和增强现实(AR)技术支持,可用于游戏、教育、旅游等领域。

请注意,以上推荐的腾讯云产品仅供参考,具体选择应根据实际需求进行评估和决策。

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

相关·内容

3分30秒

67-集成Spark-使用JDBC的方式(不推荐)

5分40秒

如何使用ArcScript中的格式化器

34秒

PS使用教程:如何在Photoshop中合并可见图层?

3分54秒

PS使用教程:如何在Mac版Photoshop中制作烟花效果?

36秒

PS使用教程:如何在Mac版Photoshop中画出对称的图案?

1分6秒

PS使用教程:如何在Mac版Photoshop中制作“3D”立体文字?

2分54秒

Elastic 5 分钟教程:Kibana入门

6分36秒

美国云服务器如何用Docker搭建ChatGPT网页版?(1)

7分1秒

Split端口详解

1分41秒

苹果手机转换JPG格式及图片压缩方法

21分1秒

13-在Vite中使用CSS

6分28秒

15-Vite中使用WebWorker

领券