まだTestFlight使ってたの？急げ！終了目前のTestFlightから,今すぐにiOSもDeployGateに移行しよう！移行パターンも紹介するよ。

by @mixiappwchr

旧TestFlightがいよいよ2/26に終了のお知らせです。買収されて以来この日が来ることは目に見えておりましたが、買収先のApple版TestFlightにそのまま移行か？というとそうでもありません。



# Apple版TestFlightでの問題
* iOS8 のデバイスonly
   * これは結構でかい問題です。まだまだiOS7くらいからのサポートは多いはずです。
* iTunesConnectの使い勝手が悪い。
   * TestFlight以外の使い勝手も元から悪いですが、設定方法がいまいちわかりづらい。。。
* 内部テスターの場合iTunes Connectでの権限管理がちと怖い
   * 内部テスターはiTunes Connectでの権限管理が必要なのですが、うっかり間違えてしまうと見えちゃいけないものまで見せてしまうリスクがある
* 外部テスターはいちいち審査が必要
   * かといって 外部テスターの方を使うにはなんといちいち審査が必要です。にっくき審査をテストまで使う気は起きません。。。
* TestFlightアプリアカウントの切り替えが端末のAppleIDと紐付いていて超絶つかいずらい。。TestFlightアプリ上での切り替えもできないようで、複数の案件でIDとか切り替えているのですが、これはもうどうすれば。。
* CIなどと連携が非常にしずらい
   * 他の外部サービスと違いAPIとかがない感じです。
* アップロードのあとちょっと時間かかるよ
   * アップロードしたら即時ではなくちょっと時間かかります。審査のためにビルドあげて待つ時間ができましたがそれがかかるという感じです。 いちいちリズムが崩れます。
* 同じバージョンはあげれないので,ちゃんとbuildバージョンあげないといけない
   * いやちゃんとやれってのはごもっともですが。。すみません、ちゃんとします。 

ということで移行する気が一切起きません。


そこで代替サービスとして一番お勧めなのが

DeployGate
https://deploygate.com/dashboard?locale=ja
です！

Androidの方ですがDeployGateを利用されている方も多いと思いますが、iOSも対応しています。

# DeployGateに移行すると
* Androidとアプリ配布サービスを一本化できる
	* あまりいろんなサービスを使いたくないもので同じようなサービスはまとめたいものです。AndroidはDeployGateを使っている方が多いと思いますのでそのままiOSでも使えば一本化可能です。 	
* 配布ページが便利
	* 配布用の専用のページを作ることができます。配布したい人別にカスタムしたベージを用意してそこでコミュニケーションもとることができます。
* もちろんApple版TestFlightのようなバージョンの制約とかもありません。
* 日本語ページ＆サポート！

個人的にすでに旧TestFlightからDeployGateへ移行を進めています。移行自体はApple版TestFlightに移行するより制約もなく、だいぶ楽です！

もう一度言いますが
移行自体はApple版TestFlightに移行するより制約もなく、だいぶ楽です！

# TestFlightから移行してみよう！

#️Upload script作ってでcurlでuploadしてた人は
例えばこんなスクリプトを書いていた人は

```
curl http://testflightapp.com/api/builds.json \
-F file="file.ipa" \
-F api_token="$API_TOKEN" \
-F team_token="$TEAM_TOKEN" \
-F distribution_lists="$TESTFLIGHT_DIST_LIST" \
-F notes="$RELEASE_NOTES" -v
```

```
curl https://deploygate.com/api/users/$DEPLOYGATE_USER_NAME/apps \
-F file="file.ipa" \
-F token="$DEPLOYGATE_API_KEY" \
-F message="$RELEASENOTE" -
```
こんな感じでcurl部分を置き換えれば完了です

# Jenkinsからuploadしてた人向け
JenkinsのPluginがありますのでこれも入れ替えるだけ

http://qiita.com/ginrou@github/items/498d02acbbe9e1327bb7#3-1

# 手元からuploadしたい人向け
我らがmatttさんが作っているコマンドラインツールnomadを使っている人もいるかと思いますが
こちらを使うとコマンドラインでアップロードも簡単にできます
https://github.com/nomad

```
#> ipa distribute:deploygate -f IPA_FILE -a API_KEY -u USER_NAME -m MESSAGE 
```


# CIサービスからDistしたいよ！
最近CircleCIがiOS対応したのでCIサービスからも配布が可能です。
この辺の配布はjenkinsを構築された方はわかると思いますがKeychainやらProvisioningの扱いが難しいですか、下記にサンプルがあるのでこちらを見てみると良いかと思います。

https://github.com/infolens/CircleCI-iOS-TestFlight-Sample


TestFlightのcurl部分をDeployGateに変更すればOKです。


##### appwchr post
----

[まだTestFlight使ってたの？急げ！終了目前のTestFlightから,今すぐにiOSもDeployGateに移行しよう！移行パターンも紹介するよ。](http://qiita.com/appwatcher/items/632460e15fbdb81b7a71)

[Swiftを使ってみて直面した闇。現時点で現場でSwiftを採用すべきかどうかの判断材料](http://qiita.com/appwatcher/items/50295e82ab0095902aaa)

[iOSの開発をする上で絶対に使うべき！外せない！webサービス、開発ツール集【完全版】](http://qiita.com/appwatcher/items/07a3babcb9b6cefb307e)

[iOSでこんなアプリ,こんな機能を作りたかったらこれを見ろ！作りたいアプリに対応するクラス、フレームワーク、ライブラリのまとめ！]
(http://qiita.com/appwatcher/items/b02255026a3ee6d95142)

[注目のiBeacomなどの波に乗り遅れないために！iOSのBluetooth開発を容易にするライブラリを書きました。]
(http://qiita.com/appwatcher/items/7491beffd7260b713542)

[まだまだあった！iOSの開発を劇的に改善する最新のwebサービス、開発ツール集１]
(http://qiita.com/appwatcher/items/f0024fe2ac34da345f04)

[さらに快適なアプリ開発を！iOSの開発をもっと劇的に改善する最新のwebサービス、開発ツール集2]
(http://qiita.com/appwatcher/items/c15d7311e71b4c2b77f1)

[スパゲッティから脱出！iOS開発における遷移の問題をすっきり解決する便利ルーティングライブラリをご紹介]
(http://qiita.com/appwatcher/items/259e8d13fff0547e90af)