takeshi0206

iOS App SDKによるiOSアプリのバージョンアップ手順について

Discussion created by takeshi0206 on Jun 4, 2018

iOS App SDKによるiOSアプリ(以降「アプリ」と略す)をバージョンアップ(配布)する際は、データモデルを理解した上で、データ同期機能を作成するなど、十分注意する必要があるとされています。

参考:FileMaker ナレッジベース : Important development considerations before using the iOS App SDK

私はこの課題を次の手順で解決しようとしていますが、この考え方について、既に経験ある方よりご指摘をいただければと思っています。

 

 

<準備>

  • アプリ名を FMApp (仮)とし、最初のバージョンを FMApp_001.fmp12 として作成する。(バージョン1)
  • FMApp の起動時に必ず実行されるスクリプトを作成する。
    • ダミーファイル(固定名)が無かったらダミーファイルを作成してアプリを終了(ファイルを閉じる)する。
    • ダミーファイルがあったらダミーファイルを削除し、処理を続行する。
      ※これにより、必ず1回はアプリが自動で再起動することになる。

 

<バージョンアップ>

  • 新しいバージョンを FMApp_002.fmp12 として作成し配布する。(バージョン2)
  • ケース1:初めてバージョン2をダウンロードして使用するケース。
    • 起動時に必ず実行するスクリプトにより、アプリの再起動が1回行われ、バージョン2で起動する。
      ※冗長な動きだが、ケース2のように一時的に新旧のバージョンが混在するケースや、(名前をつけて保存した)バックアップファイル( ~.fmp12)が起動可能であることを考慮している。
  • ケース2:バージョン1を持っている人が、バージョン2をダウンロードしてバージョンアップするケース。
    • アプリ起動時に必ず実行するスクリプトにより、アプリの再起動が1回行われる。この時、起動中だったアプリのバージョンが何であっても、アプリの再起動によって、インストールされた最新のバージョン(この場合はバージョン2)でアプリは起動する。
    • バージョン2のデータは初期状態だが、バージョン1のファイルが Documents directory にコピーされているので、 Documents directory のファイル一覧を表示して同期したいファイルを選択させ、インポートする。
      ※古いバージョンのファイルを自動判定する場合は、ファイル名のシーケンス番号をチェックする。

 

上記には、バージョンアップのパターンを書きましたが、「名前を付けて保存」したバックアップファイルにより復元したり、データをまるごと受け渡したりすることも、(FileMakerGoを使わずに)アプリだけで可能になると考えています。

 

実際にiOSアプリを配布したり、バージョンアップしたことがないので、考えておかなくてはいけないことなど、ご指摘いただければ幸いです。

 

【一部記載を修正】2018/06/05 22:58

 

 

 

 

 

 

 

Outcomes