我能在iPhone上为我不分发的应用程序使用NSTask吗?

3

我没有找到太多关于这个的信息,但我看到一些提示说在iPhone应用程序中可以使用NSTask。如果可能的话,我该如何操作?

我不想越狱我的iPhone,但我正在开发的应用程序仅供内部使用; 它不会被分发,所以我不在乎苹果拒绝使用NSTask的应用程序。

更新:我尝试了一下,并通过将头文件NSTask.h复制到我的项目中,我成功地编译了代码。目前为止还不错。但是当我运行代码时,情况并不顺利。我可以创建一个任务,并调用其setLaunchPath方法,但是当我尝试启动它时,我收到了“启动路径不可访问”的错误。虽然我使用的是写入文件的相同路径作为任务的启动路径,但启动路径应该没问题,因为我要启动的进程是通过套接字复制的程序。这是否表明iOS文件系统阻止我访问文件以启动它,即使我可以访问该位置以打开和写入文件?或者我在其他地方犯了错误?

1个回答

1
id x = NSClassFromString(@"NSTask");
if (x) {
   NSLog(@"Yes, you can.");
}
else {
   NSLog(@"No, you can not.");
}

3
这只会告诉你在你正在使用的 Foundation 版本中是否存在 NSTask。它不会告诉你 nobody 是否有权限执行 fork() - hatfinch

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接