我需要将用Objective-C编写的旧应用迁移到Swift。 此应用程序使用IBM解决方案Silverpop进行推送通知。
在使用Silverpop解决方案进行迁移时遇到一些麻烦。 该框架是用Objective-C编写的,当我按照GitHub上的文档或示例进行操作时(文档和示例之间存在区别。)我无法使该应用正常工作。
该文档在formatted = data.group_by { |d| d[:id]}.values.map do |value_array|
concated_value = value_array.sort_by { |b| b[:sort] }
.map { |c| c[:content] }.join
value_array.first.slice(:id, :foo)
.merge concated_value: concated_value
end
中崩溃,文档要求我使用以下方法创建该应用程序:
main.swift
启动时,该应用程序崩溃:
import Foundation
import UIKit
UIApplicationMain(CommandLine.argc, nil, nil, "MCEAppDelegate")
示例:https://github.com/ibm-mobile-push/ios/tree/master/samples/Swift%20Automatic%20Sample/SwiftSample
我的MceConfig.json
Thread 1: EXC_BAD_ACCESS (code=1, address=0x8)
任何帮助将不胜感激!
答案 0 :(得分:0)
您的MceConfig.json没有遵循示例代码中的文档和注释。
Setting up the sample app that is included in the Mobile App Messaging SDK for iOS.
- Swift要求您的类位于名称空间中。因此,如果您使用的是Swift Sample App,请更新“ appDelegateClass” 值设置为“ SwiftSample.AppDelegate”。
MceConfig.json在示例代码中:
"Please note: if you are using a Swift based Application Delegate you must include the product name and class name in AppDelegateClass, for example": "SwiftSample.AppDelegate", "appDelegateClass": "AppDelegate",
尝试更改MceConfig.json中的行 发件人:
"appDelegateClass": "AppDelegate",
收件人:
"appDelegateClass": "YourAppProductName.AppDelegate",
(将YourAppProductName
替换为您应用的实际产品名称。)