问题标签 [mac-app-store]

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 回答
1056 浏览

cocoa - 代码签名的应用程序不会运行

我正在尝试使用包含我的机器 UUID 的开发人员配置文件进行代码签名 - 我的应用程序。到目前为止一切顺利,我按照开发者证书实用程序上的程序,为开发和生产创建了所有必要的证书和配置文件(就像在 iOS 上一样)。

问题是:一旦我对我的应用程序进行代码签名以进行调试(或发布,就此而言)配置,当我尝试运行应用程序时,我就会得到这个奇怪的边缘状态:没有错误消息,只是日志导航器中的一个旋转活动指示器一切都表现得就像应用程序正常运行一样。但它没有出现在扩展坞中,没有任何警告,什么都没有。我究竟做错了什么?

(使用 Xcode 4,1)。

截屏

编辑: 好的,我拿了我的项目并从头开始在另一台 Mac 上重建它。显然,我做错了什么,因为它在那里也不起作用。所以,我遵循的确切程序: 1- 创建证书 2- 将证书拖放到钥匙串中

3- 将设备的 UDID 添加到门户 4- 创建配置文件 5- 打开它(将其添加到系统偏好设置) 6- 将其拖到 Xcode 的管理器中

7- 在我的 Target 的构建设置中,将 Code Signing Identity 设置为我刚刚添加的 Mac Dev 身份。

并且繁荣,我编译它并没有加载。如果我将它存档并作为应用程序共享(使用我的开发证书签名),它会在扩展坞中弹跳并消失。所以......我做错了什么?

0 投票
2 回答
823 浏览

cocoa - 带有 Safari 扩展的 Mac App Store 应用程序

我试图了解1Password之类的应用程序如何出现在 Mac App Store 上并附带 Safari 扩展程序(最重要的是,扩展程序如何与应用程序通信),因为我也想做同样的事情。本机应用程序是否将服务器作为 safari 扩展调用的子进程运行?

我想知道是否有可能做到这一点并且仍然对 Mac App Store + Sandboxing 友好。

0 投票
4 回答
38505 浏览

xcode - 您如何为 Mac App Store 设计框架包?

最近提交后,我收到以下错误:

无效签名 - 嵌套应用程序包 (FooBar.app/Contents/Frameworks/GData.framework) 未签名、签名无效或未使用 Apple 提交证书签名。有关详细信息,请参阅代码签名和应用程序沙盒指南。

无效签名 - 嵌套应用程序包 (FooBar.app/Contents/Frameworks/Growl.framework) 未签名、签名无效或未使用 Apple 提交证书签名。有关详细信息,请参阅代码签名和应用程序沙盒指南。

签名无效 - 嵌套的应用程序包 libcurl (FooBar.app/Contents/Frameworks/libcurl.framework) 未签名、签名无效或未使用 Apple 提交证书签名。有关详细信息,请参阅代码签名和应用程序沙盒指南。

所以我根据Technote 2206签署了所有框架包:

技术说明 2206 说:

签名框架

将框架视为捆绑包,因此得出可以直接签署框架的结论似乎是合乎逻辑的。然而,这种情况并非如此。为避免在签署框架时出现问题,请确保签署特定版本而不是整个框架:

# 这是错误的方式:

codesign -s my-signing-identity ../FooBarBaz.framework

# 这是正确的方法:

codesign -s my-signing-identity ../FooBarBaz.framework/Versions/A

当我尝试验证结果时,它对我来说看起来不错:

为了好玩,我确实尝试直接签署框架包,但仍然被拒绝。但这正是文档所说的不应该做的事情。

任何猜测为什么会被认为是无效的?我使用的证书与我用于对我的应用程序进行代码签名的证书相同——过去曾使用过的证书。

我唯一的猜测是与现有的 plists (我需要拥有框架的 Info.plists 中的标识符吗?)或权利 - 有什么建议吗?

0 投票
2 回答
1573 浏览

mac-app-store - Mac App Store 已损坏错误消息

我有一个要提交到 Mac App Store 的应用程序。它对符号进行编码没有任何问题,按预期生成 .pkg 文件......

...一切似乎都运行良好,没有错误,一切正常。然后我使用以下命令测试安装应用程序...

...一切似乎都很好。然后我双击我的应用程序文件夹中的应用程序,它要求我输入我的 iTunes 帐户信息。我使用我在 iTunes Connect 中设置的测试用户帐户,然后我收到此错误:

真正奇怪的是,这是对 MyApp 的更新。我第一次提交,一切正常。直到现在我才看到这个问题,但我无法弄清楚出了什么问题。控制台日志中没有错误。

我已经三重检查了,我的整个驱动器上没有其他 MyApp.app ,因为已知这会导致问题。

有谁知道发生了什么?我已经辞职并打包了这个应用程序 10 次,没有任何变化。我试过从几台不同的机器安装,同样的错误。自从首次提交工作以来,我的构建环境没有任何显着变化。

0 投票
2 回答
3397 浏览

cocoa - Mac App Store:放弃 32 位支持转而支持 ARC,32 位版本的现有用户会看到更新消息吗?

我正在考虑放弃对自动引用计数的 32 位支持(仅支持 64 位二进制文​​件)。

我想在 Mac App Store 中避免这两种情况:

对于旧的 32 位 Mac 用户

  1. 谁购买了支持 32 位的先前版本:他们会在 Mac App Store 中看到该应用程序的更新消息吗?如果是这样,(现在仅限 64 位)更新将不适用于他/她。

  2. 谁以前没有购买过该应用程序:尽管该应用程序无法在他们的系统上运行,但他们能否购买该应用程序?

仅限 ARC 64 位:http: //developer.apple.com/library/mac/#releasenotes/ObjectiveC/RN-TransitioningToARC/_index.html#//apple_ref/doc/uid/TP40011226

编辑:我发现有人能够将仅 64 位的应用程序下载到 32 位 MacBook 并显示错误消息“您的购买无法完成”。在这种情况下,它是一个免费的应用程序。我想知道何时会为付费应用弹出此消息(付款之前或之后)。

http://www.linethirteen.com/blog/2011/01/mac-app-store-32-bit-vs-64-bit/

0 投票
1 回答
424 浏览

macos - 在 Mac App Store 应用程序中签名库

我刚刚向 Mac App Store 提交了一个使用一些外部动态库的应用程序。

我收到一封来自 Apple 的电子邮件,内容是:

Invalid Signature - 可执行文件 something.app/Contents/Frameworks/some.dylib 未签名,签名无效,或未使用 Apple 提交证书签名。有关详细信息,请参阅代码签名和应用程序沙盒指南。

问题当然是由于我只签署了“我的”可执行文件,而不是库。

即使它们不是由我编写的,也签署库是常见/良好的做法吗?

0 投票
1 回答
3022 浏览

xcode - 在 Xcode 中打开权利会阻止 Bare Bones 应用程序启动

我在 Xcode 4.2 中创建了一个基本应用程序。非常简单的应用程序,我没有改变任何东西。推送运行,您将获得标准的基本应用程序窗口。如果我为我的目标打开权利并点击运行,我不会收到任何调试器错误,但窗口永远不会出现。我用 Console.app 检查了日志并得到以下信息:

我得到的第一个错误:

删除 iCloud 容器“com.alsbury.EntitlementsTest”后,我收到此错误:

由于 iCloud 类型的东西,我什至在我的开发人员帐户中添加了一个应用程序,一个配置文件并添加了我的机器。有什么想法吗?现在很迷茫。

0 投票
2 回答
668 浏览

cocoa - 执行类似“defaults write com.blahblah key true”之类的命令是私有 API 吗?

Mac App Store 指南规定您不能使用私有 API。

我正在玩一个应用程序,它使用终端命令将 showAllFiles 设置为 true 来修改 Finder 设置:

有什么方法可以将这样的东西提交到 Mac App Store 中吗?对我来说,这似乎是一个私有 API。我的问题是:是否有公共等价物?

0 投票
2 回答
10059 浏览

macos - Mac 应用商店产品构建

Apple 的关于向 Mac App Store 提交应用程序的文档包含使用 /Developer/usr/bin/ 中的命令 productbuild 的示例。

当我在我的示例应用程序上运行此命令时,我收到错误:

productbuild:错误:在“product_definition.plist”中找不到产品定义 plist。

这个product_definition.plist是什么,它应该来自哪里,里面应该是什么,应该使用什么工具来创建这个plist?

0 投票
1 回答
547 浏览

osx-lion - container-migration.plist 似乎没有做任何事情

我已经设置了我的 container-migration.plist 来将我的 MAS 应用程序迁移到 App Sandbox。当我运行应用程序时,它似乎没有做任何事情。我已确认该文件包含在 app bunder 资源中。没有生成控制台输出,说明项目已迁移,并且指定的文件夹和文件似乎未迁移。相反,当它们似乎不存在时,它们会由我的应用程序重新创建,就像正常过程一样。

什么时候发生迁移?我的应用程序会自动从 applicationDidFinishLaunching 方法中归档。在调用这个方法之前不应该迁移旧文件吗?如何调试迁移代码?