T

iOS実機上でのデバッグ

Titanium SDK 3.0がリリースされたので、さっそく新機能であるリモートデバッグについて調べてみました。

原文:http://docs.appcelerator.com/titanium/latest/#!/guide/Debugging_on_iOS_Devices

====================================================

iOSの実機上でのデバッグ

【概要】

Titanium SDK 3.0から、Titanium Studioを利用してiOS実機上でデバッグセッションを開始することができるようになりました。iOS実機でのデバッグは以下のステップで実行できます:

  • 「Debug on iOS Device」を選択する
  • Stuidoでアプリをビルドする
  • アプリを自動または手動で実機に同期する
  • アプリを実機上で起動する
  • LANのWifiを経由してStudioとデバッグセッションを開始する

本項ではこれらのステップとデバッグセッションの起動について解説します。

* 「Deploying to iOS devices」に記載されていますが、iOS実機上でのデバッグはOS Xでのみサポートされています。

【必要なもの】

iOSの実機でデバッグするためには

  • Titanium StudioからiOS実機へのアプリのインストールが出来るようになっている必要があります(まだアプリを実機にインストールしたことがない方は「Deploying to iOS devices」をご覧下さい)。
  • Titanium SDK Release 3.0以降がインストールされていること。
  • Titanium Studio 3.0以降がインストールされていること。
  • OS Xマシーンと実機が同じWi-Fiネットワークに接続されていること。デバッガープロトコルはネットワーク越しに送信されます(ケーブルで代用することはできません)。

デバッガーを実行するたびにStudioがアプリをビルドしてiTunes経由でインストールしようとします。iTunesを経由してインストールするのではなく、必ず

  • USBケーブルで実機を接続します(推奨)。
  • 実機側でLAN経由でiTunesと同期するよう設定します。そのためには実機は必ず電源と接続されている必要があります。それからルーター側でマルチキャストとUPnPが有効になっていなければいけません。

iTunesを実機と同期させている場合は、iTunes側で自動的にアプリを同期する設定にすると便利です。

iTunesで同期する以外のやり方として、Titaniumでアプリのビルドが完了したらXcodeやiPhone Configuration Utilityを使ってアプリをインストールすることもできます。

【ネットワーク設定】

iOS実機上でデバッグするためには、Studioを実行しているコンピュータと実機を同じWi-Fiネットワークに接続する必要があります。
公衆無線LANの中にはインターネット側の通信だけを許可してクライアント同士の通信を許可していない設定になっているものもあります。このようなネットワークではiOSのデバイス上でのデバッグを実行することはできません。
もし適当なネットワーク環境がない場合は、ad-hocネットワークをコンピュータ上で作成してデバイスからそちらを利用する方法があります。詳しくはAppleサポートサイトの「OS X Mountain Lion: Create a computer-to-computer network」からad-hocネットワークの作成方法をご覧ください。

【デバッグセッションの起動】

デバッグを開始する前に、iPhone/iPadをターゲットにしたTitaniumのプロジェクトを作成しておく必要があります。基本的には次の3つのステップがあります:

  1. Titanium Studioでデバッグ用セッションを初期化する
  2. アプリケーションのビルドとインストールが完了するのを待つ
  3. 実機でアプリを実行してデバッグを開始する

・デバッグ用セッションの開始

  1. Titanium StudioのApp ExplorerまたはProject Explorerビューからプロジェクトを選択
  2. ツールバーのDebugアイコンをクリック
  3. iOS Deviceを選択してDebug on iOS Deviceウィザードを開始
  4. ウィザードを完了してデバッグ用セッションを初期化。Titanium Studioでデバッグ用のビルドで利用する証明書やプロヴィジョニングプロファイル、SDKのバージョンを選択するプロンプト画面が表示される

一度ウィザードを完了するとTitanium Studioは起動設定を作成し、Titanium iOS Device – <アプリ名>として保存します。この起動設定をDebugのドロップダウンメニューから選択するとウィザードをスキップして同じ設定の新しいデバッグ用セッションを開始することができます。

【ビルドとインストール】

デバッグ用セッションの開始前にいくつかステップがあります。

  1. Titanium Studioでプロジェクトを作成する
  2. ビルドしたアプリはiTunesにインストールされる。すでに実機にインストール済みであれば、iTunesは古いバージョンと新しいバージョンを置き換えるかプロンプトを表示する。
  3. 接続されたデバイスにiTunesで同期する

それ以外にも、XcodeやiPhone Configuration Utilityを使って新しくビルドしたアプリを実機にインストールすることもできます。

【アプリの起動とデバッグ】

アプリのインストールが完了すると:

  1. 実機上でアプリを実行
  • ダイアログが表示され、デバッグ用セッションが開始するのを待っていると表示される
  • Titanium Studioに実機が接続されてデバッグ用セッションが開始(して、Titanium StudioのDebugパースペクティブが表示される)
  • 同じデバッグバージョンのアプリを同時に複数の端末にインストールして、同時に起動するなど稀なケースでTitanium Studioからどちらのバージョンでデバッグするかプロンプトで表示されることがあります。

    【iOS実機デバッグでの問題トラブルシューティング】

    iOSの実機がDebugのドロップダウンメニューに表示されません

     tiapp.xmlで選択されているTitanium SDKが3.0以降であることを確認してください。

    最初の起動時にiTunesから実機へのアプリの同期が失敗します

     iTunesのAppsタブを確認してください。自動で同期する設定になっていること、新しいアプリの隣に表示されているチェックボックスがチェックされているかどうかを確認してください。されていなければチェックして「同期」をクリックしてください。

    デバッガの接続に失敗します

     iOS実機とコンピューターが同じWi-Fiネットワーク上にいることを確認してください。
     Titanium Studioで新しいデバッグ用セッションを起動してください。実機上のアプリをリスタートしないとデバッグ用セッショッンもリスタートすることができません。

    Wi-Fi同期での問題

    USDBケーブルで接続されていなくてもiTunesから実機が確認できる状態になっている必要があります。そうなっていない場合は以下を試してください:

    Wi-Fiネットワークにマルチキャストまたはブロードキャストアドレスがあるかどうかを確認してください。たいていの家庭用ルーターではデフォルトで有効になっているはずですが、企業内のLANや公衆無線LANではそうなっていないかもしれません。マルチキャストまたはブロードキャストアドレスはWi-Fi同期では必須になっていますが、デバッグ目的であればUSBケーブルで同期している場合は不要です。
    Appleサポートの「iTunes 10.5 and later: Troubleshooting iTunes Wi-Fi Syncing」に記載された説明に従ってください。

    【ネットワーク接続のテスト】

    実機とコンピューターが同じネットワークにいるかどうかを確認するために、Titanium Studioで試験用のウェブサイトを作成します。

    実機のIPアドレスを確認します(こちらの解説を参照: http://www.iclarified.com/entry/index.php?enid=496)。
    Titanium Studioで新規プロジェクトを作成します。
     File > New > Projectをクリック
     Web Projectを選択してNextをクリック
     Default Templateを選択してNextをクリック
     プロジェクト名を入力してFinishをクリック
    HTMLファイルをウェブプロジェクトに作成します:
     Project Explorerビューでプロジェクトのフォルダを選択してFile > Newをクリック
     ファイル名にtest.htmlを指定
     新規ファイルを編集して何か基本的なHTMLを入力
    Preferences > Titanium Studio > Web Servers > Built-inをクリック
    実機のIPアドレスと同じレンジにあるIPアドレスを選択
    Titanium Studioを再起動
    Project Explorerビューで先ほど作成したHTMLファイルをクリック
    Run > Runをクリック
    ブラウザが起動してウェブページを開きます
    iOS実機上でウェブブラウザを開く
    コンピューター上のURLバーに表示されたURLを実機側でも開く
     iOS実機上でもページが表示されれば、同じネットワークにいます
     ページが表示されなければネットワークに問題があります

    【関連トピック】

    Posted by on 12月 17, 2012 in Apple, Titanium

    コメントを残す