我对沙盒有点困惑.这可能吗?
谢谢!
我有一些代码签名问题,在一个草率的决定,我决定删除我的所有证书和私钥,并重新开始.我阅读并理解这将意味着需要做很多工作来重新设置,但我认为这不会造成不可逆转的情况:
我有10个不可撤销的开发者ID证书:5个开发者ID应用程序证书和5个开发者ID安装程序证书,具有不同的到期日期(2017年至2019年).
如果单击+按钮添加证书,则开发人员ID的单选按钮将无法选择(显示为灰色).
所以,我的问题是我没有这些证书的私钥,我无法撤销它们,我也无法创建新的开发者ID证书.另一件事:我是团队中唯一的成员.
我打电话给Apple Developer Support,他们不确定如何解决这个问题.他们说他们必须回到我身边.
其他人有什么建议吗?
谢谢
菲利普
由于Lion要求所有应用程序指定代码签名权利,因此提交到Mac App Store.与Growl一样,我从未明确应该指定哪些权利,而某些google-fu对我的问题没有回答.
我一直在控制台看到这个:
GrowlApplicationBridge: Could not send open-document event to register this application with Growl because AESend returned -600/no eligible process with specified descriptor
Run Code Online (Sandbox Code Playgroud)
编辑:更新权利后:
<key>com.apple.security.temporary-exception.apple-events</key>
<array>
<string>com.Growl.GrowlHelperApp</string>
</array>
Run Code Online (Sandbox Code Playgroud)
现在我在控制台中看到了这个:
*** attempt to post distributed notification 'GrowlNotification' thwarted by sandboxing.
Run Code Online (Sandbox Code Playgroud)
编辑x2:更具体地说,问题在于NSDistributedNotificationCenter允许应用程序向其他进程发布通知.
macos objective-c growl mac-app-store code-signing-entitlements
我想构建一个OSX应用程序,它将使用一些新的10.7 SDK功能(更具体地说,应用程序内购买).但是,我不想完全阻止10.6用户安装该应用程序.
我怎样才能使10.7个用户可以访问新功能,而10.6个用户根本没有新功能但仍可以使用基本功能?
当我编译10.6时,它没有按预期加载具有"InApp"的SDK.我想如果我编译为10.7用户将无法从AppStore安装它.
Apple 关于向Mac App Store提交应用程序的文档包含使用命令productbuild的示例,来自/ Developer/usr/bin /.
productbuild \
--component build/Release/Sample.app /Applications \
--sign "3rd Party Mac Developer Installer: Name1 Name2" \
--product product_definition.plist Sample.pkg
Run Code Online (Sandbox Code Playgroud)
当我在我的示例应用程序上运行此命令时,我收到错误:
productbuild:error:在"product_definition.plist"中找不到产品定义plist.
什么是product_definition.plist,它应该来自哪里,应该包含哪些内容,以及应该使用什么工具来创建这个plist?
我在iTunes Connect上尝试Mac的新预发布功能.我上传了我的版本,它出现在我的应用程序的预发布部分中.但是它旁边有一个小警告标志,我无法将构建版本发布给任何测试人员或编辑测试元数据.

我尝试了以下方法:
警告意味着什么?我是否必须上传使用团队配置文件或分发配置文件构建的构建版本?我可以稍后在TestFlight上更新配置文件,还是每次添加设备时都需要重新上传?
更新:
我在iTunesConnect 文档中找到了以下句子:
iTunes Connect中的TestFlight beta测试仅适用于iOS应用
我不明白为什么在iTunesConnect的Mac应用程序的GUI中提供beta测试,如果它不受支持.有没有人成功部署过Mac beta应用程序,或者这种行为是不可能的?
假设一位客户在Mac App Store中购买了我的付费应用,然后向Apple询问并获得了退款.Apple是否会以某种方式使收据无效以使应用程序无法再使用?如果是这样,收据中是否有某种标志表明它已退款,我应该在收据验证期间进行测试?
我发现了cancellation_date字段(Apple技术说明),但它似乎只适用于订阅或应用内购买.如何退还整个付费应用程序,是否可以检查?
似乎答案过去是"不,Apple不会使退款的Mac应用程序收据失效,用户可以继续使用该应用程序",我想知道最近是否有所改变.
谢谢!
macos objective-c app-store mac-app-store receipt-validation
是否有可用于测试我的Mac应用商店应用的网站或服务?我见过macdeveloper.net,但是要花钱我想确保没有其他更好的服务.谢谢!
我已将我的应用程序提交到Mac App Store,并且验证正常.但是,我继续使用以下内容获取无效二进制消息;
未启用应用程序沙箱 - 以下可执行文件必须在权利属性列表中包含布尔值为true的"com.apple.security.app-sandbox"权利.有关沙盒应用程序的更多信息,请参阅App Sandbox页面.
尽管在应用程序(应用程序和帮助程序)中启用了权限,但具有以下内容;
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<key>com.apple.security.app-sandbox</key>
<true/>
</dict>
</plist>
Run Code Online (Sandbox Code Playgroud)
不知道接下来要检查什么.
我打算很快将我的应用程序发布到App Store(在TestFlight之后).我有很多视图控制器print,其中包含语句.这些print语句用于测试目的(调试器),用户永远不会看到它们.
如果我在应用程序中发布或不包含打印语句,它会有什么不同吗?
打印语句是否会在场景之间切换时降低速度,即使是毫秒?
我可以因为将它们包含在我的应用中而被拒绝吗?
在几个vcs中我打印uid只是为了清楚我自己.通过在应用程序中包含这些打印语句,是否存在任何安全风险?
mac-app-store ×10
macos ×8
xcode ×3
app-store ×2
objective-c ×2
entitlements ×1
growl ×1
installer ×1
ios ×1
package ×1
printf ×1
productbuild ×1
sandbox ×1
security ×1
testing ×1