问题标签 [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 投票
1 回答
441 浏览

macos - 沙盒允许我的应用程序点击 Quartz 事件吗?

根据该软件的作者:

TextExpander cannot be "sandboxed" according to the latest restrictions from Apple

这是 TextExpander 所做的:

TextExpander saves your fingers and your keyboard, expanding custom keyboard shortcuts into frequently-used text

这到底是什么意思?我想对 Quartz 事件做出反应并相应地发布 Quartz 事件。

0 投票
1 回答
816 浏览

objective-c - 启用 App Sandboxing 时,Flash 播放器在 Webview 中不起作用

我正在为桌面开发一个 Mac 应用程序,该应用程序使用Webview来加载某些 url。一切正常,但是当我启用“启用应用程序沙盒”选项和应用程序的正确权利时,Flash Player 插件不会加载到 Web 视图中。

我尝试了这个问题的答案:Flash videos in WebView not working in sandboxed app。但 Flash 插件仍然无法正常工作。我也尝试使用清洁产品选项(cmd + shift + alt + k),但仍然无法正常工作。

需要做什么来实现它?,我需要在启用 App Sandboxing 时在 Webview 中显示 Flash Player 插件。

0 投票
1 回答
1126 浏览

app-store - 如何将 JavaAppLauncher 嵌入到 App Store 沙箱中

我正在尝试将 Java 应用程序发送到 MacOS X App Store。我的所有代码都已正确签名(jar、dylib 等)。不幸的是,在发送二进制文件时,我总是收到“无效的二进制文件”错误,并显示以下消息:

尊敬的开发人员, 我们发现您最近交付的“tamaggo ibi 桌面”存在一个或多个问题。要处理您的交付,必须更正以下问题: 未启用应用沙箱 - 以下可执行文件必须在权利属性列表中包含布尔值为 true 的“com.apple.security.app-sandbox”权利。有关对您的应用程序进行沙盒化的更多信息,请参阅应用程序沙盒页面。• tamaggo ibi.app/Contents/MacOS/JavaAppLauncher 纠正这些问题后,转到版本详细信息页面并单击“准备上传二进制文件”。继续完成提交过程,直到应用状态为“等待上传”。然后,您可以提供更正后的二进制文件。问候, App Store 团队

我用谷歌搜索了一整天,但没有找到任何东西。有人知道如何在 .entitlements 文件中对 JavaAppLauncher 进行沙箱处理吗?

为了提供更多信息,这是我签署代码的方式: /usr/bin/codesign --resource-rules desktop-app/target/dist/myApp/Contents/ResourceRules.plist --verbose --force --sign "3rd Party Mac Developer Application: XXX" desktop-app/target/dist/myApp

find desktop-app/target/dist/myApp.app/Contents/ -type f \( -name "*.jnilib" -or -name "*.jar" -or -name "*.dylib" \) -exec codesign --resource-rules desktop-app/target/dist/myApp.app/Contents/ResourceRules.plist --verbose -f -s "3rd Party Mac Developer Application: XXX" --entitlements desktop-app/target/dist/myApp.app/Contents/myApp.entitlements {} \;

codesign --resource-rules desktop-app/target/dist/myApp.app/Contents/ResourceRules.plist --verbose --force --sign "3rd Party Mac Developer Application: XXX" desktop-app/target/dist/myApp.app/Contents/Resources/binaries/ffmpeg

codesign --resource-rules desktop-app/target/dist/myApp.app/Contents/ResourceRules.plist --verbose --force --sign "3rd Party Mac Developer Application: XXX" desktop-app/target/dist/myApp.app/Contents/MacOS/JavaAppLauncher

0 投票
3 回答
1777 浏览

macos - 让 NSSavePanel 忘记之前的目录

NSSavePanel记住以前选择的目录。

我怎样才能让它忘记它,并恢复默认值?

我正在使用沙盒应用程序。

0 投票
1 回答
1452 浏览

objective-c - 沙盒:bookmarkDataWithOptions 和错误都是 nil 没有解释

我正在沙箱化我的应用程序。当我打电话时,-bookmarkDataWithOptions: includingResourceValuesForKeys:relativeToURL:error:我没有任何解释就收到nil了(错误对象nil也是)。

  • 该应用程序已正确签名
  • 我创建了这些权利:
  • 我正在使用以下代码创建书签:

我看到,当我在调试器中单步执行代码时,fileURLSecureData并且errornil在执行之后-bookmarkDataWithOptions: includingResourceValuesForKeys:relativeToURL:error:

我肯定错过了什么。我已经阅读并重新阅读了论坛和文章,但我无法弄清楚我做错了什么。

0 投票
1 回答
408 浏览

macos - 在 Mac 沙盒应用程序中访问附属文件

我需要在基于文档的照片编辑器应用程序中访问 Sidecar XMP 文件。图像文件是文档,当用户打开并保存图像文档时,我需要访问边车 XMP 文件。

是否可以在基于文档的沙盒应用程序中访问附属文件(例如 XMP)?

我知道默认情况下这是不可能的,但是允许这样做所需的最小临时安全异常是什么?

在不使用临时异常的情况下是否有解决方法?

请注意,无法保证图像文件文档范围的书签到边车(因为它们可能由不同平台上的其他应用程序创建),因此此解决方案将不起作用。

0 投票
2 回答
1977 浏览

objective-c - 使用可可沙箱获取库文件夹中的文件列表

我正在尝试获取可可库文件夹中的文件列表,我使用此代码和 NSHomeDrirectory() 函数而没有沙箱并且运行良好。

但是当我检查沙箱代码不起作用时,我应该添加任何权利吗?或者什么代码可以代替?

0 投票
2 回答
2543 浏览

objective-c - Mac App Sandbox Group Container 问题

我在一个应用程序组中的两个沙盒应用程序中遇到了一些问题。在我的权利文件中,我有以下内容:

其中“公司”和“应用程序名称”替换为我的公司,应用程序名称和 TEAM_ID 替换为我的团队 ID。这两个应用程序具有完全相同的权利。

现在,当我构建并启动这两个应用程序时,一切似乎都很顺利。除了在我的 ~/Library 文件夹中找不到“Group Containers”文件夹这一事实之外……有一个“Containers”文件夹,其中包含两个应用程序的文件夹。但没有 Group Containers 文件夹。

我正在运行 10.8.2,我的应用程序的部署目标是 10.8。

根据开发人员库,它应该从 10.7.4 开始可用。我用过这个:https ://developer.apple.com/library/mac/#documentation/Miscellaneous/Reference/EntitlementKeyReference/Chapters/EnablingAppSandbox.html#//apple_ref/doc/uid/TP40011195-CH4-SW19来创建我的权利。

我究竟做错了什么?

谢谢,

0 投票
1 回答
1165 浏览

objective-c - 从主应用程序启动 Mac OS X (LoginItem) 帮助应用程序

我在 Main.app/Library/LoginItems 文件夹中有一个应用程序Main.app和一个应用程序Helper.app。Main.app可由用户启动,然后用户可以将Helper.app设置为登录项。(使用 SMLoginItemSetEnabled()),这非常有效。当用户将 Helper.app 设置为登录项时,它也会启动。

但是,也应该可以在不将其设置为登录项的情况下启动 Helper.app。我试过用

这给出了一个lsboxd: Not allowed process to launch...错误,并且

这给出了拒绝禁止沙盒重新初始化错误。(大概是因为 Helper.app在 Main.app里面?)

newPath 找到如下:

我怎样才能解决这个问题?:)

谢谢,

0 投票
1 回答
812 浏览

macos - 出乎意料的是,我无法获得安全范围的书签

天哪,这个沙盒让我绝望:我有一个应用程序已经在 Apple 的商店发布(所以,理论上,它已经通过了审查......),它是一个幻灯片播放器 - 没什么太花哨的 - 用户可以拖放图像到 NSTableView 或通过 NSOpenPanel 选择。无论如何,我想我自己会使用它,所以我在笔记本电脑上重新编译了一个副本,突然之间我不允许安全书签:

每当我拖放图像或通过 NSOpenPanel 选择它们时,就会出现上述情况。

我有以下权利:

在此处输入图像描述

我用来生成书签的代码是:

果然,该report方法也与控制台日志记录一起被触发。

在我进行开发的几个月中,以前从未这样做过。我还在我的开发 Mac Pro 板条箱上尝试过,尝试使用不同签名或不签名的代码签名,甚至从 App Store 下载它(使用 2 个不同的帐户尝试了两次);都具有相同的结果。我还使用了非常方便的 Receigen 应用程序来检查编译包中的权利。我正在运行 10.7.5。阻止它抛出错误的唯一方法是,如果我取消选中 Xcode 中的“启用沙盒”选项并进行编译。

啊啊啊。有人能指出一个令人眼花缭乱的明显错误,不知怎的,我和 App Store 的 2 位测试人员、我和一位 App Store 评论员都漏掉了……?!!!!

它必须是显而易见的不是吗?

更新:我让一位同事将新副本下载到他的笔记本电脑上,沙盒没有问题。如果有人能对我的安装发生的事情有所了解,我仍然会很感激......

托德。