pickImageForPlatform function
Future<String?>
pickImageForPlatform(
- BuildContext context, {
- required Future<
String?> mobilePhotoSelector(- BuildContext context
跨平台图片选择工具。
- 移动端(iOS / Android):通过
mobilePhotoSelector回调调用 原生的showPhotoSelector(由 netease_common_ui 提供,不在 nim_chatkit 依赖范围内,由调用方传入)。 - 桌面端 / Web:直接使用
FilePicker打开系统文件选择器, 仅支持常见图片格式(jpg / jpeg / png / gif / webp / bmp)。
用法示例
final path = await pickImageForPlatform(
context,
mobilePhotoSelector: (ctx) => showPhotoSelector(ctx),
);
if (path != null) { /* 处理选中的图片路径 */ }
Implementation
Future<String?> pickImageForPlatform(
BuildContext context, {
/// 移动端图片选择器回调,由调用方传入原生实现。
required Future<String?> Function(BuildContext context) mobilePhotoSelector,
}) async {
if (ChatKitUtils.isDesktopOrWeb) {
return _pickImageWithFilePicker();
} else {
return mobilePhotoSelector(context);
}
}