Tag Archives: Xcode

Xcodeでは自分でビルドしたアプリのapplicationDataを.xcappdata(中身はアプリのディレクトリが殆どそのまま入ってる)として取り出すことができ、
この.xcappdataを使うとXcodeからそのアプリの状況を再現してデバッグをすることが出来ます。 

詳しくは以下の記事を読んでみて下さい

自分でビルドしてiPhoneに追加したアプリはXcode の Organizer に表示されるのですが、
AppStoreから入れた場合、デバッグビルドで上書きしてもXcode の Organizerに表示されないことがあります。

今回はAppStoreで入れたものでも、 Xcode の Organizerにでるようにする方法についての話です(もちろん、自分でビルドできるものに限ります)

単純にまとめるとipaとしてビルドして、入れ替えると表示されるようになるので以下のような手順を踏みます。

  1. XcodeのArchievesをする(端末に入れられるCodeSignをつけておく)
  2. Archievesタブ の Distributeボタンを押して、Save for Enterprise Or Ad-hoc Deploymentを選択してipaファイルとして保存する
  3. Devicesタブで、入れ替えたい端末のApplicationsを選んで、Addからipaを選択してアプリを置換する
 
NewImage

このような手順を踏むと、端末のApplicationsに置換したアプリが表示されるようになるので、
Downloadボタンから.xcappdataファイルを保存できるようになります。

こうすることで、Store経由でいれて見つかったバグ等をiOSシミュレータ上で再現できるようになるのでデバッグにとても便利です。 

XcodeのInterface BuilderはGUIで簡単に似た目を作れるので便利で、StoryBoardを使うと遷移するよなモックも比較的作れるようになります。

Interface Builderで、既にVIewに置いたUIButtonのimageに画像を設定しても、 そのボタンのサイズのままで、画像サイズに合わせてくれないのが気になっていました。

MediaLibrary xcodeproj  MainStoryboard storyboard

画像を設定したら、そのボタンもボタン画像と同じ大きさにリサイズしてくれるというようになってくれるといいなと思っていて、
気づいてなかったのですが実はXcodeにそのようにする方法が用意されていました。

Interface Builderの右下(ユーティリティ領域のライブラリペイン)から、”Media Library”を選択するとプロジェクトに追加されてる画像等のリソースが表示されます。
そのリソースをドラッグ&ドロップでボタンに投げると、その画像と同じ大きさのボタンにリサイズされます。

 

MediaLibrary xcodeproj  MainStoryboard storyboard 1

MediaLibrary xcodeproj  MainStoryboard storyboard 2

同様の方法で、画像のサイズと同じUIImageViewを作ろうする場合は、直接”Media Library”から画像をD&Dすれば作成できます。
この場合逆にUIImageViewを作ってからそこへD&Dすると作っておいたUIImageViewのサイズになるようです。

MediaLibrary xcodeproj  MainStoryboard storyboard 3

Xcodeのユーティリティ領域は分かりにくい部分が多いですが、これは便利でした。

参考

それぞれについての簡単な導入方法です。
まずは標準で入っているSenTestingKitから。
(非同期なテストができなかったり、使いにくいとかいろいろ言われていますが)
サンプルが配布されているので、それを使ってみるのが楽です。

公式に配布されているサンプルはXCodeから直接開くことができます。
XCodeのスタート画面 -> Learn about using XCode -> iPhoneUnitTestsで検索 -> Open Project

NewImageNewImage

電卓アプリでSenTestingKitの基本的なテスト方法がわかる。

テストのやり方についてはReadme.txtに書いてあって、
  1. メニューバーから〜TestのiPhone4.3エミュレーターなどを選ぶ
  2. ProductからTestを実行する
  3. View > Navigators > Log にテスト結果がでる。
  4. 成功の場合はログにでるだけ、失敗の場合はテストの失敗した場所がRedになる

オールグリーンの時は何も表示されない(ログだけなのが残念な感じ)

Xcode4でのユニットテストもGHUnitが良い | CAPH TECH

非同期テストができて、アプリとして起動するテストフレームワーク
導入は公式のGHUnit: Installingが一番わかり易い。
導入でハマる可能性がある所はOther Linker optionぐらいかも。
導入して、テストケースを書くときに使うテンプレートはtiboll/GHUnit-Template at master – GitHubから拝借。
  1. ~/Library/Developer/Xcode/ に Templatesディレクトリを作成
  2. GHUnit Test Case.xctemplate ディレクトリごと 先ほど作成したTemplatesフォルダに入れる
  3. New Fileにテンプレートが加わってる
GHUnitは奥が深く人気もあるので、多分メインなものになりそうです。
BDDなテストフレームワークとしてKiwiも気になる。