如何获取用户/相机拍摄的最后一张照片
Posted
技术标签:
【中文标题】如何获取用户/相机拍摄的最后一张照片【英文标题】:How to get last picture taken by user/camera 【发布时间】:2019-01-31 16:19:41 【问题描述】:如何使用颤振从图库(相机胶卷)中获取最后一张照片?
我想将这张照片显示为这样的缩略图:
我知道在 android Get uri of picture taken by camera 和 ios Swift - how to get last taken 3 photos from photo library? 中是可能的
是否有工具、库、媒体 API 可以帮助我解决这个问题?
【问题讨论】:
【参考方案1】:使用平台渠道,你知道它是原生解决方案
https://medium.com/flutter-io/flutter-platform-channels-ce7f540a104e
https://flutter.io/docs/development/platform-integration/platform-channels
【讨论】:
我不想为android和ios编写自定义代码:/【参考方案2】:如果您愿意通过对话框执行此操作,您可以使用image picker plugin,它允许您浏览相机的图片库,并且用户可以选择图片(包括最后一张图片)。
如果您希望完全以编程方式完成此操作,有人在此处实现了此功能的拉取请求:https://github.com/flutter/plugins/pull/676,但由于需要进行一些测试,因此尚未被接受。你可以从那个 PR 复制代码,或者添加一些测试,然后让它被 repo 接受!
【讨论】:
【参考方案3】:您可以尝试使用此库。 photo_manager
List<AssetEntity> assets = [];
_fetchAssets() async
final albums = await PhotoManager.getAssetPathList(type: RequestType.all);
final recentAlbum = albums.first;
final recentAssets = await recentAlbum.getAssetListRange(
start: 0, // start at index 0
end: 1, // end at a very big index (to get all the assets)
);
print(recentAssets);
setState(() => assets = recentAssets);
【讨论】:
以上是关于如何获取用户/相机拍摄的最后一张照片的主要内容,如果未能解决你的问题,请参考以下文章