[mac] iOSアプリを無料で作成する Xcode7 freecost
動作確認環境:
- macOS 10.10 Yosemite(2014)
- iOS 9.3.2 (iPhoneSE 2016)
iOSアプリを作成してみたい。 以前は年額1万円超の開発者登録が必要だったが、Xcode ver7(2015)から無料でiPhoneにインストール可能になったので、まずは無料で試すぞ。
動作環境のMacOS 10.10 Yosemite(2014)というのは古い環境だな。
最新macOS 10.13 High Sierraにアップデートもできるらしいけどね。今回は環境作り直すのが面倒なので、10.10でやってみるぞ。
Xcode 7 install
まず、MacOSに開発環境Xcodeを確認。Finder下の[home]ダブルクリックで見ると、Xcode3.2.6が入っていた。Xcode ver7を入れねば。
https://developer.apple.com/support/xcode/ のprevious versionのリンクをたどる。
こちらのXcode 7.2.1と7.3.1を両方取得。
なぜ2つ必要?
Xcode 7.2.1はmacOS 10.10で動作するが、iOS9.3の接続設定を持っていない。 Xcode 7.3.1が動作するのはmacOS 10.10ではなく10.11からだ。 だからiOS9.3の接続設定だけ、Xcode7.3.1から7.2.1にコピーする。しないとiOS9に転送するとき could not find developer disk image というエラーメッセージが出るからね。
Xcode 7.2.1は9GBあったがdmgをひらいてApplicationフォルダーにインストール(といってもdmg→Applicationフォルダーは単なるコピーらしい)。 Xcode 7.3.1のインストール名も「Xcode.app」という名前なので、一時的に「Xcode72.app」とかにフォルダー名を変える。 Xcode 7.3.1は10GBもあったがdmgをひらいてインストール。Xcode7.3.1の「Xcode.app」は消してもいいしXcode73.appにrenameでもいい。Xcode72.appをXcode.appにrenameして戻す。
[アプリケーション - Xcode - パッケージ内容を表示] Contents/Developer/Platforms/iPhoneOS.platform/DeviceSupport/
ここの 9.3 をコピー。
build iPhone App
次はXcodeを動作確認しよう。まずは単純なiPhoneアプリを生成して、iPhoneにインストールできるか試す。
Xcode起動して、[iOS - App - SingleViewApp] を選択。
これをそのままビルドすると何も表示のないアプリが作られる。でも何か文字を表示したいよね。 http://www.atmarkit.co.jp/ait/articles/1211/07/news017_4.html を見て文字表示を追加。
ViewController.m の viewDidLoad() に以下の行を追加。
UILabel *label = [[UILabel alloc] init];
label.text = @"Hello World?";
[label sizeToFit];
label.center = self.view.center;
[self.view addSubview:label];
install iPhone App
これでビルド。まずiPhoneをMacとケーブルで接続。接続すると充電されたりMac写真アプリが起動したりiPhone側で信頼したりがあるけど省略。
Xcodeの画面上部の「デバイス」でiPhoneを選択。 Xcodeの画面上部の ▶ をクリックでビルドしてiPhoneにインストールしてくれる。
▶ 押すとis busyというのはビルド途中。 build suceededまで待つ。
Fix issue → add → choose
▶ 押すとiPhoneにインストールされた。実行不可。
iPhone側で[設定 - 一般 - プロファイルとデバイス管理 - developer app] で承認。 実行可能を確認した。
ちゃんと動作したね。無料でiPhoneに自作アプリをインストールできるのか。
無料でインストールしたアプリは1週間たつと起動できなくなるぞ。正確には、起動はするのだが起動直後にウィンドウが閉じるみたいになる。[Home]ボタン2度押しするとバックグラウンドで動作していることはわかるんだが、フロントに戻せない。
それは厳しい。いちいちLightning-USBケーブルでつなぐ必要があるのも面倒だし、自由なAndroidとは違うんだなあ。
0 件のコメント:
コメントを投稿