おでーぶでおでーぶ

いろいろ書く。いろいろ。

internal app sharing と DeployGate の機能差早見表

この記事は DeployGate 社員としてではなく、アプリ開発者の見解として書いています(おわりに、を除く)。また Beta などの他のサービスとの比較は入っていないので、internal app sharing または DeployGate の2択として記述しています。

TL;DR

  • 完全無料がいい && いっぱい固定リンク発行したい -> internal app sharing
  • dynamic delivery をテストしたい -> internal app sharing
  • アップデートを配布したい -> DeployGate
  • テスターに一般人が含まれる -> DeployGate
  • こだわりはない -> なんでもいいと思います

というか、完全無料というポリシーがない限りは併用でいいと思いますし、あとは QA で何をチェックしたいかだと思います。

参考:

便宜上、internal app sharing の固定リンクとDeployGate の配布ページを同時に表現する場合、「配布リンク」としています。

○ : 対応済み
△ : 対応予定または一部対応
× : 対応していない(対応予定なし、不明)
機能等 internal app sharing DeployGate
無料利用が可能か *1
配布リンクの上限 ありません グループプラン以上では制限はありません
debuggable app の配布
無署名 app の配布 ×*2
aab upload
dynamic delivery ×
dynamic feature module を利用した app の配布 *3
Upload API
任意の署名キーの利用 ×
任意のpackage名の利用 *4 *5
FireOS などでの利用 ×
Production と完全に同じ app を配布できるか ×*6 ×*7
同一バージョンコードの配信
リビジョン情報の埋め込み *8
ダウンロード数の制限機能 *9 *10
Uploader の制限
配布リンクの削除 ×
配布リンクに対する配信 app version の更新 ×
配布リンクへのパスワード設定 ×
自然流入のテスターへのインストール許可 *11
特定のテスターへのインストール許可
↑に認証をつける *12
異なる app 間でのテスターの流用 *13
異なる app ごとにテスターを設定する ×
参加テスターの確認 *14
テスターへの連絡 × ×*15
in-app updates の利用 × ×

また internal app sharing では機能を利用するために Play Store app の Developer モードを有効にするなどの操作が必要で、ガイドがなく、テスターに一定の説明やリテラシー要求を行う必要があります。DeployGateではアプリ内部からの導線で前設定が完結するようになっています。*16

おわりに

現段階で、internal app sharing にのみ「技術的に」可能であることは dynamic feature module のダウンロード程度です。他の機能についてはすでに DeployGate で実装している、上位互換なものも多く、またやろうと思えば技術的に実装可能なものが殆どです。

ということで、△について、一緒に実装してくれる人を募集しています。

*1:最初課金しないと配布ページが〜と書いてたんですが、個数制限有りで利用できました・・・

*2:無署名 app はインストール不可のため、署名し直す必要があります。aab対応後に実現可能になりますが、特に話に上がっていないので△ではありません

*3:DeployGate ではuniversal apkでの配信になります

*4:PlayStore に存在するもののみ配信可能です

*5:異なるパッケージ名の app をグルーピングして同一視する機能などはありません

*6:署名が選べません

*7:dynamic deliveryが使えません

*8:配信名を設定できますが、リリースノートと併記するといった用途には耐えきれません

*9:変更できません

*10:変更が可能です

*11:internal app sharing では自然流入を許可する/しないを一括管理するため、全てのリンクに対して設定が継承される。したがって一部のリンクでは認証有り、といった使い分けができない。

*12:プランごとに異なります。また配布ページにはパスワード機能がありますが、別途認証機能を実装することを検討しています。

*13:グループプラン以上が必要です

*14:ドキュメントによると出来るらしいんですが、UIがありません

*15:特に話に上がっていないので、実現可能性はあれど△としませんでした

*16:ただしリテラシー要求はいらないとは言ってません