问题标签 [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 回答
1977 浏览

iphone - 何时从 Sandbox 切换到生产 StoreKit 服务器?

我最近向 iTunes 提交了一个应用程序内购买的应用程序。我应该在什么特定时间从使用沙盒服务器切换到生产服务器?

现在?还是批准后?

我可以随时在服务器上的 php 文件中切换。

我查看了 StoreKit 文档,他们并没有真正说明这一点。

谢谢!

0 投票
1 回答
4445 浏览

objective-c - 沙盒化应用程序后 NSSavePanel 不保存文件

NSSavePanel在为 Mac App Store 沙盒化应用程序后,我在保存字符串文件时遇到问题。我设置com.apple.security.files.user-selected.read-writeYES并且NSOpenPanel正在按应有的方式工作。

但是,当我尝试保存新文件时,似乎一切正常,但是没有保存的文件应该在....

这是我用来保存文件的代码:

0 投票
0 回答
579 浏览

macos - Mac OSX 控制台不显示沙盒违规

我即将在 Mac AppStore 上发布我的应用程序更新,并想检查沙盒违规情况。使用权利编译我的应用程序并对其进行代码签名......它正在运行,Activity Monitor 确认它正在使用沙盒环境。

我的问题是控制台没有显示任何来自沙盒的行。即使我故意模拟违规行为:比如禁用用户选择的文件读/写访问权限并尝试打开文件,OpenPanel 也永远不会出现(我想沙盒会阻止它),但控制台永远不会显示报告它的行。如果我在控制台中搜索“sandboxd”,我得到的唯一一行是关于未知 POSIXSpawnInterface 的信息。

我的疑问/问题是:

1)(删除!)

2)如果我的应用程序能够做任何我需要它做的事情(我打开 MIDI 输入,所以我必须包含一个临时的异常权限以进行全局访问),这是否意味着我可以使用沙盒,即使控制台是不报告任何违规行为?!

3)我的应用程序通过其应用程序 ID(读起来像 com.company.appname)向系统查询路径来搜索文件(应用程序包),然后我使用 NSBundle 仅检索它的版本。这些操作是否需要临时例外权限才能对 Application 文件夹进行只读文件访问(实际上我不知道确切的路径,因为它取决于用户安装应用程序的位置)?

提前感谢您提供的建议。问候,彼得。

0 投票
2 回答
2448 浏览

objective-c - 沙盒 - 不允许 killall 操作

我正在编写一个运行以下命令的小型 Mac 应用程序(在 Obj-C 中):

我想看看如果我对应用程序进行沙盒处理(因为 6 月 1 日将需要沙盒处理)会发生什么,并且该应用程序将无法运行。我得到以下回复:

有没有办法解决这个问题?就像在特定的权利中添加或以其他方式运行命令?

提前致谢。

0 投票
1 回答
7980 浏览

macos - 写入应用程序自己的包时“沙盒:拒绝文件写入创建”

我在 Mac App Store 中编写了一个显示一些图形的程序。有时它会从互联网上更新这些内容。和大多数人一样,我现在不得不对我的应用程序进行沙箱处理。

几乎一切正常,但在更新时会将文件保存在我的应用程序自己的包中,并因“沙盒:拒绝文件写入创建”而失败

我只是使用 fopen(..., "wb")

传入 fopen 的路径是:/Users/MyUser/Library/Developer/Xcode/DerivedData/MyApp-czuwveatgjffaggwqjdqpobjqqop/Build/Products/Debug/My.app/Contents/Resources/the_file.foo

该路径是使用以下方法创建的:

我在这里做明显错误的事情吗?我的应用程序是多平台的,所以理想情况下我会继续使用 fopen/etc。据我了解,应该允许应用程序写入自己的包,即使它被阻止在其他地方做任何事情?

谢谢!

0 投票
1 回答
1025 浏览

objective-c - 首次启动沙盒应用程序时崩溃

我刚刚更改了沙盒应用程序的包标识符,然后运行了它。我什至在运行之前就遇到了运行时异常main()。堆栈跟踪的顶部是runtime_init. 我尝试在 Xcode 之外运行该应用程序并获得标准的崩溃报告对话框。滚动浏览提供的信息,我注意到:

我再跑一次就没有问题了。我看到容器存在。但是,一旦我删除容器,异常就会再次抛出。我不希望我的用户对我的应用程序的第一次体验是崩溃的。我怎样才能解决这个问题?

我尝试修复权限,这没有任何区别。我还注意到,当 Xcode 因异常中断时,容器已经创建。此外,Craig Hockenberry 在一篇文中提到了这个错误,但他归咎于用户主目录中的符号链接。我那里没有任何符号链接(至少不在顶层,这是我认为他的意思)。

Twitter 上的其他输入表明它可以是符号链接任何地方的符号链接,在这种情况下,我肯定有一些。有没有人发现它的解决方法?我想这会很困难,因为在异常之前没有执行任何应用程序代码。希望山狮能解决它...?

0 投票
2 回答
3866 浏览

objective-c - startAccessingSecurityScopedResource 永远不会返回成功

我正在开发一个沙盒化的 Mac App Store 应用程序,它会询问用户从其他地方下载的文件保存在哪里。我有这段代码可以从用户那里获取文件夹(去掉一些错误检查):

当需要将文件移动到此文件夹时,我有以下代码:

有很多代码要列出来说明 startAccessingSecurityScopedResource 永远不会为我返回成功,无论是在从 NSOpenPanel 获取 ULR 后立即还是在以后运行时,书签数据都保存在 NSUserDefaults 中。

在权利文件中,除其他项目外,我有:

这段代码有什么问题吗?

0 投票
2 回答
1147 浏览

macos - Mac App Store 沙盒应用程序可以使用 CGEventPost 吗?

对于我正在开发的应用程序,我CGEventPost用来发布一些关键事件,我注意到它在启用沙盒的情况下停止工作,即使我打开了“启用辅助设备访问”系统首选项。

是否有权允许使用CGEventPost? 或者,是否有其他方法可以通过提交到 Mac App Store 的应用发布关键事件?

0 投票
1 回答
401 浏览

cocoa - Spotlight UI 无法在 Sandbox 中找到 Core Data 外部记录文件

我已按照说明使用Record-Level Indexing将 Spotlight 集成到基于非文档的 Core Data 应用程序中。Spotlight 导入器正确导入文件,这些记录可以使用mdfind "some string".

问题是聚光灯用户界面——右上角的放大镜——在沙箱中运行时没有显示这些记录。

外部记录文件创建于~/Library/Containers/[my app]/Data/Library/Caches/Metadata/CoreData/[my app]

难道我做错了什么?

0 投票
2 回答
445 浏览

macos - Mac OSX 沙箱和公钥

~/.ssh是否有可能在沙盒化的 Mac OSX 应用程序中访问用户的公钥文件(位于 中)?