株式会社ヤプリではプログラミング不要で高品質なネイティブアプリケーションを作成・配信できるサービスを提供しています。
CMSの設定にしたがってそれぞれ異なるプロジェクトを生成し、アプリケーションをビルド、コード署名をして、連携されているアカウントからAppStore(またはGoogle Play ストア)にアップロードします。
この一連の工程は今でこそ高度に自動化されていますが、最初からそうだったわけではありません。
アプリケーションの内容によっては、最初に手作業でプロジェクト構成やソースコードを編集する必要があったり、バンドルIDやバージョンを事前に適切に設定しておかなければならなかったり、コード署名やPush通知の署名に必要なリソースをあらかじめ決まった位置に配置しなければならかったりする時代がありました。
アプリケーションは一つ一つすべて内容も提供元の会社も異なるので、工程の途中でさまざまな問題が発生します。
バンドルIDを間違えて設定してしまうと、別の会社のアプリを更新してしまうかもしれません。
そのため、最近まではこの作業はデベロッパーが担当する必要がありました。
サービスを発展させていくには自動化が不可欠です。
今でこそ、ほとんどのケースで誰でも簡単にアプリケーションをビルドして申請できるようになりましたが、その道のりは簡単ではありませんでした。
この講演では、ヤプリのサービスを支える自動化の仕組みと克服してきた問題、現在も取り組んでいる技術的な課題についてお話しします。
同様の問題を抱えている人はほとんどいないと思いますが、ビルドから申請までの一連の作業を自動化するにあたって、技術選択や問題解決の一助になれば幸いです。