0

私は、Mac の開発および展開の世界全体にとってまったく新しいものです。Itunes Connect と Application Loader を使用して、OSX アプリを作成し、アプリストアにアップロードしようとしています。Mac OSX バージョン 10.6.8 を使用しています

私は以下を使用してアプリをコード署名しました:

codesign -s "3rd Party Mac Developer Application: <company name>" <my app name>.app

次に、以下を使用してインストーラー パッケージを作成しました。

productbuild --component <my app name>.app /Applications --sign "3rd Party Mac Developer Installer: <company name>" <my app name>.pkg

codesign と productbuild の間、エラーは発生せず、アプリケーションは問題なく実行されます。

残念ながら、パッケージをインストールできません。次を使用してコマンドラインで pkg を実行した場合:

sudo installer -store -pkg <my app name>.pkg -target /

次の出力が得られます。

installer: <my app name>.pkg has valid signature for submission
installer: Installation Check: Passed
installer: Volume Check: Passed
installer: Bundle <my bundle name> will be relocated to <path to my app>/<my app name>.app
installer: Starting install
installer: Install 0.0% complete
installer: Install 5.0% complete
[...]
installer: Install 95.0% complete
installer: Install failed: Beim Extrahieren von Dateien aus dem Paket <my app name>.pkg“ ist ein Fehler aufgetreten.

エラーは、「パッケージのファイルの抽出中にエラーが発生しました...」という意味です

失敗したインストールに関する、installer.log のエントリ:

Install Failed: PKG: extracting "<my bundle name>"
Error Domain=PKInstallErrorDomain Code=110 UserInfo=0x1004687b0 "Beim Extrahieren von Dateien aus dem Paket „&lt;my app name>.pkg“ ist ein Fehler aufgetreten." Underlying Error=(Error Domain=BOMCopierFatalError Code=0 UserInfo=0x10c9af710 "Der Vorgang konnte nicht abgeschlossen werden. cpio read error: Unknown error: 0") {
    NSFilePath = "/var/folders/zz/zzzivhrRnAmviuee+++++++++++/Cleanup At Startup/PKInstallSandbox-tmp/Root/Applications";
    NSLocalizedDescription = "Beim Extrahieren von Dateien aus dem Paket \U201e<my App name>.pkg\U201c ist ein Fehler aufgetreten.";
    NSURL = "#<my bundle name>.pkg -- file://localhost/<path to my app>/<my app name>.pkg#Distribution";
    NSUnderlyingError = "Error Domain=BOMCopierFatalError Code=0 UserInfo=0x10c9af710 \"Der Vorgang konnte nicht abgeschlossen werden. cpio read error: Unknown error: 0\"";    

私はそれがcpioの読み取りエラーと関係があると思いますが、私はここで失われました...

4

2 に答える 2

1

問題は、installd がディスク上の別の場所で .app を見つけ、既にインストールされているが再配置されていると判断することです。それはあなたのビルドディレクトリにありますよね?少なくともこれは私の場合でした。

これに対する解決策は次のとおりです。

  1. インストーラーをビルドします。
  2. 実際のインストーラーを除く .app バンドルを含め、この特定のビルド用にアーカイブする必要がある可能性のある、このビルドの生成に使用されるすべてのリソース (クラッシュ レポートのシンボリケーションのために、パッケージの外部にアプリを含める必要があります) を圧縮します。

この方法では、 (インストーラーの起動時に) インストールされるのとまったく同じバイナリーが、インストール中にディスク上のどこにも見つかりません(アーカイブされます)。また、installd は、~/Library/Developer/Xcode/DerivedData/またはディスク上の他の場所にあるアプリのデバッグ ビルドを考慮しません。

于 2014-08-25T06:34:09.657 に答える
-2

さて、アプリを再構築して別のフォルダーにパッケージ化すると、うまくいきました。何が問題だったのかはまだわかりませんが、少なくとも今は続けることができます。

于 2011-11-18T22:01:56.993 に答える