leavesCZY / Matisse

A Image/Video Selector Implemented with Jetpack Compose(一个用 Jetpack Compose 实现的 Android 图片视频选择框架)
https://github.com/leavesCZY/Matisse/wiki
Apache License 2.0
768 stars 60 forks source link

仅选一张图片支持速选吗? #63

Closed LZRight123 closed 5 months ago

LZRight123 commented 6 months ago

当 maxSelectable = 1 时,如何设置成点了图片就回调,现在是要点下确定

leavesCZY commented 6 months ago

目前是不行的,都必须点确认才行

LZRight123 commented 6 months ago

目前是不行的,都必须点确认才行

明白了,期待更新~

leavesCZY commented 6 months ago

🙏🙏🙏

leavesCZY commented 5 months ago

此功能在 v2.1.0 版本已支持

LZRight123 commented 5 months ago

此功能在 v2.1.0 版本已支持

666 现在应用市场变严格了

  1. 在申请权限时需要弹蒙板申明 2.同时申请相机,相册权限,选照片换头像时,小米市场拒绝,需要先申请相册权限进去后 ,看到相机按钮点击再申请相机权限并弹蒙板。 不知道作者遇到过此问题没
leavesCZY commented 5 months ago

@LZRight123

我这几年都是在搞国外项目,倒是不会遇到过国内这么严格的审核要求。我讲下我的理解 1、这个问题你是可以在跳转 Matisse 前就按要求先申请好权限的。Matisse 作为一个通用的开源库,应该就只按照系统默认的权限申请流程来执行才对 2、默认情况下,通过 Matisse 来拍照其实是不需要用到 camera 权限的,你这里是不是因为 AndroidManifest 里有显式声明 Camera 权限导致的啊?这一块知识你可以参照我的文章:https://juejin.cn/post/7108420791502372895#heading-7

如果必须得声明 Camera 权限的话,建议在 Matisse 内隐藏拍照入口,在外部分别给用户提供 选择图片 和 拍照 的入口,按需来事先申请权限

LZRight123 commented 5 months ago

@LZRight123

我这几年都是在搞国外项目,倒是不会遇到过国内这么严格的审核要求。我讲下我的理解 1、这个问题你是可以在跳转 Matisse 前就按要求先申请好权限的。Matisse 作为一个通用的开源库,应该就只按照系统默认的权限申请流程来执行才对 2、默认情况下,通过 Matisse 来拍照其实是不需要用到 camera 权限的,你这里是不是因为 AndroidManifest 里有显式声明 Camera 权限导致的啊?这一块知识你可以参照我的文章:https://juejin.cn/post/7108420791502372895#heading-7

如果必须得声明 Camera 权限的话,建议在 Matisse 内隐藏拍照入口,在外部分别给用户提供 选择图片 和 拍照 的入口,按需来事先申请权限

现在是按照第1点在处理

WechatIMG31

关于第二点,因为有用到 PreviewView 项目得声明相机权限。

leavesCZY commented 5 months ago

难怪。那你在外部先申请好权限就好了

LZRight123 commented 5 months ago

难怪。那你在外部先申请好权限就好了

在外部申请权限只能一个一个的申请,得在里面点相机按钮才能再次申请权限,但是在里面点相机按钮,又没有蒙板提示用途。

话说你有没有交流群 我也想做出海

leavesCZY commented 5 months ago

没交流群喔。就像我上面说的,你可以在图片页面隐藏拍照入口,在外部分别给用户提供 选择图片 和 拍照 的入口,按需来事先申请权限呀

LZRight123 commented 5 months ago

没交流群喔。就像我上面说的,你可以在图片页面隐藏拍照入口,在外部分别给用户提供 选择图片 和 拍照 的入口,按需来事先申请权限呀

matisse 可以直接进行拍照不。这样的话就不需要用系统的,可以统一返回 MediaResource 也挺香

leavesCZY commented 5 months ago

有啊,wiki 都写得很详细了。。

Matisse 包含两种使用场景,可以组合使用或者是单独使用,这两种场景分别对应两个 ActivityResultContract

LZRight123 commented 5 months ago

有啊,wiki 都写得很详细了。。

Matisse 包含两种使用场景,可以组合使用或者是单独使用,这两种场景分别对应两个 ActivityResultContract

  • MatisseContract。展示系统相册内的图片和视频,支持同时启用拍照功能
  • MatisseCaptureContract。直接启动系统相机,拍摄照片

好的 感谢大佬。