1

iTunes Connectに送信する前に、開発者以外のテスターの小グループがアプリのベータテストを実行するためのビルドを作成しようとしています。「テスト用アプリの配布(これを読むにはAppleに登録する必要がある場合があります)」に関する開発者ガイド、アドホック配布に関するテクニカルノートTN2250、および無数のブログ投稿とStack Overflow記事を読みましたが、成功しませんでした。これまで。

私が取ったステップ:

  • (私はXcode 3.2.5を実行しています。)
  • iOSプロビジョニングポータルで開発プロビジョニングプロファイルを作成し、すべてのテスターのデバイスを含めました。
  • このプロファイルをダウンロードし、オーガナイザーウィンドウにドラッグしてXcodeにインストールしました。プロファイルは、[開発]>[プロビジョニングプロファイル]で確認できます。
  • プロジェクトとターゲットの両方の設定で、このプロファイルを「コード署名ID>任意のiOS」として設定しました
  • Entitlements.plistファイルを作成し、プロパティリストの種類を「iPhoneEntitlements plist」に設定し、「デバッグ可能」を除くすべての行を削除して、チェックを外しました。
  • プロジェクトとターゲットの両方の設定で、「コード署名の資格」をEntitlements.plist(正確な大文字と小文字を区別する名前)に設定しました
  • プロジェクトを「ビルドしてアーカイブ」しました
  • [オーガナイザー]ウィンドウから、プロジェクトを選択して[共有...]をクリックし、上記で使用したものと同じプロビジョニングプロファイルを選択して、結果の.ipaをディスクに保存しました。
  • .ipaとプロビジョニングプロファイルをzipファイルに圧縮し、テスターに​​電子メールで送信しました

テスターに​​は次のものがあります。

  • 送信したファイルを解凍しました
  • .ipaをiTunesにドラッグして同期するだけで、インストールを試みました
  • 最初に.mobileprofileをiTunesにドラッグして同期し、インストールしてみました

いずれの場合も、同期の最後に、「資格が無効であるため、アプリ[私のアプリ名]は[デバイスとデバイス名]にインストールされていません」というダイアログが表示されます。

また、この同じアプリの以前のバージョンを、問題なく、資格リストなしで、昨年の秋に同じテスターに​​配布できたことも注目に値します。Xcodeのアップグレード以外に何が変わったのかわかりません。

誰かが洞察を提供したり、私が間違っていることを確認したりできますか?

[これはAppleの開発者フォーラムにも投稿しており、解決策はここに再投稿します。]

4

3 に答える 3

1

*.ipaファイルにはすでにプロビジョニングプロファイルが含まれている必要があります。zipユーティリティを使用すると、Windowsマシンから簡単に確認できます。このファイルは、拡張子が異なる単なるzipアーカイブです。

デバイスは、アプリケーションに適したバージョンのiOSにありますか?

のデバイスにはSetting > General > Profiles、問題としてそれを排除するためにインストールされているプロビジョニングプロファイルのリストが表示されます。新しいデバイスを追加すると、新しい証明書が作成されるたびに複数のコピーが取得されます。すべてのプロファイルを削除して、最新のプロファイルが追加されていることを確認しても問題ありません。

ビルドを行うときは、ビルド結果で右クリックして選択し、そのステップの出力が表示されるものをOpen These Latest Results as Transcript Text File検索するCodeSignと、使用されたプロファイルが明確に表示されます。Entitlements.plistを検索して、使用されているパスを確認してから、そのファイルを確認することもできます。

すべての行を削除したと言います。Can be debugged私はエントリを 持っていませんが、持っていapplication-identifierますkeychain-access-group。コード署名に関連しているように聞こえます。これがあなたが試すことができるファイルのプレーンテキストバージョンです。

<?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>
    <!--- Required entitlements (in most cases shouldn't be changed) --->
    <key>application-identifier</key>
    <string>$(AppIdentifierPrefix)$(CFBundleIdentifier)</string>
    <key>keychain-access-groups</key>
    <array>
        <string>$(AppIdentifierPrefix)$(CFBundleIdentifier)</string>
    </array>

    <!--- Custom entitlements below --->


</dict>
</plist>

そのいずれかが間違っていると思われる場合、これらはAppleがディストリビューションビルドを準備する際に提案する手順です。

  1. ターゲットを選択し、ビルド設定インスペクターを開きます。配布構成になっていることを確認します。
  2. コード署名IDを削除します:iOSディストリビューション:COMPANYNAME
  3. Xcodeビルドメニューで、[すべてのターゲットをクリーンアップ]を選択します。
  4. Finderを使用して、Xcodeプロジェクトの既存のビルドディレクトリを削除します。
  5. Xcodeを再起動し、プロジェクトを開きます。
  6. ターゲットビルド設定インスペクターにコード署名IDiOSディストリビューション:COMPANYNAMEを再入力します。
  7. プロジェクトを再構築します。

そのいくつかがああハハを助けたり、火花を散らしたりすることを願っています!一瞬。

于 2011-03-04T00:30:13.273 に答える
1

Xcode4のアドホックビルドではコード署名の資格は不要になりました-AppleテクニカルノートTN2250の詳細ノートを参照してください

于 2011-08-11T20:18:37.607 に答える
0
  1. 開発者のWebサイトにアクセスして、サインインします。
  2. [プロビジョニングプロファイル]で[開発]を選択します。
  3. ダブルクリックしてプロビジョニングプロファイルを開きます。
  4. あなたが見るでしょう"App ID: somenameyouwrote(com.somenameyouwrote)"
  5. 角かっこの間にあるものを正確に書き留めます。"com.somenameyouwrote"
  6. XCodeで.plistファイルを開きます。
  7. 手順5で"bundle identifier:"書き留めたものをすべて入力します。
  8. XCodeで矢印を押して"Targets"、apの名前が付いたターゲットをダブルクリックします。
  9. 開いたターゲット情報ウィンドウで、それ"Build"が選択されていることを確認します。
  10. を開き、"Code Signing Identity"その下でを選択します"Any iOS"
  11. リストされているプロファイルの右側で"Any iOS"、Ap識別子がplistに書き込んだプロファイルと一致するプロファイルを選択します。
  12. バム!欲求不満!
于 2014-02-13T22:44:35.253 に答える