有个 macOS 桌面应用用 js 来同步 iCloud 的问题想请教路过的大佬。

2022-08-20 20:19:39 +08:00
 ChrisFreeMan

我今天早上起来一大早闲的没事干,通了一遍 react 的入门教程,顺便和 react 一起组合用了一下 tailwind c s s ,我发现这样的开发体验还是挺有趣的, 用纯 js 来开发应用,可以用回我最喜欢的 vim 来开发了。而且网上资料繁多,一艘就能找到想要实现的样式。我就想着试一试用 react + electron + tailwind + ts 来开发一款应用玩一玩。

目前只有一个障碍阻挡了我,我想用实现最基础的无账号 iCloud 同步,似乎没有办法做到。 苹果的 CloudKit 只有两种 js 的包,一种是服务端对服务端的同步,有一把公共的同步密钥,而我不想搭建一个服务端来增加额外的维护成本,放在包里的话,由于 electron 反编译非常简单(一条命令就解开了),这个肯定是不安全的。而且只能同步公共云数据库。

还有一种是网页登录的方式,但是又多了一步登录苹果账户登录的步骤,比较麻烦,而且也无法确定能否再 electron 中顺利使用这个包。

请问有没有什么方法可以实现无账号多设备同步,没有的话我就放弃了。

9342 次点击
所在节点    iDev
10 条回复
lscho
2022-08-20 21:48:28 +08:00
搭个服务端多简单的事。。。现在很多免费的 serverless 环境可以用,非常适合做这个。
ChrisFreeMan
2022-08-20 21:55:07 +08:00
@lscho 完全免费吗,我最怕免费的东西了。。那种不用绑定信用卡的免费吗
lscho
2022-08-20 22:30:24 +08:00
@ChrisFreeMan 肯定是完全免费,国内的很多要实名。找国外的吧,还有好多提供托管 nodejs 的环境,都可以用。
ChrisFreeMan
2022-08-20 22:55:14 +08:00
@lscho 好吧,假设这个行得通,那么问题就在怎么在用户多个设备中找到一个共同的用户 ID 来绑定数据了(无登录情况下),我还是看看有没有更好的解决方法。
metrue
2022-08-21 11:14:19 +08:00
不太懂楼主的意思,对于 iCloud ,无账号可以同步么?使用 iCloud 的前提不是需要有个 Apple 账号么?
ChrisFreeMan
2022-08-21 11:33:00 +08:00
@metrue 无账号登录是指在 macOS 已经登录 Apple 账户的前提下,无需二次登录 Apple 账号。在已经开启 iCloud 的情况下,默认可以使用系统 iCloud 的同步功能。集成在 Xcode 项目中的 CloudKit 是可以做到这一点的。
metrue
2022-08-21 12:32:06 +08:00
@ChrisFreeMan

清楚了,这在浏览器(或者 Electron) 应该不行。我之前在尝试过 CloudKit JS ,需要通过 Sign in with Apple 之后来完成相关的数据操作.
ChrisFreeMan
2022-08-21 13:11:28 +08:00
@metrue 😢我知道那个
KunMinX
2022-08-22 00:49:11 +08:00
macOS 下可看看 shell 脚本是否具可行性
ChrisFreeMan
2022-08-22 06:09:07 +08:00
@KunMinX 好主意,回头翻一翻

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/874229

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX