Appclips与APP之间是如何共享数据的

如果用户想要安装完整版的app,那么clips和保存的数据都会被删除,但是相关信息在删除前会被迁移到app上。(需要把想要迁移的数据放进共享数据容器App Group Container中,而不是clips标准容器,标准容器会被删除,但共享容器在迁移未完成时不会被删除)而且摄像机、麦克风和蓝牙的授权也会被迁移(完整app会自动打开这三个权限);

[图片上传失败...(image-285adf-1604024311181)]

Snip20201029_5.png

如上是一个模拟器下面的资源文件,其中data存储的沙盒文件,可以用来进行本地存储,但是它会在用户删除应用以后,同时删除对应内容,而share中存储的是我们的共享数据,它不会随着应用的删除而删除。当我们在开发者账号中对我们的若干应用,或者appclips、widget等添加到同一个App Group中,那么他们之间就可以进行数据共享。

// 模拟器中单独运行appclips,并且一段时间不用后,下面两个路径都会删除(模拟器可以主动删除,删除后两个路径也都找不到)

2020-10-29 15:20:43.379175+0800 MyClips[6064:4504126] 沙盒路径====/Users/wbb/Library/Developer/CoreSimulator/Devices/B7F3C263-EC02-41B9-A699-8781AB2DE408/data/Containers/Data/Application/F2478815-8A10-4A04-B66F-C5374ED231B0

2020-10-29 15:20:43.401295+0800 MyClips[6064:4504126] 共享数据路径url === file:///Users/wbb/Library/Developer/CoreSimulator/Devices/B7F3C263-EC02-41B9-A699-8781AB2DE408/data/Containers/Shared/AppGroup/EC0760DB-5302-4114-9C44-FD442166DFEE/

// 在不删除appclips的情况下(此时上面的路径还是存在的),运行app

2020-10-29 15:22:40.287478+0800 AppClipsDemo[6076:4505203] 沙盒路径===/Users/wbb/Library/Developer/CoreSimulator/Devices/B7F3C263-EC02-41B9-A699-8781AB2DE408/data/Containers/Data/Application/3B48B156-959B-4856-90E0-65750B791BF4

2020-10-29 15:22:40.315964+0800 AppClipsDemo[6076:4505203] 共享数据路径url === file:///Users/wbb/Library/Developer/CoreSimulator/Devices/B7F3C263-EC02-41B9-A699-8781AB2DE408/data/Containers/Shared/AppGroup/EC0760DB-5302-4114-9C44-FD442166DFEE/

发现appclips中沙盒路径已经找不到了,但是App的共享数据路径盗用了appclips的路径(并没有重新生成和覆盖)

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。