小编sca*_*aly的帖子

仅当 iOS 13 可用时如何导入特定框架?

我们的应用程序支持 iOS 12 及更高版本,但是我们在应用程序中有两个新的本地框架“Jello”和“Wizdom”,但它们仅支持 iOS 13 及更高版本(因此它们可以使用 Combine 和 SwiftUI)。

该应用程序与 Jello、Wizdom、Combine 和 SwiftUI 的链接很弱。该应用程序的主要 BaseUI 模块是实际导入 Jello 的部分。BaseUI 支持 iOS 12 及更高版本,因此它与 Jello 等的链接也很弱。

但是,我们遇到了一个问题,即 BaseUI 由于以下错误而无法编译:Compiling for iOS 12.0, but module 'Jello' has a minimum deployment target of iOS 13.0.

如何在 iOS 13 可用的情况下使导入成为条件(即,如果 iOS 13 不可用,则不要导入它)?

(到目前为止,我发现的唯一解决方法是在 Jello 周围创建一个 Objective C 包装器并通过该包装器访问它,但这很笨拙且笨拙。我也尝试用它包装整个文件,#if canImport(SwiftUI) ... #endif但这也不起作用,因为它似乎这只是一个编译时检查。)

xcode frameworks swift ios13

8
推荐指数
1
解决办法
1013
查看次数

应用程序崩溃,但仅在 iOS 14 上且仅在通过 MDM 安装时发生

我们的 iOS/iPadOS 应用程序遇到了极其奇怪的崩溃。

\n

我们最新版本中的一些重大变化:

\n
    \n
  • 在 Big Sur 11.6 上使用 Xcode 13.0 构建
  • \n
  • 放弃对 iOS 13 的支持
  • \n
  • 将 Firebase 更新至 8.9.1
  • \n
  • 使用最新的 fastlane 版本构建
  • \n
\n

好吧,这是奇怪的部分:我们的应用程序对于直接从 iOS 14 和 15 上的 App Store 或 TestFlight 下载并安装应用程序的用户来说运行良好。

\n

然而,对于 iOS 14 用户来说,该应用程序在启动时会崩溃,这些用户通过 MDM 从 App Store(公开或私人发布,无关紧要)将应用程序推送到手机,并从一个对话框中安装它,例如“AirWatch 即将发布”。从 App Store 安装 REDACTED。您的 iTunes 帐户不会因该应用程序而付费。”

\n

那么,自己安装后启动应用程序与 MDM 安装后启动应用程序\xe2\x80\x94 之间有什么区别,在这两种情况下,应用程序都源自 App Store?

\n

这是一个崩溃日志示例:

\n
{"app_name":"REDACTED","timestamp":"REDACTED","app_version":"REDACTED","slice_uuid":"REDACTED","adam_id":REDACTED,"build_version":"REDACTED","platform":0,"bundleID":"com.REDACTED.REDACTEDapp","share_with_app_devs":0,"is_first_party":0,"bug_type":"109","os_version":"iPhone OS 14.6 (18F72)","incident_id":"REDACTED","name":"REDACTED"}\nIncident Identifier: REDACTED\nCrashReporter Key:   REDACTED\nHardware Model:      iPhone11,8\nProcess:             REDACTED [1561]\nPath: …
Run Code Online (Sandbox Code Playgroud)

crash xcode mdm ios14 xcode13

5
推荐指数
0
解决办法
1219
查看次数

在合并中,如何创建一个发送一个值但从未完成的发布者?

在合并中,如何创建一个发送一个值但从未完成的发布者?

在下面的代码中 receiveCompletion 被调用,但我不希望它这样做:

Just(1)
    .sink(
        receiveCompletion: {
            print("Completion: \($0)")
    },
        receiveValue: {
            print("Value: \($0)")
    }
)
Run Code Online (Sandbox Code Playgroud)

我怎样才能只发出一个值但不完整......?

swift combine

2
推荐指数
1
解决办法
4991
查看次数

标签 统计

swift ×2

xcode ×2

combine ×1

crash ×1

frameworks ×1

ios13 ×1

ios14 ×1

mdm ×1

xcode13 ×1