Configure and launch multimedia functions
kotlinYou can configure camera, album, and audio recording settings independently and then combine them using MultiMediaSetting.
- CameraSetting: Configure mime types (e.g.,
MimeType.ofAll()). - AlbumSetting: Configure mime types, enable/disable item counting, add custom filters (like
GifSizeFilter), and enable original image selection with size limits. - RecorderSetting: Configure audio recording parameters.
- MultiMediaSetting: The central configuration object. Use
.from(context)to initialize, then chain.albumSetting(),.cameraSetting(), and.recorderSetting()to enable specific features. You can also configure the image engine (e.g.,Glide4Engine) and set maximum selectable counts per media type.
Use .forResult(requestLauncher) to launch the configured multimedia interface.
// 1. Configure Camera
CameraSetting cameraSetting = new CameraSetting();
cameraSetting.mimeTypeSet(MimeType.ofAll());
// 2. Configure Album
AlbumSetting albumSetting = new AlbumSetting(false)
.mimeTypeSet(MimeType.ofAll())
.countable(true)
.addFilter(new GifSizeFilter(320, 320, 5 * BaseFilter.K * BaseFilter.K))
.originalEnable(true)
.maxOriginalSize(10);
// 3. Configure Recorder
RecorderSetting recorderSetting = new RecorderSetting();
// 4. Combine and Launch
MultiMediaSetting mGlobalSetting = MultiMediaSetting.from(context)
.choose(MimeType.ofAll())
.albumSetting(albumSetting)
.cameraSetting(cameraSetting)
.recorderSetting(recorderSetting)
.imageEngine(new Glide4Engine())
.maxSelectablePerMediaType(null, MAX_IMAGE, MAX_VIDEO, MAX_AUDIO, imgCount, vidCount, audCount)
.forResult(requestLauncherACR);