Instrumentsでアプリを起動できない:少なくとも1つのターゲットの起動に失敗しました


98

すべてのコード署名資格が正しく設定されています。スマートフォンでアプリを実行することは問題ありませんが、計測器でアプリを起動するとエラーメッセージが表示されます。

Error Starting Recording
At least one target failed to launch; aborting run

その後:

Target failed to run. Permisson to debug [app name] was denied. The app must be signed with a development identity (i.e. iOS Developer)

これを防ぐ方法はありますか?iPadでは起こりません。

回答:


217

ターゲットのスキームを編集し、[プロファイル[アプリ名]]でビルド構成をデバッグに設定します(通常、デフォルトではリリースです)。


6
+1、ありがとう、これは私を助けました。構成をDebugに設定した後でプロジェクトをビルドしなければならないことを付け加えます。
ロバート

4
この「構成をデバッグに変更」が間違っていることはわかっていますが、この問題の解決策はありません。一般的に言って、デバッグビルドのプロファイルを作成することはあまり有用ではありません。
user501138 2013

1
これは、リリースがプロダクション証明書を頻繁に使用しているためです。
Evgeny Aleksandrov

プロファイルスキームがデバッグ構成(開発者プロファイル)を使用していることを確認しましたが、まだこの問題が発生しています。これはエンタープライズ開発者証明書ですが、重要であるとは思いません。何かご意見は?
Brody Robertson

3
同じ問題が発生しています。コンパイラーがAdhocの場合のようにコードを最適化していないため、デバッグ構成を使用したアプリのプロファイリングは有効なパフォーマンステストではありません。誰かがアドホックの問題を理解していますか?
Fergal Rooney 2014

34

開発者の証明書(配布ではなく)でアプリに署名する必要があると言っています証明書で)。

Xcodeの5にだけ変更する"Provisioning Profile"あなたのためのフィールドを"Release"中にビルドビルド設定あなたに開発者の証明書の代わりに、配布証明書。とにかくテストの期間中。Xcodeでは、配布証明書を使用してビルドすることはできません。

ていることを確認し、プロジェクトのビルド設定をオーバーライドしないターゲットのビルド設定をしたり、変更しますプロジェクトのビルド設定を。

テストが終了したら、プロファイルを元に戻すことを忘れないでください。

コンパイラの最適化を考慮し、ユーザーが正確に体験できるようにするため、リリースビルドをプロファイリングする良いため、ハリーウィンの方法はお勧めしません。


1
まず、開発プロファイルが必要なので、デバッグモードにする必要があります。第二に、Appleが配布プロファイルに変更しない限り、開発者はおそらく開発ビルドを使用します。3番目に、プロファイリングを行っています。これは、開発(デバッグ)ビルドでなければなりません。4番目に、リリーススキームに開発プロファイルを使用する理由は何ですか。
アンジェロ

4
「まず、開発プロファイルが必要なので、デバッグモードにする必要があります。」任意のプロファイルで任意の構成を実行できます。「3番目に、プロファイリングしています。開発(デバッグ)ビルドである必要があります」コンパイラーの最適化を考慮に入れるには、リリースビルドでプロファイリングする必要があります。結果が異なる場合があります。「第4に、リリーススキームに開発プロファイルを使用する理由は何ですか?」それがこの問題の最も簡単な解決策だからです。そして、私の回答に書いたように、テストの準備ができたらプロファイルを元に戻す必要があります。
ゾルタンMatók

9

以前の回答に追加します。

  • Instrumentsは署名IDについて不平を言っています。
  • Zoltenによって与えられたのと同じ理由で、リリースモードでプロファイルすることが望ましいと思います。(コンパイラの最適化を考慮し、ユーザーが正確に体験できるようにするなど)
  • Xcode 6のコード署名IDを変更するには:
    • プロジェクトをクリックし、プロファイリングするターゲットを選択します。
    • ビルド設定->コード署名->コード署名ID->リリース
    • iOS開発者プロファイルを選択します。
  • プロビジョニングプロファイル:Xcodeに適切なプロビジョニングプロファイルを選択させます。例:自動に切り替えます
  • プロファイルが完了したら、通常の設定に戻します

これは非常に視覚的な人のための写真です;)

ここに画像の説明を入力してください


1

同じ問題が発生していました:[INST STDERR] Instruments Trace Error:Target failed to run:Demission to denied。アプリは開発ID(iOS開発者など)で署名されている必要があります。

解決策:1. Debug Developer Profileを使用してアプリをデバイスのxcodeにアーカイブしました。2. [ウィンドウ]-> [オーガナイザー]->に移動して、アーカイブのすべてのリストを表示します。3.エクスポートするアーカイブを選択して、ファインダーで開きます。4.右クリックして、パッケージの内容を表示します。5. [製品/アプリケーション]フォルダーに移動します。 .appファイルが表示されます。

ipaの代わりにこれを使用してください。

上記の手順を実行するには、デバイスが既に開発者ポータルに追加されており、すべての証明書がインストールされていることを確認してください。

いったんこれが整ったら。また、下のリンクからios-webkit-debug-proxyを取得してください。

https://github.com/appium/appium/blob/master/docs/en/advanced-concepts/ios-webkit-debug-proxy.md

また、デバイス設定で開発者ツールを有効にします。また、safari webinspector(safari-> Develop)-> Inspectorが有効であることを確認してください:-)

注:appiumでデバイスにアプリをインストールする場合は、バンドルIDを指定しないでください。


パッケージの内容の下に>アプリケーション-アプリケーションのファイルは、製品の下にある
swathy valluri

0

私はこれを行うことによって私のマシンでこの問題を解決することを達成しました:

  • 新しい開発者プロビジョニングプロファイルを生成するリストにあるデバイスでをか、少なくともマシンがプロファイルのデバイスのリストにあることを確認してください。
  • [プロジェクトの設定]-> [コード署名]-> [プロビジョニングプロファイル]-> [デバッグ]で、新しく作成したプロファイルを設定します。
  • [ターゲット設定]-> [コード署名]-> [プロビジョニングプロファイル]-> [デバッグおよびリリース]で、新しく作成したプロファイルを設定します。

お役に立てば幸いです。


0

「少なくとも1つのターゲットが起動に失敗した」という意味を理解しました。どうやらの両方の開発とリリースのスキーム(デバッグ手法とリリース計画を持っている場合は)開発のアイデンティティを持っている必要があります。

プロファイラーを実行するときにデバッグスキームを選択すると、XCodeの上部にある「Running debug」というメッセージが表示されました。しかし、これでは不十分なようです。

リリーススキームのコード署名IDをデバッグスキーム(およびプロビジョニングプロファイル)と同じになるように変更したところ、問題は解消しました。


0

それは機能します..プロファイルスキーマをデバッグモードに変更し、また確認すると、ビルド構成には開発者証明書が含まれています。ありがとう


0

ここでの他の解決策はどれも私の問題を解決しませんでしたが、それはシミュレーターでの私にとっての問題にすぎないと判断しました。デバイスは正常に動作します。おそらく、シミュレータに問題があります。


0

シミュレータとデバイスの両方でXcode 9.1を使用してこの問題が発生し、実行中のスキーマはすでに「デバッグ」でプロファイリングとして設定されていました。最後に、このAppleフォーラムの議論は非常に役に立ち、問題を解決しました。要するに、私のために働いた解決策は... Macを再起動することです。

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.