Android 简单的视频、图片压缩工具

首页需要压缩的工具包

1.Gradle

复制代码
implementation 'com.iceteck.silicompressorr:silicompressor:2.2.3'

2.添加相关权限(手机得动态申请权限)

<uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE"/>

<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"/>

3.使用

使用很简单,直接调用相关方法传入文件路径就能获得压缩之后新文件的路径

<1> 视频压缩(需要在子线程中使用)

压缩视频文件并返回新视频的文件路径(参数传入原视频videoPath和压缩后destinationDirectory存放的文件夹,返回压缩后图片绝对路径)。横屏视频的outWidth宽度 outHeight高度 bitrate比特率(码率)越高数据大 体积越大一般450000

String filePath=SiliCompressor.with(Context).compressVideo(videoPath, destinationDirectory,outWidth,outHeight,bitrate);

String filePath=SiliCompressor.with(Context).compressVideo(videoPath, destinationDirectory);默认

<2> 图片压缩

压缩图像并返回新图像的文件路径

String filePath=SiliCompressor.with(Context).compress(imagePath, destinationDirectory);

压缩图像并在删除源图像时返回新图像的文件路径

String filePath=SiliCompressor.with(Context).compress(imagePath, destinationDirectory,true);

压缩图像可绘制并返回新图像的文件路径

String filePath=SiliCompressor.with(Context).compress(R.drawable.icon);

压缩图像并返回新图像的位图数据

Bitmap imageBitmap=SiliCompressor.with(Context).getCompressBitmap(imagePath);

压缩图像并在删除源图像的同时返回新图像的位图数据

Bitmap imageBitmap=SiliCompressor.with(Context).getCompressBitmap(imagePath,true)

好啦,先记录到这吧!

相关推荐
帅次1 小时前
Modifier 链与顺序、测量与命中区域
android·kotlin·compose·modifier
leory1 小时前
请详细描述Handler消息机制的工作原理
android·面试
leory2 小时前
请描述Binder IPC的基本原理和工作流程
android·面试
leory2 小时前
View的事件分发机制是怎样的?dispatchTouchEvent、onInterceptTouchEvent、onTouchEvent的关系?
android·面试
zander2582 小时前
Canal本地部署保姆级教程
android
小仙女喂得猪3 小时前
2026 Android 组件化项目的AICoding落地实践
android·kotlin·ai编程
leory3 小时前
请详细描述JVM的垃圾回收机制?
android·面试
leory3 小时前
volatile关键字的作用是什么?它能保证原子性吗?
android·面试
消失的旧时光-19433 小时前
为什么 Linux / Android 系统里全是 struct + 函数指针?—— 一篇讲透 C 语言如何实现面向对象(OOP)
android·linux·c语言
沐言人生3 小时前
ReactNative 源码分析5——ReactActivity之启动RN应用
android·react native