iOS / Swift開発環境構築メモ
直近ごりごりJavaでサーバサイドの処理を書いていたんだけど、次はiOSアプリをSwiftで作るってことになったので諸々調査とか準備を進めてる。
iOSは3年くらい前にちょーっとだけObjective-Cで遊んだことがあるくらい。
だいぶ開発環境周りも変わってるだろうからまとめておく。
OSの最新化
Xcode 8, Swift 3 でいくので、macOS Sierraにアップグレードしておく。
ここらへんはわりと緩い判断で、iOS 10のみのサポートで良いって言われたから最新でまとめている感じ。
リリース済のアプリケーションがある場合は結構大変そう。
Homebrewインストール
Mac用のパッケージマネージャ。なにかと便利なので入れておく。
以下を実行してインストールする。
/usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"
社内proxyに引っかかる場合は、http_proxy
とhttps_proxy
を設定しておいてやる。
export http_proxy=http://example.com:proxyPort export https_proxy=http://example.com:proxyPort
昔は気が向いた時にbrew update
していたけど、最近は brew upgrade
とか brew install
したときに自動でupdateされるらしい。
Homebrew自体は上で設定した環境変数を見てくれるから、追加のProxy設定とかは必要ない。
Gitのインストール
プロジェクトではGitを利用するので、一応。
$ brew install git
インストールしたGitまでのパスを通しておく。
export PATH="/usr/local/Cellar/git/X.X.X/bin:$PATH"
バージョンを確認し、インストールしたバージョンだったらOK
$ git --version
Rubyのインストール
iOSアプリ開発におけるツール類がわりとRubyに依存しているので、Rubyをインストールしておく。
MacにデフォルトでRubyが入っているけど、global汚染だRubyのバージョンがーとか考えだすと面倒だからrbenv
でRuby入れることにする。
$ brew install ruby-build $ brew install rbenv
以下のコマンドでインストール可能なRubyの一覧を確認。
$ rbenv install -l
最新安定版をインストールして、globalに設定する。
$ rbenv install 2.X.X
$ rbenv global 2.X.X
$ ruby -v
後々使うので、bundlerをインストールしておく。
$ gem install bundler
SwiftLintのインストール
Swiftの静的解析用にSwiftLintを入れておく。
$ brew install swiftlint
.swiftlint.yml
を設定してプロジェクトルートに配置することで、ルールを変更することができる。
ルールは以下を参照。
以下のようにコマンドでルールを確認することが出来る。
$ swiftlint rules
チームで使うGemのインストール
チームでGemのバージョンは合わせたいので、Gemfileに依存関係を書いてbundlerでインストールする。
Gemfileの書き方は以下を参照。
source "https://rubygems.org" gem 'rake' gem 'fastlane', '~> 1.2', '>= 1.2.3' gem 'cocoapods', '~> 1.1.1' gem 'xcode-install', '~> 1.3' gem 'jazzy', :git => 'git@github.com:realm/jazzy.git'
インストール
$ bundle install --path=vendor/bundle
使うときはbudle exec
する。
付けないとシステムにインストールした方が使われる。
$ bundle exec pod install
Xcode 8のインストール
手動
OSが古いとコケたりするみたいだけど、OS最新にしてからなら大丈夫っぽい。
互換性のところに、OS X 10.11.5以降と書かれている。
$ xcode-select --install
か
でインストールする。
xcode-install使う場合
チームでバージョン合わせたいし、後々スクリプト化とか考えたときにもCLIで実行出来たほうが良いので、こっちでいきたいとこ。 まぁ人数少ないし、人の増減もほとんど予定していないので別に良いんだけども。
userIdとかpasswordを求められたら、AppleのIDとpasswordを入れれば良い。
$ bundle exec xcversion update $ bundle exec xcversion list $ bundle exec xcversion install 8.0 $ bundle exec xcversion select 8.0
Xcodeのプラグインインストール
Xcode8でプラグインを使用するためには各プラグインにUUIDを追加する必要があるとかで、それをやってくれるgemをインストールしておく。
$ gem install update_xcode_plugins $ update_xcode_plugins
プラグインマネージャのインストール
プラグインマネージャはAlcatraz一択っぽい感じ。昔も使ってたし。
以下を実行することでインストールできる。
$ curl -fsSL https://raw.githubusercontent.com/supermarin/Alcatraz/deploy/Scripts/install.sh | sh
なにはともあれVim
XVim入れる。
Xcode8に入れる場合は手順が違うので注意。
あとはお好みで
便利そうなの入れる
まとめ
とりあえずまとめてみた。 次は自動化できるところは自動化するようにするのと、CIあたりをまとめたい。