App Group 使用说明(ios13)

app group用于app间数据共享,也用于扩展与宿主app间的数据共享

1. 添加App Group的方法

在这里插入图片描述
正如你所看到的,选中项目跟着步骤走,就可以显示出app group ,接着直接将其拖拽到对应TARGET中,如果你的ID没有创建过App Group 那么这个时候里面的内容是空的,这个时候你可以直接点击“+”按钮在弹出的菜单中输入你要创建的App Group的名字(即entitlements),确定后就可以在刚才拖拽出来的App Group的里面显示出当前你已经添加的组的标识符,即名称。如果你确定将其使用在当前项目中,那么将其选中即可。同理,在你其他的app的项目或者是你的扩展中也如此添加App Group并使用相同的名称,于是他们就可以共享数据了。
在这里插入图片描述
当你在洁面中点击了其他地方,看不见添加App Group的窗口时候,莫慌!像上图那样直接点击右上角的“+”按钮就可以再次显示出来。

2.在代码中使用数据共享

在这里插入图片描述
这里通过文件管理器的默认对象在App Group中共享目录中创建了文件,在这里可以存取各种文件,数据库文件,json, xml,framework等。可以复制各种文件到App Group的共享目录,然后在扩展或者我们自己的其他app中拿取出来,实现我们多app数据共享。
在这里插入图片描述
这里呢使用的是userDefault以SuitName为标识符的实例化对象进行数据的存取

使用说明

App Group容器只是在宿主app运行期间才存在,其中的容器用于扩展与宿主的文件共享,宿主被关闭了,共享也就没意义了。
以上来自于实际测试,测试过程是:在宿主app运行期间,点击其中的按钮弹出模态视图控制器,进行数据填充。完成后保存数据到App Group容器中的文件中,以供today extension扩展进行数据使用。只要将宿主app杀掉后重启启动宿主app,today extension 中已经显示的数据就完全没有了。单纯将宿主app杀掉不重启,today extension的任然hi显示之前的内容。由于宿主app中显示的数据也是从app group中的文件中取出来的,所以数据也没了。

由于这个共享机制的特殊性,这个容器不能用来长期保存文件!!!
应该将文件存储到宿主app的文件夹中,可以长期存储。today extension展示的数据量较少,在合适的时候将其需要的数据搬运到app group中!

AppGroup 是 Flask 中用于分组管理蓝图的类。蓝图是一种将应用程序划分为模块化组件的机制,可以更好地组织和管理代码。 通过使用 AppGroup,可以将相关的蓝图分组到一个命名空间下,并且可以对该命名空间进行统一的操作。例如,可以将多个蓝图注册到一个 AppGroup 中,并在需要时一次性注册或注销这些蓝图。 以下是一个使用 AppGroup 的示例: ```python from flask import Flask from flask import Blueprint from flask.cli import AppGroup app = Flask(__name__) group = AppGroup("mygroup") @group.command("hello") def hello(): print("Hello from mygroup!") blueprint1 = Blueprint("blueprint1", __name__) blueprint2 = Blueprint("blueprint2", __name__) app.register_blueprint(blueprint1) app.register_blueprint(blueprint2) group.add_command(hello) app.cli.add_command(group) ``` 在上面的示例中,我们创建了一个名为 "mygroup" 的 AppGroup,并定义了一个名为 "hello" 的命令。我们还创建了两个蓝图 blueprint1 和 blueprint2,并将它们注册到应用程序中。 最后,我们通过 `group.add_command(hello)` 将 "hello" 命令添加到 AppGroup 中,并通过 `app.cli.add_command(group)` 将 AppGroup 添加到 Flask 应用程序的命令行接口中。 这样,我们就可以通过命令行运行 `flask mygroup hello` 来执行 "hello" 命令,或者运行 `flask mygroup --help` 来查看可用的命令列表。 通过使用 AppGroup,我们可以更好地组织和管理我们的蓝图,并将它们以逻辑上相关的方式进行分组。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值