举个例子,微信/Telegram/Signal 这种不能调用系统内部相册选择相片的 IM 软件,至今没(至少我没没找到)办法在应用内发送一张在 Google Photos 内却没保存到本机的相片。
这点 iOS 做得就非常好,深度和系统绑定,哪怕未下载的照片也会在显示这些应用的选择相片界面里(角上有一个标志),当你发送时会自动帮你下载。
另外一个场景,Obsidian (一款笔记软件)的同步文件夹,竟然无法直接选择 Google Drive 内的文件夹,也就是说我需要一个 DriveSync 来做同步,也即手动克隆一个该文件夹的副本在本地,然后在 Obsidian 中选择这个文件夹才能实现我需要的功能。
仔细想了想,这些案例上,谷歌和应用开发者可能要各打五十大板:
用安卓的朋友对上面的问题,有没有好的解决方案呢?
1
Mbb38C3HtyZydTt7 2023-07-14 21:59:59 +08:00
可以从谷歌相册里面选中图片,然后再分享到 Telegram
|
3
ltkun 2023-07-14 22:10:02 +08:00 via Android 3
很简单的道理 因为谷歌相册和安卓手机厂商不是一家 但是你换成任意一家提供云服务的品牌比如华为小米 操作逻辑就和 iOS 差不多了 不知道亲儿子 pixel 怎么操作的
|
4
zwzwzwzwzxt 2023-07-14 22:39:42 +08:00
@ltkun 手持 pixel 7 pro ,实测也不行
|
5
zwzwzwzwzxt 2023-07-14 22:42:54 +08:00
@zwzwzwzwzxt 我指的 telegram ,其他的提到的软件我都没用过。。
|
6
dobelee 2023-07-14 22:51:27 +08:00
没看懂什么意思? WeChat 能直接发送 GooglePhotos 里的照片?
|
7
oIMOo 2023-07-14 22:56:08 +08:00 3
@dobelee #6
如果是 iOS, 用户将照片都上传到 iCloud (这时本地的照片删除,只留一个指向服务器的快捷方式)。打开微信选择图片时,可以选择本机的快捷方式,系统会自动下载对应图片,然后传给指定的微信联系人。 换到 Android ,用户将照片都上传到 Google Phones/Drive (同理,本机不再有照片本体)。打开微信选择图片时,没办法完成像上述在 iOS 一样的操作。 我是这么理解的。 |
8
WebKit 2023-07-14 23:01:17 +08:00 via Android 1
@oIMOo 因为 Google Photos 对 android 系统来说只是一个第三方软件,很其他的软件并没有什么区别,你可以试试,就像 3 楼说的,手机厂商自带的云服务是可以做到你说的操作的,系统自带的相册可以选取没有下载的图片
|
9
xymeng16 OP @WebKit 我的一加不行我能理解,就像你说的 Google 只是个第三方,我朋友的 pixel 也不行,pixel 应该算是谷歌自己家的。😓
|
10
kx5d62Jn1J9MjoXP 2023-07-14 23:12:34 +08:00 via Android
telegram 可以的
|
11
xmumiffy 2023-07-14 23:15:33 +08:00 via Android
tg:发送文件:浏览内部储存器
|
12
kx5d62Jn1J9MjoXP 2023-07-14 23:22:30 +08:00 via Android 5
Google photos 对外提供了图片选择器,并且符合系统的
storage access framework 标准,这个东西从 Android4.4 开始就有了 https://developer.android.com/guide/topics/providers/document-provider 任何云相册,云盘都可以在这个框架内提供内容 app 只要打开这个选文件/图片的系统 UI ,就可以选择所有云相册的照片 不得不说这个东西很丑很丑 而且主流 App 很早就开始在 App 内置从本地存储选图的功能 所以国外的良心 App 也只会把打开系统选图的选项放在最后一个位置 比如 telegram 要在选图界面的右上角菜单里选择 Twitter 在选图的文件夹下拉列表的最后一个 |
13
NICEghost 2023-07-14 23:27:04 +08:00
把你的华为云相册和和和谐 OS 硬绑在一起不能分开就很好
|
14
dobelee 2023-07-15 00:28:30 +08:00
@oIMOo 原来你说 iCloud ,我以为 iOS 可以选择 GooglePhotos 。个人觉得 iCloud 真的难用,每次打开图片选择都卡出翔,v 站也经常看到人吐槽,没想到有人喜欢。😅
|
17
RikkaW 2023-07-15 01:24:49 +08:00 via Android 2
古时候允许直接访问文件系统,而非必须使用系统组件来选择文件,这就成了泼出去的水永远也收不回来。
为什么不行呢? 虽然通过 fuse 加很多特技,的确可以实现把 Google Photos 和 Drive 的文件显示在文件系统中,但是一旦遇到奇奇怪怪情况就会造成全部文件都要下载一次的结果。例如,许多应用都自己实现图片选择器,并且缩略图是亲自读取文件生成,这样全部的图片都要下载一次。 所以呀,除非某个版本开始彻底禁止直接访问文件系统,不然这辈子不可能( |
18
Biggoldfish 2023-07-15 02:14:39 +08:00 via Android 2
Telegram 选图的时候右上角 3 dot 里选择 Open In - Photos 是可以发送 GPhoto 里不在本机的图片的
Android Photo Picker 是支持这些特性且不需要 Storage 权限的,微信这种非要自己造一个那也没辙 https://android-developers.googleblog.com/2023/04/photo-picker-everywhere.html?m=1 |
19
chutsetien 2023-07-15 03:34:07 +08:00 1
试了一下 Skype, Element, Signal 都行而且很容易找到,tg 没找到,不过楼上诸位说也行,因此应该是行的,就是有的 app 把这个功能藏得比较深不太好找罢。
|
20
xymeng16 OP @chutsetien signal 在哪里,我找了半天也没找到。
|
21
rrfeng 2023-07-15 05:49:34 +08:00 via Android
我记得曾经微信有个版本支持的,后来不见了。
|
22
Yzh361 2023-07-15 06:04:42 +08:00 via Android 1
iOS 真的难用… 文件系统不开放… 很多操作无法实现… 没法调用的太多了…
|
23
ltkun 2023-07-15 07:30:56 +08:00 via Android
@ssynhtn 还真可以 就是多点几下手指哈 不仅集成了谷歌相册 而且还有各种支持的 app 图库和文件
|
24
terrytw 2023-07-15 07:35:48 +08:00
说到集成
为啥 microsoft to do 到现在都不能自动在 outlook 里增加任务对应的日历事件 |
25
zhaoyeye 2023-07-15 08:34:46 +08:00
为了个人的隐私,我觉得任何 IM 可以直接访问我的云盘数据都不安全,尤其是微信这种毒瘤
|
26
vcn8yjOogEL 2023-07-15 09:05:30 +08:00 via Android
相册有选择器
云盘确实不行,它是独立的 App 储存,而不是直接作为一个文件夹处理 |
27
solitude511 2023-07-15 10:16:38 +08:00 via Android
这根本就不是一个逻辑吧?
iOS 里的相册是系统相册,且是唯一的。 安卓里的谷歌相册只是一个相册应用,你还可以安装任意你喜欢的相册,哪怕谷歌相册是原生安卓默认的他依然是系统内可被替换的选项。 所以从第三方 app 候选照片时自然不能直接选择谷歌相册里的照片啊。 |
28
vtemp249 2023-07-15 10:32:24 +08:00
你说的 Obsidian 不那么做,显然是 Obsidian 的问题,不愿意很轻易在移动端上被别的云服务绑定,不然自家的云服务怎么卖?
|
29
pista 2023-07-15 10:40:14 +08:00 via Android
pixel 使用 tg 走内部存储可以调用 Google photos 和 drive 的文件,即使没有下载的(会下载)
|
30
pista 2023-07-15 10:43:05 +08:00 via Android
没有再等一个十年,照片选择器才刚到来呢 https://v2ex.com/t/833116
|
31
Linioi 2023-07-15 11:36:14 +08:00
上面好像大多数是技术层面分析,但其实还有一个很重要的问题是 AOSP 名义是一个开源自由的项目,Google Photos 这样的私有软件是不应该也不能和系统高度集成/捆绑的。前段时间 AOSP 的短信被砍换上 Google 自己的短信已经骂声一片了,如果让 Google Photos 按照 OP 说的和 iOS 相册一样高度集成,那或许得是 Android 结束开源的时候了。
|
32
williamx 2023-07-15 12:09:32 +08:00
这是不同的哲学,没有孰优孰劣。
|
33
wwxwlw 2023-07-15 13:10:08 +08:00
File>Internal Storage>Google Photos
Google Drive 也会显示在内部存储中 |
34
janus77 2023-07-15 13:14:13 +08:00
因为 google photo 是独立项目,和安卓系统本身就是两个东西,虽然属于同一公司,但是他们各自负自己盈亏和发展路线。
苹果那玩意儿,基本上就是系统的一个附属服务,当然跟着统一战略走啊 |
35
cairnechen 2023-07-15 13:18:17 +08:00
@Biggoldfish
笑死,iOS 也提供了不需要权限的系统级接口: https://developer.apple.com/documentation/photokit/selecting_photos_and_videos_in_ios 比如 Notion App 就是用的就是这个,但是作为 V2EX 公认的 IM 典范 Telegram 也没有用这个接口,而是选择了微信一样,有想过为什么吗? |
36
ZeroDu 2023-07-15 15:14:20 +08:00
安卓这边确实很少有 APP 有支持调用系统文件选择的功能。
|
37
chutsetien 2023-07-15 15:57:06 +08:00
@xymeng16 我的错,点那个加号后然后点 File 我看到上边有 Google Drive 的图示就以为右滑就有 Photos, 结果并没有……看来 Signal 选择接入 Drive 但不接入 Photos. 非常抱歉,我平时几乎不用手机,所以这些总是浅尝辄止,因此给出了错误的回复。
|
38
zzzsy 2023-07-15 17:24:48 +08:00
Android 新版的图片选择器也没这个
|
39
NieKing 2023-07-15 17:45:30 +08:00
额,Android 现在已经不是谷歌的主要挣钱项目了。。。
|
40
Jirajine 2023-07-15 17:48:34 +08:00
@cairnechen “作为公认 IM 典范的 telegram”可以不给相册权限,使用系统选择器。某小而美国民应用则不行,当然也可能是入口藏太深我没找到。
|
41
cairnechen 2023-07-15 20:00:27 +08:00
|
42
Jirajine 2023-07-15 20:03:25 +08:00
@cairnechen iOS 的行为我不知道,你可以参考一下 Android:打开内置相册选择,上滑展开,右上角三个点菜单就可以用系统文件选择器了。
|
43
cairnechen 2023-07-15 20:05:48 +08:00
@Jirajine 抱歉,我没看到 iOS 有这个选项,我还特意从设置里面找了一下,也没有,无论是 Gallery 还是 File->Select from Gallery 都会引导你到应用设置里打开照片权限
|
44
lslqtz 2023-07-15 20:07:04 +08:00
@cairnechen 受限模式下, 右上角有一个管理按钮, 可以往受限加入更多图片.
|
45
cairnechen 2023-07-15 20:08:30 +08:00
@lslqtz 什么是受限模式,怎么进入?
|
46
Jirajine 2023-07-15 20:20:42 +08:00
@cairnechen 可能因为 iOS 的限制和交互方式不同吧,iOS 可以让应用用内置的相册选择的同时只能访问你允许的图片,可能就不再需要使用外部选择器了。
这比 Android 好,它让应用不再能强迫用户给予所有权限。https://www.andyibanez.com/posts/understanding-limited-photo-library-ios-14/ |
47
cairnechen 2023-07-15 20:28:35 +08:00
@Jirajine
首先,iOS 很早就提供了系统图片选择器,而仅允许访问选中照片的权限是 iOS14 才加上的,在那之前而 Telegram 一直用的是请求照片权限的方式,因为系统层面有限制所以不需要不构成 Telegram 这么做的理由 其次,明明有更优的,对用户隐私更安全的,不需要权限的方式,为什么不用,作为 VE2X 公认 IM 典范不应该做到最好么? |
48
cairnechen 2023-07-15 20:33:01 +08:00
@Jirajine 另外,仅允许选中照片这种限制,会让用户要发送一张新图片的时候非常痛苦,因为每次想发送一张新的照片,就得先调整选中照片的范围,有很多人都因为懒得操作最后放开了访问全部照片的权限
|
49
flyqie 2023-07-15 21:13:12 +08:00
你的设备是谷歌亲儿子吗?
是的话,是坏事。 不是的话,是好事。 |
50
Jirajine 2023-07-15 21:17:04 +08:00
@cairnechen 以前是否支持系统文件选择器我不知道,但在没有选择照片访问限制的 Android 上实测是支持的。有了这个限制,是否支持其实已经没有了隐私方面的好处,使用系统的选择器在应用的视角是不是更优也是一个有争议的问题。
至于麻烦问题,以前微信强制要求存储权限的时候,把微信装沙盒里,需要发照片手动去文件管理器里把照片复制到微信能访问的目录再发送。 iOS 这个改动,让“公认典范 IM”和“国民小而美”在这方面的行为端平,还是挺好的。 |
51
Jirajine 2023-07-15 21:24:07 +08:00 1
@cairnechen tg 被“公认 IM 典范”主要还不是隐私原因,作为一个需要手机号注册、且默认没有端到端加密的的 IM ,在隐私方面和微信其实没有太大的差距。它被认为更好的主要在于其他体验方面,如可靠的实时多端云同步,基本上是微信被骂的最惨的地方了。
至于认为它更安全,其实不是技术意义上的安全。就和在中国用 Google 在美国用华为一样,并不代表哪一个更安全和隐私友好,哪一个为特定用户提供了实际上的安全性是政治原因。 |
52
zachary99 2023-07-15 22:02:50 +08:00 via Android
大数据的商业价值在那里,已经在 Google 云端的数据,谷歌肯定不想其他第三方能获取到。
|
53
Perolong 2023-07-16 11:28:58 +08:00 1
对于第一点我感觉是不大可靠的,一开始我也和你一个想法,就是这些不用系统相册自己搞相册选择的都是不优雅的,说难听点叫流氓行为,于是我就用 intent action_pick 去选图,反正我的业务需求就是选张图然后上传,也不做剪裁,只压缩,然后我后台发现居然还有没有系统相册的用户,存文件我也用了很科学的 SAF ,结果有的 rom 各种阉割和魔改 saf ,这条路也走的很难受。作为开发的角度来说,让大家都能用和做 N 个判断让大家可能都能用,肯定更倾向于前者,这就是为啥很多商业化的 android 软件倾向于自己来做相册选择(虽然做的很 shi )
上面有人提到的 Photo Picker 是 Google 对选图的一种新尝试,这本身是好的,但是我用在自己的软件上很多用户抱怨,因为这个 Photo Picker 弹出的 Google 选图组件在相册这一栏只显示固定的几个系统相册,没展示用户自己的相册,用户翻自己的老图或者用户存图很频繁的话,选图只能傻瓜一样的从第一个 tab 疯狂往下滑,无奈只能加个开关让用户自己选择用旧方式还是这个新 api ,我是个人的软件是会加开关,那大公司的软件策略肯定直接把这个新 api 否了,类似的这些矛盾太多太多了 |