我正在try 编写一个非常简单的扩展来显示贴纸.苹果的样例代码都不能在设备或模拟器上运行.我不知道这是苹果方面的完全倒退,还是我的设置所特有的.控制台显示的唯一错误消息是:

Error creating the CFMessagePort needed to communicate with PPT.

我使用了这个示例代码:creating a sticker app,还在文件&>新项目&>贴纸打包应用程序中试用了普通的‘贴纸打包应用程序’.在这两种情况下,iMessages都会在扩展列表中显示我的应用程序的图标,但不会显示任何图像.我试过根据指南here使用不同大小的图像,但贴纸仍然拒绝显示.

Apple是否需要一个未在示例代码或Xcode模板中翻转的新授权/设置?

我使用的是Xcode 15.1和iOS 17.2

推荐答案

这里有两个独立的令人沮丧的问题.

  1. 对于贴纸包(File > New > Project > 'Sticker Pack App'),您必须填写全套图标(在项目树中, Select "贴纸",然后 Select "iMessage应用程序图标").对于未设置的图标,您添加到贴纸包中的任何图像都不会显示.

  2. 对于iMessage扩展,添加图标是不够的.为iMessage扩展进行开发真的很繁琐.我发现最好使用16.4模拟器,而不是最新的(今天是17.2).通过转到Window > Devices and Simulators并点击侧边栏左下角的加号图标来添加模拟器.然后,这一点至关重要,do not tap on either button in the modal that pops when you build and run the first time.该模式如下所示:

如果你点击这两个按钮中的任何一个,那么下次你运行你的扩展时,用户界面将不会加载.我不知道这是为什么,可能是一些隐私标志被翻转了.相反,向下滑动模式

Ios相关问答推荐

在许多UIButton中对齐文本,即使SF Symbols(或其他图像)具有不同的宽度?

在某些情况下,UIHostingController在自动调整时不能调整大小

SWIFT根据地球坐标修改 node 旋转

删除领域中的cartItem时出现问题

如何在SwiftUI中以一定Angular 绘制直线(&A)

SwiftUI绑定到特定的一个或多个枚举 case

清除/删除 NavigationController 中的多个 ViewController

发生错误.请稍后重试.在 App Store 连接中

.frame() 修饰符的位置如何影响视图?

为什么@FetchRequest 在删除时不更新和重绘视图?

将值传递给导航链接视图中的文本框

为什么我的应用在 Testflight 中没有下载 dSYM 按钮?

实现一个将块用作回调的方法

如何判断 `NSManagedObject` 是否已被删除?

如何在 Swift 中使用包含多个值的查询参数构建一个 URL?

iOS - 确保在主线程上执行

Storyboard Segue 从视图控制器到自身

Swift - 获取设备的 WIFI IP 地址

AVAudioRecorder 抛出错误

Xcode中的终端窗口?