iOS デバイスでの iOS アプリケーションの実行

iOS モバイル アプリケーション開発 への移動


iOS デバイスでアプリケーションを実行するには、その前に以下の手順を問題なく終わらせる必要があります。

次の図は iOS 開発プロセス(iOS デバイスへの接続を含む)の概念を示したものです。

Win2Mac2iOSDevice.png

iOS デバイス上でのアプリケーション実行手順

Apple 社製 USB ケーブルで iOS デバイスを Mac に接続する
  1. Mac 上でプラットフォーム アシスタントを実行します。
  2. Mac との接続をテストします([接続プロファイル マネージャ]ページ)。
  3. Apple 社標準 USB ケーブル(右の画像)で iOS デバイス(iPhone や iPad など)を Mac に接続します。
    メモ:
    • 同時に複数の iOS デバイスを Mac に接続できません。
    • iOS SDK のバージョンが iOS デバイスのバージョンと一致しなくてもかまわない場合があります。たとえば、アプリケーションを iOS 6.x SDK でビルドして、5.x デバイスで実行できます。
  4. RAD Studio で以下の作業を行います。
    1. [プロジェクト マネージャ][ターゲット プラットフォーム]ノードを展開し、[iOS デバイス]ターゲット プラットフォームをダブルクリックして、そのプラットフォームを選択します。選択したターゲット プラットフォームが太字で表示されます。
    2. [ターゲット プラットフォーム]ノードで[iOS デバイス]ノード、[構成]ノードと展開し、プラットフォーム構成[Debug]をダブルクリックして選択します。選択したプラットフォーム構成が太字で表示されます。
      メモ:プラットフォーム構成が[アドホック]および[アプリケーション ストア]の場合には、RAD Studio から直接 iOS デバイスでアプリケーションを実行できません。アドホック配布用に配置したアプリケーションを実行する方法は、「iOS アプリケーションをアドホック配布用に配置する」を参照してください。App Store 用にビルドしたアプリケーションを実行するには、そのアプリケーションを App Store からインストールする必要があります。
    3. アプリケーションを実行します。デバッガは使用しても([実行|実行)使用しなくても([実行|デバッガを使わずに実行)かまいません。

RAD Studio によって、IDE に既に追加されている SDK を使ってアプリケーションがビルドされ、iOS デバイス プラットフォーム用に構成した接続プロファイルを使って Mac への接続が行われます。また、Mac 上のプラットフォーム アシスタントによって、接続された iOS デバイス上でアプリケーションが起動されます。

メモ: iOS デバイスでユーザーのアプリケーションを起動するまでの間、RAD Studio の応答がなくなったようにみえることがありますが、アプリケーションの実行準備をしているだけで問題ありません。

トラブルシューティング

'Device connection timeout'(デバイス接続のタイムアウト)が発生したら iOS デバイスを Mac に接続する

iOS デバイスが接続されていない場合、iOS デバイス上でアプリケーションを起動しようとすると、次のメッセージが IDE に表示されます。

 Device connection timeout

このメッセージが表示されたら、以下の手順を実行してください。

  1. メッセージを閉じます。
  2. Apple の USB ケーブル(上で示したもの)を使って iOS デバイスを Mac に接続します。
  3. アプリケーションをもう一度 IDE から実行します。実行方法は上記の手順を参照してください。
メモ:PAServer コマンドライン ユーティリティの -devicetimeout=<n> を使用して、デバイス接続のタイムアウト時間を設定することができます。ただし、デバイス タイムアウトの値を変更しても、iOS デバイスが存在しない場合の問題は解決しません。

'Unable to locate DeviceSupport directory matched with connected device info'(接続したデバイスの情報に一致する DeviceSupport ディレクトリが見つかりません)

デバイスの iOS バージョンを最近アップグレードした場合は、iOS デバイスでアプリケーションを実行しようとしたときに上記のエラー メッセージが出力される可能性があります。このメッセージが表示されたら、以下の手順を実行してください。

  1. メッセージを閉じます。
  2. Mac で Xcode を開きます。
  3. [ウインドウ|オーガナイザ]を選択し、お使いのデバイスが Xcode で認識されるかどうかを判断して、以下を行います。
    • デバイスが Xcode で認識される場合は、Xcode にデバイスのサポート情報をインポートし直し、RAD Studio からアプリケーションを再度実行してみます。
    • デバイスが Xcode で認識されない場合は、Xcode をアップグレードする必要があります。
      メモ: あるいは、デバイスが Xcode で認識されないが、お使いの Mac の Xcode をアップグレードしたくないという場合には、お使いのデバイスを認識するアップグレード版の Xcode がインストールされている別の Mac にデバイスを接続してみることもできます。お使いのデバイスのサポート情報を新しいバージョンの Xcode で再度インポートしたら、古いバージョンの Xcode で、アップグレードした iOS デバイスも認識されるようになる可能性があります。

iOS デバイスに何も表示されない

この手順に沿って iOS デバイス上でアプリケーションを実行したときに、アプリケーションが iOS デバイスに表示されなければ、以下の点を確認してください。

  • プラットフォーム アシスタントが Mac で動作している必要があります。「Mac でのプラットフォーム アシスタントの実行」を参照してください。
  • RAD Studio で、iOS デバイス ターゲット プラットフォームに関連付けた接続プロファイルが、ターゲットのプラットフォーム アシスタントのインスタンスに接続されている必要があります。
    • プロジェクトで iOS デバイス ターゲット プラットフォームに関連付けられた接続プロファイルを構成する手順は、「ターゲット プラットフォームをアクティブにして構成する」を参照してください。
    • [ツール|オプション...|環境オプション|接続プロファイル マネージャページで以下を行います。
      • (使用可能な接続プロファイルがプラットフォームごとに一覧表示されている)左側の列で[iOS デバイス]ターゲット プラットフォームに関連付けられている接続プロファイルを選択します。
      • その接続プロファイルの値、たとえば IP アドレス(Mac の IP アドレスでなければなりません)やポート番号(プラットフォーム アシスタントのポート番号でなければなりません)を確認します。
      • [接続テスト]をクリックして、開発用 PC から Mac 上で稼働しているプラットフォーム アシスタントへの接続が正しく動作しているかを確認します。
  • 同時に複数の iOS デバイスを Mac に接続できません。

アプリケーションがブレークポイントで停止しない

iOS デバイスでのデバッグ セッション中にクラッシュした後、次のデバッグ セッションがうまく機能しなくなることがあります。

デバッグ シンボルを使用して実行しているときに、アプリケーションは実行できるが、ブレークポイントで停止しない場合は、次の手順を実行します。

  1. Mac で Xcode を起動します。
  2. Xcode で iOS アプリケーションを新規作成します。
  3. 新しい Xcode iOS アプリケーションが開いたら、[iOS Device]をターゲットとして選択します。
    XcodeIosDeviceTarget.png
  4. [Run]をクリックしたままで、表示されるコンテキスト メニューから[Analyze]を選択します。
    XcodeAnalize.png

ここで、Xcode を閉じ、引き続き iOS デバイスで、RAD Studio アプリケーションをデバッグできます。

関連項目