- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我的 OS X 应用程序(当前未沙箱)访问用户设置的目录中包含的文件(使用 NSOpenPanel
选择路径,并且在整个执行过程中保留对此路径的引用)。文件列表是通过 NSDirectoryEnumerator 生成的,然后我使用 AVAsset 和 taglib (在 C++ 中带有桥接头)读取和写入这些文件)分别。
正如预期的那样,在 Xcode 中启用沙盒会使应用程序无用,NSDirectoryEnumerator
给出的文件列表为空,即使不是,我也无法读取和写入文件。我需要采取哪些步骤才能使我的应用程序符合沙箱要求?
我的应用程序需要基于文档吗?我的应用程序真的可以“基于文档”吗,因为我实际上没有适当的文档(例如:每个文件没有一个窗口,它似乎不符合标准的基于文档的应用程序模型)?我的应用程序基本上只是一个 TableView ,其中文件引用作为行。另一个重要的点:如果我的应用程序是基于文档的,我仍然可以使用 taglib 写入我的文件吗?我需要将 taglib 作为字符串指针传递到我的文件的路径才能使其工作。
非常感谢,这个话题目前很困惑。
最佳答案
您不必将应用程序转换为基于文档即可访问用户选择的文件和安全范围的书签。
我可以想到您当前的代码无法在沙盒环境中运行的两个原因:
启用沙盒并设置用户选择文件功能的普通 Xcode 项目应枚举通过 NSOpenPanel
获取的任何路径:
NSOpenPanel* panel =[NSOpenPanel openPanel];
panel.canChooseDirectories = YES;
[panel beginSheetModalForWindow:self.view.window completionHandler:^(NSInteger result) {
NSFileManager *fileManager = [[NSFileManager alloc] init];
NSURL *directoryURL = panel.URL;
NSDirectoryEnumerator *enumerator = [fileManager
enumeratorAtURL:directoryURL
includingPropertiesForKeys:nil
options:0
errorHandler:nil];
for (NSURL *url in enumerator) {
NSLog(@"url:%@", url);
}
}];
如果您想要存储在应用程序启动/退出周期中从沙箱访问特定文件夹的能力,您将需要存储安全范围的书签。这篇文章包含通过应用程序范围书签保留用户选择的文件/目录访问的信息: Trouble creating Security-Scoped Bookmark
关于macos - OS X 应用程序沙箱和任意文件访问 - 更新为基于文档?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33495155/
是否可以通过覆盖alert、window.location 和eval 等各种函数来对用户提交的 Javascript 进行沙箱处理? 我不是在寻找完美的解决方案。我敢肯定,有些人仍然会找到一种方法来
我想让开发人员用 Javascript 为网站编写一些自定义应用程序,但我想将其沙盒化,这样他们就不能做任何调皮的事情,比如重定向用户、将正文显示设置为无等等。我有一个命名空间Javascript,其
所以我使用一个程序,我在 lua 中编写 mods,lua 处于沙箱状态,这意味着大多数功能都被阻止,如 IO 和 OS,我什至不能使用 REQUIRE 添加库。我需要一个功能来解压缩我的一个 mod
我编写了一个简单的 RMI 服务器,并为其指定了默认的 RMISecurityManager: System.setSecurityManager (new RMISecurityManager())
我希望允许用户定义自己的函数以在程序中使用,但是,我不希望他们破坏东西 - 理想情况下我想将其限制为核心语言函数,也许是 数学模块 自定义函数将是这样的(在 user_function.py 中定义,
我需要在第一次运行我的应用程序时将一些 png 从主包复制到文档文件夹。我需要它,因为我必须将这些图像的文件路径保存在核心数据实体中。 我试过了,但是不行,有人知道为什么吗? // to copy i
我在使用 Paypal Sandbox 时遇到货币问题。 我正在使用沙盒测试我网站的定期付款(数字商品,快速结账) 一切都按预期工作。 用户点击支付。 用户被转移到paypal express che
我们正在尝试使用 StoreKit 实现简单的应用内购买(不确定它是否与它有任何关系)并且到目前为止一切顺利,但是我们面临一个特定问题:当我们退出应用时, iOS 永久要求我们登录: 只有在使用沙盒或
这个问题在这里已经有了答案: How can I sandbox Python in pure Python? (7 个回答) 关闭9年前。 我想创建一个网站,人们可以上传他们的 Python 脚本。
不是开发人员,而是想弄清楚如何生成一个 revolut 业务 api,以在 woocommerce 上设置一个沙盒 revolut 支付网关。我按照 open ssl instructions 生成
current documentation cabal 显示 sandbox子命令。 respective page on github不再包含有关沙箱的部分。 我使用的是 cabal 版本 3.2.
我有兴趣了解 extjs 沙箱,但无法在网络上找到太多相关信息。有人可以告诉或指出一些有关 extjs 沙箱是什么以及它是如何工作的相关资源。提前致谢! 最佳答案 Ext JS 沙箱只是顶级命名空间上
我有一个沙盒 Cocoa 应用程序。它有一个单窗口、多选项卡用户界面。我不使用 NSDocument,但它是一个可以编辑多个“文档”的应用程序。当应用程序关闭时,我保存打开文档的列表。当我重新启动应用
有人可以向我解释一件事吗?是否可以像在 Salesforce(开发者组织)中那样为开发者获得免费的 NetSuite 沙盒帐户? 最佳答案 您可以成为社区开发者,并获得一个免费的 Netsuite 帐
我正在尝试创建到 Revolut 的客户端连接。我正在关注他们的 tutorial ,但是我被困在 交易所授权码 . 到目前为止我做了什么: 在他们的 sanbox 上创建了企业帐户 在此处添加了我的
因此,Lua 似乎是在我的应用程序中实现安全“用户脚本”的理想选择。 但是,大多数嵌入lua的示例似乎都包含加载所有标准库,包括“io”和“package”。 所以我可以从解释器中排除这些库,但即使是
因此,我尝试使用插件包从源文件动态加载 haskell 函数。源文件依赖于带有模块 Foo.Bar 的包 foo。我正在 Cabal 沙箱中运行我的项目,其中安装了 foo。我的主程序和我使用插件加载
我正在使用 Pipeline Pilot 进行一些工作,并注意到所有内置的 HTML 组件都可以执行某些操作,例如可折叠面板、选项卡或任何其他可能具有我无法访问的 javascript 的内容,从而导
我今天获得了 Instagram api 并实时添加了我的网站,我看到写: 客户端状态:沙盒模式上线 为什么我无法点击“上线”按钮? 最佳答案 不过,您需要开始提交以获得批准才能上线: 网站的 Fee
我有一些代码正在尝试使用这样的结构进行测试(根据 Cleaning up sinon stubs easily ): function test1() { // manually create
我是一名优秀的程序员,十分优秀!