コンテンツへスキップ

Capacitor updater で自己ホスト版 capgo を使用する

このチュートリアルの内容は?

このチュートリアルでは、セルフホスト型のCapgoを使用した開発環境でCapacitor Updaterを使用する方法を説明します。

要件

  1. Capgoをクローン

はじめに

セルフホスト型Capgoでcapacitor updaterを使用するには、アプリディレクトリのcapacitor.config.tsを編集して以下のように設定します:

const config: CapacitorConfig = {
appId: 'com.demo.app',
appName: 'demoApp',
webDir: 'dist',
bundledWebRuntime: false,
plugins: {
CapacitorUpdater : {
statsUrl: "http://localhost:54321/functions/v1/stats",
channelUrl: "http://localhost:54321/functions/v1/channel_self",
updateUrl: "http://localhost:54321/functions/v1/updates"
},
},
};

これにより開発環境でローカルCapgoを使用できますが、デフォルトではこれだけでは不十分です。

Androidでは、デフォルトでSSLが無効になっているため、プレーンテキスト通信を有効にする必要があります。 これはAndroidManifest.xmlを修正し、applicationタグにandroid:usesCleartextTraffic="true"を追加することで実現できます。 この変更の完全な例はこちらで確認できます。

デフォルトでAndroidはhttpを許可しないため、Capgoはここでhttpのチェックを実装しています。 このコードは常にここにあるわけではありませんが、現時点ではアップデートを機能させるためにこの行の変更が必要です。 この行は以下のようになるはずです:

if (!signedURL || (signedURL.startsWith('http://') || signedURL.startsWith('https://'))) {

また、Androidアプリの接続を妨げる問題が発生する可能性があります。エッジ関数へのリクエストが送信されていないことが確認された場合は、以下を実行してください:

Terminal window
adb reverse tcp:54321 tcp:54321