我的 iOS 应用程序使用 AVFAudio 框架为用户提供语音反馈。我希望这个应用程序也能在 Apple Silicon Macs(当中语音反馈并不是必要的)上运行。
然而,仅仅导入该框架后,上传到 App Store Connect 之后会收到以下警告电子邮件:
我们已经识别出了您应用程序“App Name”7.0(24)中的一个或多个问题。您的交付成功,但是您可能希望在下一次交付中更正以下问题:
ITMS-90863:Apple Silicon Macs 支持问题 - 应用程序链接到未在 Mac 上存在的库:
/System/Library/Frameworks/AVFAudio.framework/AVFAudio
我猜测这意味着该应用程序无法在 Mac 上运行。
我应该如何使该应用程序能够在 iOS 上使用 AVFAudio 框架,并且仍然可以在 AS Macs 上(有或没有 macOS 中的该框架)运行?
相关代码是:
import AVFoundation
class Speaker {
var speechSynth: AVSpeechSynthesizer
class func establishAudioSession() {
do {
try AVAudioSession.sharedInstance().setCategory(.playback, options: [.interruptSpokenAudioAndMixWithOthers, .duckOthers])
try AVAudioSession.sharedInstance().setMode(.voicePrompt)
try AVAudioSession.sharedInstance().setActive(true, options: [])
** 更新 / 澄清:**
请注意,我的项目不包括多个目标。如果有多个目标,这将相当简单。我想知道是否有一种利用新 AS Macs 能够在没有单独目标的情况下运行为 iOS 构建应用程序的方法来实现这一点。
使用此框架时,这是否可能?
** 更新 2:**
我已经向苹果提交了支持请求,他们的第一个建议是将
import AVFoundation
替换为
import AVFAudio
然后重新上传到 App Store Connect,但在尝试这种方法之后,我又收到了相同的警告电子邮件。当我再次听到他们的回复时,我会发布更新(或希望能够得到答案)。