コンテンツへスキップ

Mise à jour hybride

ユーザーへの更新を配信する際、適用前に必要に応じて以下の方法で更新サイクルに対応できます:

  • サイレント更新
  • updateAvailableイベントのリッスン
  • モーダルウィンドウの表示または更新の遅延

サイレント更新

directUpdatetrueに設定することで、アプリ起動時ごとに強制的に更新サイクルを実行できます。 これにより、ユーザーの操作なしで通常の更新サイクルがトリガーされます

// capacitorconfigjson
{
"appId": "*******",
"appName": "Name",
"plugins": {
"CapacitorUpdater": {
"directUpdate": true,
},
"SplashScreen": {
"launchAutoHide": false,
}
}
}

そしてアプリ内では、appReadyイベントを受信したときにスプラッシュスクリーンを非表示にする必要があります:

import { CapacitorUpdater } from '@capgo/capacitor-updater'
import { SplashScreen } from '@capacitor/splash-screen'
CapacitorUpdateraddListener('appReady', () => {
// Hide splash
SplashScreenhide()
})
CapacitorUpdaternotifyAppReady()

強制更新

updateAvailableイベントにリスナーを追加し、アプリが更新されることをユーザーに通知するアラートを表示します:

import { CapacitorUpdater } from '@capgo/capacitor-updater'
import { Dialog } from '@capacitor/dialog'
CapacitorUpdateraddListener('updateAvailable', async (res) => {
try {
await Dialogalert({
title: '更新が利用可能です',
message: `バージョン${resbundleversion}が利用可能です。アプリは今更新されます`,
})
CapacitorUpdaterset(resbundle)
}
catch (error) {
consolelog(error)
}
})
CapacitorUpdaternotifyAppReady()

モーダル更新

ダイアログを表示して更新するかどうかをユーザーに決定させることもできます:

import { CapacitorUpdater } from '@capgo/capacitor-updater'
import { Dialog } from '@capacitor/dialog'
CapacitorUpdateraddListener('updateAvailable', async (res) => {
try {
const { value } = await Dialogconfirm({
title: '更新が利用可能です',
message: `バージョン${resbundleversion}が利用可能です。今すぐ更新しますか?`,
})
if (value)
CapacitorUpdaterset(resbundle)
}
catch (error) {
consolelog(error)
}
})
CapacitorUpdaternotifyAppReady()