「流行りの iPhone アプリを作ってみよう」とMac mini と Shade 3D を買ったのは 12年前。そのまま、多忙やらモチベーションの低下やら様々な理由で死蔵していた。最近押し入れから出して、メディアプレーヤーやフリーウェアのゲームを詰め込み、ゲームコンソールとして使っているうちに、突如アプリを作ってみたくなった。この記事はその検証結果メモだ。
今更興味本位でアプリ作りたさに新品の M1 Macintosh を買おうにも、8万円の出費はでかすぎる。この記事に沿って作業すれば、ハードオフに転がっているジャンクの Macintosh でも iPhone、iPad のアプリケーションが作れる。Appleの 開発者プログラムに参加する必要もない。最小限の出費でアプリを作ってみたい、という方はこの記事を参考にしていただきたい。更に、5000円程度の中古 iOSデバイスも買っておくとよいだろう。上図の iPad 第三世代は、IOSYSの通販で3800円だった。
この検証で判った事
- Apple の開発者プログラムに参加しなくても、iPhone, iPad アプリを作成できる。
-
自作アプリを使用するには、
- iPhone, iPad に特殊な設定は要らない。設定->一般->デバイス管理 でボタンを押すだけ。
- iPhone, iPad をMacintosh に USB 接続すればプログラムを転送できる。ストアに公開する必要はない。
-
最新の Xcode が使用できる新しい Macintosh でなくても、iPhone, iPad アプリは開発できる。
- 今回の例では Mac mini (Mid 2011) を使用した。
注意:この手順に沿ってアプリを開発しても、Apple のストアにアプリを公開する事はできない。USB接続される自分のiPhoneや iPad で動くアプリしか作れない。あくまで学習環境として使おう。
12年前に買って、何ら使わず放置して陳腐化した Mac mini (Mid 2011)。中のハードディスクは SSD に換装してあり、オペレーティングシステムは、この機種の上限である High Sierra (10.13) にアップデートしてある。昔の機種だが、web閲覧するだけではもったいない十分すぎるハードウェアスペックだ。
買った当初に登録した開発者アカウントはとっくに有効期限が切れている。Unity で作ったものを iPhone に出力する為に登録したきりで使っていない。
開発環境のインストール
アプリストアで開発ツールをインストールしようとしたら拒否られた。High Sierra をサポートする最新の Xcode は 10.1 である。
https://developer.apple.com/download/all/?q=Xcode%209
そこで、High Sierra をサポートするXcode 9.4.1 を使う。Xcode 10は GitHub に接続できなかったのでお勧めしない。
Chrome でダウンロードするとファイルが壊れてしまうので、Safari でダウンロードする。Xcode_9.4.1.xip をダブルクリックすると解凍され、”Xcode” が展開される。これを更にクリックすると、Xcode がインストールされる。
お好みだが、上記に示すように 、「Applications」ディレクトリで xip -xコマンドを使って解凍すれば、「アプリケーション」の中に Xcode アイコンができる。
Apple ID と GitHub アカウントを登録する
早速クリックする。起動したら「Preferences..」を選ぶ。
「Accounts」 を選んで、”+” をクリックして、手持ちの Apple ID を追加する。開発者アカウントでなくても問題ない。
さらに、GitHub のアカウントを接続する事をお勧めする。GitHub に転がっている iOSアプリのソースコードを引用できるからだ。
GitHub に接続する為のパスワードは、GitHubにログインする際に使うパスワードではなく、「Developer Settings」 で作る、「personal access token (classic)」 の方だ。このトークンを、GitHubで作成して Xcode 側にペーストする。以下にトークンの作成の経緯を示す。この例では適当に、「Xcode」というタイトルでトークンを作った。「Select scopes」でも適当に、全部にチェックを入れた。
GitHubでトークンを生成し、XcodeがGitHubに接続できた状態を以下に示す。
GitHub にあるプロジェクトでアプリケーションをビルドする
Xcode を再起動して、「Clone an existing project」をクリックする。
アドレスバーに、GitHub のプロジェクト URL を入れて「Done」をクリックすると、GitHubから必要なファイル一式が Macintosh にダウンロードされる。
この記事では「 https://github.com/thomasfinch/GammaThingy 」という、輝度調整ユーティリティーのプロジェクトをコンパイルしてみる。
「Clone」をクリックすると、プロジェクトファイル一式がドキュメントの中にコピーされる。
コピーされると、ファイル一式のツリーと、接続されている iOS デバイスが表示される。以下はiPad 第三世代 (iOS 9.3.6) がUSB接続されている状態だ。
この状態ではいきなり実機で実行する事になるので、Preferences を再び開き、Components で iOS Simulator をダウンロードする。11.3と、9.2を選択してダウンロードした。
このままでプロジェクトをビルドすると、作者の署名の設定が適用されてビルドが失敗する。このため、以下に示すようにプロジェクトを修正しなければならない。
- 「identity」の Display Nameと、Bundle Identifier は任意の名前に書き換え
- 「Signing」では一旦、Automatically manage signing のチェックを外してから更に入れ、Team で自分のIDを選択する。
- 「Deployment Target」では、USB接続されている iOSデバイスの OSのバージョン、デバイスの種類を選ぶ。
他は修正しなくてもよい。左上の赤丸をクリックしてこのダイアログを閉じる。
ビルドしたアプリケーションを実行する
左上の「▽」を押すと、USB接続されている iPadでプログラムが起動するはずなのだが、iPad側の「デバイス管理」で許可を設定しないと、以下のエラーが起きる。
そこでiPadの「一般」の「デバイス管理」を開き、「~を信頼」をクリックする。
信頼が設定されると、以下の表示となる。
ビルドしたアプリが iPad 上に表示されているので、クリックして開始する。
無事起動できた。