[英]Testing the transition from app clip to full app
我的应用程序已经在应用程序商店中有一段时间了。 我现在想添加一个应用剪辑,它有一个按钮,可以让用户从应用商店下载完整的应用(使用SKOverlay
)。 另外,我想让app clip给完整的app传递参数(这一步很关键)。 例如,用户名将传递给完整的应用程序并显示在主活动中。 这是通过将此信息放入 App Clip 的shared user defaults
中,并从完整应用程序的shared user defaults
中提取此信息来完成的。
我创建了具有这些功能的 App Clip,现在想测试从 App Clip 到完整应用程序的转换。
我尝试了 3 种不同的方法,但没有一种能够让我模拟完整的 app-clip-to-full-app 体验:
_XCAppClipURL
环境变量进行测试。 SKOverlay 弹出,但它实际上并不能使我打开应用程序商店。shared user defaults
中提取用户名所需的代码。有没有办法让我在不向应用商店发布最新版本的情况下测试这个转换?
编辑:我将 UserDefaults 与应用程序组一起使用。 我在完整应用程序和应用程序剪辑的“签名和功能”部分定义了一个同名的应用程序组。 并添加了以下代码:
在 App Clip 的场景委托中:
let username = "Oded"
guard let sharedUserDefaults = UserDefaults(suiteName: "group.fruitapp.appClipToFullApp") else {
return true
}
if sharedUserDefaults.string(forKey: "username") == nil {
sharedUserDefaults.set(username, forKey: "username")
}
return true
在完整应用程序的应用程序委托中:
guard let sharedUserDefaults = UserDefaults(suiteName: "group.fruitapp.appClipToFullApp"),
let username = sharedUserDefaults.url(forKey: "username")
else {
print("Could not find the App Group or the usename from the app clip")
return
}
print("username is \(username)")
//Do more stuff
我也在努力测试这种转变,并认为它在某一时刻是不可能的。 测试不仅可能,而且实际上非常重要,这样升级体验才会顺畅。
几点:
_XCAppClipURL
),然后通过在同一设备上构建您的完整应用来模拟升级。UserDefaults
API。 注意:设置部分很棘手,如果您在构建完整的应用程序后没有看到预期的数据,则说明设置不正确。要检查的一些事项:
这两件事可能很明显,但我弄错了。
SKOverlay
是一个令人满意的 App Store 链接。
不可能模拟那个确切的流程(因为在调试时SKOverlay
什么都不做),但我也不认为这是必要的。
你可以做的测试你的流量是通过Xcode安装你的App Clip,go通过体验,然后通过Xcode安装完整的应用程序。
更新:
如果您希望您的 Clip 和您的 App 通过 User Defaults 共享数据,您将不得不使用App Groups 。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.