小编Sye*_*bas的帖子

如何在macOS Apps中安装软件包

我是macOS Development的新手,但我确实有iOS开发经验.我正在开发一个包的安装程序应用程序XYZ.pkg 我想用我自己的GUI而不是默认的macOS安装程序来安装这个包.该程序包在我的应用程序包中可用,当我尝试通过命令安装它时崩溃.

guard let pathOfResource = Bundle.main.path(forResource: "SomePackageName", ofType: ".pkg") else {
    return
}

self.loadingView.alphaValue = 1
self.loadingView.layer?.isHidden = false
self.activityIndicator.startAnimation(sender)
let argumentString = "-pkg " + pathOfResource
let argumentString1 = "-target /"
let path = "/usr/sbin/installer "
let arguments = [argumentString,argumentString1]

let task = Process.launchedProcess(launchPath: path, arguments: arguments )
task.waitUntilExit()
self.activityIndicator.stopAnimation(sender)
self.loadingView.alphaValue = 0
Run Code Online (Sandbox Code Playgroud)

macos swift packageinstaller

7
推荐指数
1
解决办法
845
查看次数

故事板InstantiateWithIdentifier导致iOS 13崩溃

测试我的应用程序的Xcode 11(测试版)用于iOS的-13(测试版)的更新,我就当我试图从故事板实例的viewController越来越崩溃。

在以前的版本中,可以使用以下代码正常工作:

XYZController *controller = [self.storyboard instantiateViewControllerWithIdentifier:@"IDENTIFIER"];
Run Code Online (Sandbox Code Playgroud)

现在,对于iOS 13,Apple引入了新方法,即

XYZController *controller = [self.storyboard instantiateViewControllerWithIdentifier:@"IDENTIFIER" creator:^__Kindof UIViewController *__Nullable(NSCoder *_Nonnull coder){
    return [XYZController alloc] initWithCoder:coder];
}];
Run Code Online (Sandbox Code Playgroud)

在iOS-13中执行这两种方法都会导致崩溃。当崩溃显示在其他地方时。

这是我的崩溃报告。

由于未捕获的异常'NSInternalInconsistencyException'而终止应用程序,原因:''从-traitCollection返回nil,这是不允许的。

storyboard uiviewcontroller ios13 xcode11

5
推荐指数
1
解决办法
480
查看次数