我试图在我的iOS swift应用程序中为聊天功能实现MessageKit(JSQMessagesViewController的替换)。我遵循了raywenderlich教程。我使用Pods进行安装,并逐步遵循了本教程。我的消息正在显示。根据本教程,为了隐藏用户头像,我将viewController设置为messagesLayoutDelegate
和的委托messagesDisplayDelegate
。
//Inside view did load, i set the delegates, along with data source
messagesCollectionView.messagesDataSource = self
messagesCollectionView.messagesLayoutDelegate = self
messagesCollectionView.messagesDisplayDelegate = self
Run Code Online (Sandbox Code Playgroud)
但是,MessagesLayoutDelegate
没有调用的委托函数。
我想隐藏用户头像,所以我在viewController中采用了协议
extension ChatLogVC_MessageKit: MessagesLayoutDelegate {
func avatarSize(for message: MessageType, at indexPath: IndexPath,
in messagesCollectionView: MessagesCollectionView) -> CGSize {
//return zero size for hiding avatar, but this function is not being called.
return .zero
}
func footerViewSize(for message: MessageType, at indexPath: IndexPath,
in messagesCollectionView: MessagesCollectionView) …
Run Code Online (Sandbox Code Playgroud) 我正在尝试将档案上传到应用商店连接。存档上传成功。当我去应用商店连接并在活动部分看到它时。它说“此版本无效”,带有红色感叹号。我检查了我的开发者电子邮件并收到了这条消息
`我们发现您的应用程序最近交付的一个或多个问题,“应用程序名称”。请更正以下问题,然后重新上传。
无效的捆绑包 - Info.plist 应使用包含单个平台的数组指定 CFBundleSupportedPlatforms
我搜索了解决方案,发现我的 info.plist 应该包含一个键“CFBundleSupportedPlatforms”,其中一个数组值只有一个条目“iPhoneOS”。
添加了所需的键值
所以我在 info.plist 中添加了所需的键和值。我再次制作存档并提交。但我再次面临同样的问题。红色感叹号出现在“活动”部分,当我点击这个标记时,它说这个版本无效
我寻找解决方案。我找到了涉及包含模拟器平台的嵌套包的答案。但这些与我的情况无关
谢谢你帮助我。
我集成了UNNotificationServiceExtension,它允许我在推送通知呈现给用户之前更改其标题。
\n我已遵循苹果开发人员文档中提到的指南,并浏览了 SO 的相关问题,但似乎没有任何效果。
\n当收到推送通知时,有时不会触发我的通知服务扩展,主要是当我删除并安装应用程序的新副本时。在这种情况下,断点也不会被触发。系统似乎忘记触发服务扩展。我选择了正确的扩展方案,而不是主要的应用程序目标。我的通知标题没有按照我的逻辑更新。
\n注意:这是在 iOS 14 上发生的。在 iOS 12 上,它工作正常。这是 iOS 的错误吗?
\n这些线程中已经对此进行了讨论。
\nhttps://developer.apple.com/forums/thread/67202 \n https://developer.apple.com/forums/thread/125987
\n任何帮助将不胜感激。\n谢谢
\n我做了一个示例项目来演示这个问题。您可以从Github Repo下载它
\n目前我正在开发一个项目,启动该项目的开发人员曾经使用过访问单元格
dataSource.cellForRowAtIndexPath(indexPath)
Run Code Online (Sandbox Code Playgroud)
但我习惯用来访问细胞
cellForRow(at: indexPath)
Run Code Online (Sandbox Code Playgroud)
有谁知道差异,哪个更好用?我问的原因是dataSource.cellForRowAtIndexPath(indexPath)
导致我们崩溃的原因.
***由于未捕获的异常'NSInternalInconsistencyException'而终止应用程序,原因:'尝试为同一索引路径出列多个单元格,这是不允许的.如果您确实需要出现比表视图请求更多的单元格,请使用-dequeueReusableCellWithIdentifier:方法(不带索引路径).单元标识符:CheckTableViewCell,索引路径:{length = 2,path = 1 - 0}'
我试图在我的iOS应用程序中集成facebook登录.我正在为此目的阅读官方文档.
在这个入门链接.文档说要使用以下pod
pod 'FacebookCore'
pod 'FacebookLogin'
pod 'FacebookShare'
Run Code Online (Sandbox Code Playgroud)
所以我明白我必须使用pod FacebookLogin
,就是这样.
但
在这个iOS登录文档页面上,文档说要使用
pod 'FBSDKLoginKit'
Run Code Online (Sandbox Code Playgroud)
注意:我只想在我的应用程序中执行facebook登录而不是其他任何内容.