モバイルアプリ更新のシナリオ
モバイルアプリの開発時に[1-Click Publish]をクリックすると、アプリケーションの新しいバージョンをインストールしなくても、自動的にアプリの新規開発や更新を行うことができます。環境の更新されたサーバーとの接続が確立すると、エンドユーザーのデバイスで実行されているモバイルアプリが更新を自動的に検出します。ある環境で生成されたモバイルアプリケーションパッケージは、同じ環境でパブリッシュされた開発や変更だけを受け取ります。
デバイスでの更新が不可能な場合
パブリッシュが問題なく行われたとしても、エンドユーザーのデバイスでアプリケーションの自動更新ができない場合があります。その原因としては、最新のパブリッシュで必要なリソースをダウンロードする際のネットワーク接続の問題や、自動更新が不可能なローカルデータモデルのアップグレードが考えられます。エンドユーザーのデバイスで更新できない場合、モバイルアプリはエンドユーザーにその旨を通知し、それ以前の十分動作するバージョンにロールバックします。
問題とその原因は、環境に記録されます。開発者はその環境のService Centerで調べることができます。このログ情報を基に、開発者は原因を突き止め、新しいバージョンのアプリケーションで対策を施すことができます。
ユーザーが新しいビルドをインストールしなければならない場合
1-Click Publishが実行されるたびに変更はアプリケーションに変更が自動的に反映されますが、場合によっては更新したアプリケーションパッケージをデバイスにインストールする必要があります。これは次のような場合に起こります。
- モバイル プラットフォームの構成を変更した場合
- Extensibility Configurationsプロパティを変更した場合(モバイルプラグインの変更、追加、削除や、ステータスバーの透明度、カスタムアイコン、スプラッシュ画面の変更など)
- プラグインの外部リソースを更新した場合
- アプリケーション名を変更した場合
- エントリモジュールまたはその名前を変更した場合
- アプリケーションのアイコンを置き換えた場合
- アプリケーションの主色を変更した場合
これらの変更をパブリッシュすると、更新されたアプリケーションのエンドユーザーエクスペリエンスに影響が出ることがあります。プラグインの場合は、クラッシュが起こらないよう、最新バージョンがデバイスにインストールされるまでアプリにフォールバックを実装することをお勧めします。これらの潜在的問題は、エンドユーザーが最新のアプリケーションパッケージにアップグレードすると自動的に解決されます。
デバイスにインストール済みであり、Debugビルドタイプを使用して生成されたAndroidアプリの場合、新しいバージョンをインストールする前に、以前のバージョンをデバイスからアンインストールします。これにより、新しい機能が正しく動作することが保証されます。
最初のモバイルアプリ生成の後、[1-Click Publish]をクリックすると、OutSystemsが上記の条件で新しいアプリケーションパッケージを生成します。生成したアプリケーションパッケージは、Service Studio、Service CenterおよびLifeTime経由でダウンロードすることができます。これにより、環境からダウンロード可能な最新のアプリケーションパッケージを、アプリケーション開発と確実に同期させることができます。