自分のiOSデバイスなら開発者ライセンスなして、アプリを動かせるようになるので、自動でコードを落してきてビルドして転送するタイプのアプリ配布補助をだれか初めてほしい。「brew install ios/hoge」でイスントールできる感じ
— mzp (@mzp) 2015, 6月 10
Xcode7 からApple Developer Programに参加しなくて、iOSアプリの実機デバッグが可能になった。
これを利用し、Github等で公開されているソースコードをダウンロードし、自分のiPhoneにインストールするHomebrew拡張を作った。 例えば brew sparkling install SparkingSample
でサンプル用のアプリケーションがインストールされる。
主な用途としては、次のようなアプリケーションの配布を想定している。
- 進捗時計のような雑なアプリケーション。AppStore審査を通さない分、気軽に公開できるようになる。
- Provenance(マルチエミュレータ)のようなAppStoreの審査を通過できないアプリケーション。
準備
必要なもの
初期設定
- Xcodeを起動し「Preferences -> Accounts」から、AppleIDを登録する。
- 右下の「View Details」をクリックし、表示された画面で「iOS Development」のSigning Identifiesを作成する
使い方
インストール
brew install codefirst/sparkling/brew-sparkling
Xcodeを再起動すると、プラグインをロードするかを確認されるので、「Load bundle」を選択する。
設定
Xcodeの情報を正しく接続できているかを確認する。
# アカウントの確認 brew sparkling accounts # 証明書の確認 brew sparkling certificates # 接続されているデバイスの確認 brew sparkling devices
適当なものを選び環境変数に設定する。自分の場合は以下のようにしている。一個しか表示されないなら特に設定は不要のはず。
export BREW_SPARKLING_USERNAME=brew_sparkling@icloud.com export BREW_SPARKLING_CERTIFICATE='iPhone Developer: brew_sparkling@icloud.com (xxxxxx)' export BREW_SPARKLING_DEVICE=mzpPhone
iOSアプリのインストール
iPhoneがロックされているとインストールできないので、自動ロックはオフにしておいたほうがよい。
インストールできるアプリケーションの例
Firefox for iOS
Firefox for iOS。現時点ではまだリリースされていないがソースコードが公開されているため、Sparklingでインストールできる。
インストール方法:
brew sparkling install Firefox
JapaneseKeyboardKit
Google日本語入力から派生したMozcをiOSに移植したキーボード。 JapaneseKeyboardKit·Mozcを使ったiOS8用カスタムキーボード MOONGIFTなどで紹介はされているが、AppStoreでは配布されていなかった。
インストール方法:
brew sparkling install JapaneseKeyboardKit
SpoolDays
指定した日付からの経過日を表示するアプリケーション。AppStoreで公開していない理由を作者である@suerさんに聞いたところ「怠惰」とのこと。
インストール方法:
brew sparkling install SpoolDays
Provenance
SNES、Sega Genesis、Game Gearなどのマルチエミュレータ。ここでは、スーパーファミコンのプログラムを書きたい - ポルノアニメのROMを動かしている。
インストール方法:
brew sparkling install Provenance
その他
インストール可能なiOSアプリは brew sparkling list
で一覧表示できる。もしくはGithubレポジトリを見てもよい。
その他
制限
- Capabilityが利用できないため、位置情報の取得、バックグラウンド再生、アプリ内課金などの機能は利用できない。
- 3ヶ月で有効期限が切れるため、定期的に再インストールが必要。
関連リンク
謝辞
欲しいものリストにあったSparklingがたくさん届いた https://t.co/wvLcgQTql6 pic.twitter.com/lPr1PhuavJ
— ばんじゅん(!!) (@banjun) 2015, 8月 10
Xcodeの挙動を解析するときに@banjunさんにものすごくお世話になったので、Sparklingっぽいものを贈っておいた。