问题标签 [appstore-sandbox]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
2 回答
491 浏览

macos - 如何在 NSURL 上正确使用 stopAccessingSecurityScopedResource

沙盒应用程序必须使用安全范围书签才能在重新启动时保存其文件访问权限。NSURL 文档说:

您必须平衡对 startAccessingSecurityScopedResource 方法的每次调用与对 stopAccessingSecurityScopedResource 方法的相应调用

但是如果我必须在通过解析书签获得stopAccessing的完全相同的对象上调用该方法,我无法从文档中看到。NSURL(这些“神奇”的 NSURL 对象是否具有特殊属性?)

我想调用stopAccessing从文件路径生成的新 NSURL 对象。当然,这些指向相同的资源。但它有同样的效果吗?

如何查看对NSURL资源的访问是否已停止?

0 投票
1 回答
507 浏览

objective-c - 在沙盒应用程序中使用 Scripting Bridge 在 iTunes 中创建播放列表

这可能吗?

在这个问题中,我看到您添加到权利文件中:

用于读取访问。但是你如何获得写访问权限?我查看了文档,他们建议使用手册sdef,但我无法从中提取任何信息。

另外,这会妨碍向 App Store 提交吗?

0 投票
1 回答
209 浏览

objective-c - 沙盒使用 SBElementArray 打破 NSPredicate

我正在尝试使用沙盒应用程序中的脚本桥从 iTunes 中过滤出一系列曲目。当应用程序不是沙盒时,以下工作有效,但在沙盒时无效:

这是一个错误,还是我错过了什么?如果我在运行过滤器之前转换self.musicTracks为一个,它将起作用。NSArray然而,这大大减慢了速度,以至于它实际上不可用。

编辑:这是我的权利文件。我绝对可以向它们添加播放列表和曲目——只是过滤不再起作用。

0 投票
1 回答
465 浏览

xcode - 当应用程序被沙盒化时,CGEvent 不起作用

这是一篇关于如何通过代码按键的好帖子。Cocoa中的CMD+Option+D模拟

这很好用,但是当您对应用程序进行沙箱处理时,它就不起作用了。有谁知道我应该在权利文件中要求的例外情况才能完成这项工作?

0 投票
1 回答
181 浏览

cocoa - 在 Mac OS X Lion 中访问用户脚本目录

我希望我的应用程序能够执行一些用户脚本,这些用户脚本可以安装在特定于应用程序的用户脚本~/Library/Application Scripts/appbundleidentifier目录([[NSFileManager defaultManager] URLForDirectory:NSApplicationScriptsDirectory inDomain:NSUserDomainMask appropriateForURL:nil create:YES error:&error]NSApplicationScriptsDirectory如何在 Mac OS X Lion 下找到这个目录?该应用程序是沙盒化的,因此不能对路径进行硬编码。

0 投票
1 回答
762 浏览

nsurl - 如何将 plist 中的 NSURL 绑定到沙盒应用程序中的 NSPathControl?

我的 OS X 应用程序需要持久访问用户选择的目录。在我打开应用沙箱之前,UI 有一个 NSPathControlvalue绑定到数据模型。模型中的数据类型是NSData,并且绑定使用了NSKeyedUnarchiveFromData值转换器。效果很好。

打开应用程序沙盒后,这显然会失败,因为 NSURL 不是安全范围。为了解决这个问题,我用NSKeyedUnarchiveFromData自己的变压器替换了绑定中的变压器,如下所示。

不幸的是,它并不总是正常工作。有时,当我(作为用户)从 NSPathControl 中选择一个文件时,transformedValue:即使传递给它的 NSData 参数不是 nil,也会返回 nil。换句话说,NSURL 不解析书签数据。有人知道这里发生了什么吗?当它失败时,返回的错误URLByResolvingBookmarkData:options:relativeToURL:bookmarkDataIsStale:error:

错误域 = NSCocoaErrorDomain 代码 = 259 “文件无法打开,因为它的格式不正确。”

0 投票
1 回答
371 浏览

cocoa - 用户移动文件后,NSURL 安全范围的书签是否仍然有效?

在获得文件的安全范围书签后,在用户将与书签关联的文件移动到其他位置后,我看到书签的混合结果。

我所看到的:

  • 如果用户移动文件,书签会正确解析到
    新位置。但是,一旦移动,如果用户进行更改并
    保存,书签不会解析并给出
    文件不存在的错误。
  • 如果用户对文件进行更改并保存,则书签会正确解析。如果用户在保存后移动文件,则书签不再解析并给出文件不存在的错误。

根据我所看到的,这让我认为书签不像我认为的那样在沙盒下工作。但是,我玩过其他一些沙盒应用程序,它们似乎处理得很好。

更新:

  • 该 URL 指向我的应用程序的文档。
  • 所有发生的修改/保存都通过正常的 NSDocument 管道。
0 投票
2 回答
1369 浏览

ios - 将文件从主包复制到文档目录(沙箱)

我需要在我的应用程序第一次运行时从主包中将一些 png 复制到文档文件夹。我需要它,因为我必须将这些图像的文件路径保存在核心数据实体中。

我试过这种方法,但它不起作用,有人知道为什么吗?

谢谢

0 投票
1 回答
543 浏览

xcode - 由于我需要 NSSavePanel 的临时权利,应用程序被拒绝

这是我的 Mac 应用程序第二次被 MAS 拒绝。我使用临时授权,以便用户可以将他的备份文件存储在他的设备上创建的应用程序中。这是我从 MAS 收到的拒绝回复:

非常模糊,第二次他们没有告诉我我在做什么有什么问题。

为此,我使用以下权利:

这就是我使用权利的方式:

我真的希望有人可以提供帮助,并提前非常感谢!

0 投票
1 回答
1008 浏览

ios - 是否可以将文件从应用沙箱复制到应用程序包?

我可以用以下方法做相反的事情:但不能复制到应用程序包。