gpt4 book ai didi

ios - 范围内未找到WidgetCenter

转载 作者:行者123 更新时间:2023-12-01 15:55:07 34 4
gpt4 key购买 nike

我正在为iOS 10+构建iOS应用。该应用程序在Debug配置中构建良好,但在Release中无法编译引用WidgetCenter的快速源代码。
即使我导入Cannot find WidgetCenter in scope并有选择地嵌入框架,它也会输出错误WidgetKit

import Foundation
import WidgetKit

class MyWidgetCenter: NSObject {

@available(iOS 14, *)
func reloadTimelines(_ kind: String) {
// this line causes error: cannot find 'WidgetCenter' in scope
WidgetCenter.shared.reloadTimelines(ofKind: kind)
}

@available(iOS 14, *)
func reloadAllTimelines() {
// this line causes error: cannot find 'WidgetCenter' in scope
WidgetCenter.shared.reloadAllTimelines()
}
}
编辑:
当我设置 Build Active Architecture Only标志时,它对于Release配置中的模拟器和我的连接设备(iPhone XR)都可以很好地构建。只有在为多种体系结构构建时,它才无法编译。我没有考虑的 WidgetKit有体系结构限制吗?

最佳答案

我相信WidgetKit应该支持armv7架构,但是无法为WidgetCenter编译armv7的用法。
我的解决方法是包装WidgetCenter语句,以仅支持armv7之外的我需要的体系结构

class MyWidgetCenter: NSObject {

@available(iOS 14, *)
func reloadTimelines(_ kind: String) {
#if arch(arm64) || arch(i386) || arch(x86_64)
WidgetCenter.shared.reloadTimelines(ofKind: kind)
#endif
}

@available(iOS 14, *)
func reloadAllTimelines() {
#if arch(arm64) || arch(i386) || arch(x86_64)
WidgetCenter.shared.reloadAllTimelines()
#endif
}
}

关于ios - 范围内未找到WidgetCenter,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/63065117/

34 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com