我正在开发的iOS应用程序的原始计划是让除了存储在云数据库中的“组织”管理员之外的所有用户都可以免费使用。这些管理员每月支付订阅费用来维护这些组织,并且免费用户加入他们。组织的管理员是唯一可以接受新用户并设置用户权限的人。
但是,我意识到我无法从其他用户的角度检查管理员的订阅是否已过期,这意味着管理员可以获得免费试用,设置组织,加入从备用帐户,设置权限,取消订阅,并继续正常使用该应用程序而无需付费。目前,应用程序可以处理的唯一情况是管理员在订阅过期后尝试登录组织。
我计划通过为存储在数据库中的组织提供“活动”和“非活动”状态来避免此问题,但我仍然需要一种方法让应用程序识别订阅已过期并停用与用户关联的组织有问题。我不知道如何做到这一点,除了从管理员的角度来看,谁可以在订阅到期之前停止使用帐户,和/或将替代的非管理员帐户的管理委托给其他人。
我还意识到,这种特定的设置可能会违反Apple关于应用内购买的政策,因为由于付费用户的订阅过期,我实际上间接地从免费用户那里获取功能。如果是这种情况,我将不得不重新考虑我的应用程序的付款结构。我可以通过这种方式处理订阅吗?如果是这样,我怎样才能a)可靠地确保我的应用程序在其管理员的订阅用完时禁用组织,或者b)检查组织中的另一个用户是否尝试登录时管理员的订阅是否已用完?