読者です 読者をやめる 読者になる 読者になる

みーのぺーじ

みーが趣味でやっているPCやソフトウェアについて.Unity, Python, Processingなどのプログラミングや,脱獄, hackintoshなど

トップ / 記事一覧 / カテゴリ

iOSアプリを無料で実機テストする (iOS7版) (要脱獄)

iOS

自分で作成したiOSアプリを実機で動かすにはAppleのDeveloperプログラムにお金を払うのが一般的ですが,ここでは無料で実機でアプリを動かす方法を紹介します.ただしiOSデバイスを脱獄する必要があります.

以前の記事が古くなったのでiOS7用に新たに書き直しました.

環境

みーがこの記事を書くのに使用したものとそのバージョンは以下のとおりです.これ以外のバージョンでもディレクトリなどを適切に読みかえればうまくいくと思います.

Mac

  • OS X Mavericks 10.9.1
  • Xcode 5.0.2

iPad 2

初回の設定

もしも初めてこの作業をする場合は,以下の作業を予め行っておく必要があります.

  • Certificateの作成
  • Xcodeの設定変更
  • 脱獄したiOSデバイスにOpenSSHをインストール

これらの方法はこちらに書いてありますので,設定をしてください.OpenSSHのインストール方法はこちら[cydia.saurik.com].

Xcodeでアプリをビルド

Xcodeを起動します.

f:id:atsuhiro-me:20151104004332p:plain

ここではMaster-Detail Applicationを選択し,Nextをクリックします.(このチュートリアルではこれを選択していますが,各自適切なものを選択してください.)

f:id:atsuhiro-me:20151104004334p:plain

Product Nameをios7testとし,Company Identifierをnet.atsuhiro-meとしました.それぞれの環境に合わせて設定してください.

f:id:atsuhiro-me:20151104004339p:plain

この状態でアプリケーションはエミュレータにて動作することを確認します.そしてiOSデバイスをUSBでMacに接続して,Xcodeのターゲットを実機に設定します(下図左上の赤矢印).

次にBuild Settings(下図中央の赤矢印) をクリックして,Code SigningのCode Signing IdentityをDon"t Code Signに設定します(下図中央下の赤矢印).

f:id:atsuhiro-me:20151104004344p:plain

メニューバーからProduct > Build For > Runnning とするか,Shift+Cmd+Rを押してビルドします.すると左サイドバーのProductsフォルダーにappがビルドされ赤字から黒字になるのか確認されます.これを右クリックしてShow in Finderをクリックします.するとFinderでappのフォルダーが開かれます.

f:id:atsuhiro-me:20151104004347p:plain

codesignをする

次にappのcodesignをします.これをしないとiOSデバイスでのアプリの認証が失敗し起動しません.

まずターミナルにて先ほどのアプリのフォルダーへcdで移動します.そして以下のコマンドを実行します.

$ export CODESIGN_ALLOCATE="/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/codesign_allocate"
$ codesign -fs "iOSdev" ios7test.app/

以前のXcodeからcodesign_allocateのパスが変更になったようです.注意してください.(OHO"s Blog の Codesign Useful Info in XCode 5.0.1 より)

"iOSdev"というのは最初に作成したCertificateの名前で,ios7test.app/というのはアプリの名前です.自分の環境に合わせて読み替えて下さい.

ダイアローグが表示されるので,Allowをクリックして完了です.

iOSデバイスにアプリを転送しchmodする

Cyberduckというフリーソフトをダウンロードし,インストールします.SFTPクライアントならなんでも良いのですが,みーはこのソフトがオススメです.

iOSデバイスにてSSHサーバーが動いているのを確認し,iOSデバイスがMacと同じWiFiネットワーク上にあることを確認し,iOSデバイスのIPアドレスを設定から確認して,以下の情報を指定します.

  • SFTP
  • Server:iOSデバイスのIPアドレス
  • Username: root
  • Password: 各自設定したパスワード

パスワードって何?という場合はalpineと入力してください.後でこちらの方法にしたがってSSHのパスワードを変更することを強く推奨します.

f:id:atsuhiro-me:20151104004350p:plain

すると以下のようにiOSデバイスのディレクトリが表示されるので,/Applicationsに移動し,ここに先ほどcodesignしたアプリ(ios7test.app)をアップロードします.

f:id:atsuhiro-me:20151104004352p:plain

その後,アプリ(ios7test.app)を右クリックして,Infoを開き,PermissionタブからPermissionを775に変更し,アプリの本体(ios7test.app/ios7test)のPermissionを775にします.

f:id:atsuhiro-me:20151104004354p:plain

iOSデバイスを再起動すると,下のスクリーンショットのようにアプリが表示されます.

f:id:atsuhiro-me:20151104004357p:plain

起動するとじゃじゃーんと自分のアプリが動きます.

f:id:atsuhiro-me:20151104004403p:plain

こんな感じ.

f:id:atsuhiro-me:20151104004405p:plain

以上です,お疲れ様でした.

なお,この作業を行う上でよく出てくるエラーを,こちらにまとめているので,合わせて参照ください.