メインコンテンツへスキップ
@capgo/capacitor-persistent-uuid 認証とセキュリティ オープンソース

永続UUID Capacitor プラグイン

アプリの再インストール、アップデート、OS更新後も、アプリ固有のUUIDを生成・保持します

インストール

bun add @capgo/capacitor-persistent-uuid bunx cap sync
npm、pnpm、または yarn
  • npm install @capgo/capacitor-persistent-uuid
  • pnpm add @capgo/capacitor-persistent-uuid
  • yarn add @capgo/capacitor-persistent-uuid

ガイド

Capacitor で Persistent UUID を使用する方法

@capgo/capacitor-persistent-uuid を使用する

Capacitor 用にアプリ固有の永続 UUID を1つ生成し、通常のアプリストレージが削除される再インストールやアップデートのフローでも同じ値を保ちます。

インストール

npm install @capgo/capacitor-persistent-uuid
npx cap sync

このプラグインで利用可能な機能

  • getId - 保存されているUUIDを読み取ります。指定したスコープにUUIDが存在しない場合は新規作成します。
  • resetId - ログアウト、プライバシーリセット、テストのクリーンアップの際に、保存されたUUIDをローテーションします。
  • scope - デバッグ用と本番用のパッケージ識別子が異なるアプリ向けの、オプションのネームスペースです。

使用例

import { PersistentUuid } from '@capgo/capacitor-persistent-uuid';

const { id, created, scope } = await PersistentUuid.getId();

console.log(id);
console.log(created);
console.log(scope);

ビルドバリアント間で1つのUUIDを共有

const result = await PersistentUuid.getId({
  scope: 'com.example.app',
});

console.log(result.id);

識別子をリセット

const replacement = await PersistentUuid.resetId();
console.log(replacement.id);

プラットフォームに関する注意点

AndroidではUUIDをAccountManagerに保存するため、パッケージ名やカスタムスコープが安定していれば、Android Studioでの再インストールや、デバッグ署名とPlay署名の違いを越えて保持されます。iOSではUUIDをKeychainに保存し、Keychainへのアクセスに互換性がある限り、アプリやiOSのアップデートを経ても保持されます。Webでは開発時のフォールバックとしてlocalStorageを使用します。

このプラグインはハードウェアIDを公開せず、工場出荷状態へのリセット、手動でのアカウント削除、Keychainの消去、ブラウザストレージの消去、resetIdの実行後には保持されません。

リファレンス全文

次へ進む

使用している場合 @capgo/capacitor-persistent-uuid アプリの識別子を安定させるには、以下と連携してください: @capgo/capacitor-persistent-uuid 概要はこちら: スタートガイド インストールと API の例はこちら: Androidでの動作 再インストールの詳細は、こちら: iOSの挙動 Keychainの詳細については、また @capgo/capacitor-persistent-account UUIDではなくアカウントデータの永続化が必要な場合に。

よくある質問

Persistent UUID プラグイン FAQ

Capacitor アプリに Persistent UUID プラグインをインストールするにはどうすればよいですか?

"bun add @capgo/capacitor-persistent-uuid"(または "npm install @capgo/capacitor-persistent-uuid")を実行し、続いて "bunx cap sync" を実行して、iOS と Android プロジェクトがネイティブの code を取り込むようにしてください。アプリの code で "@capgo/capacitor-persistent-uuid" からインポートしてください。

@capgo/capacitor-persistent-uuid は React、Vue、Angular で動作しますか?

はい。Persistent UUID は Capacitor パッケージなので、Ionic、React、Vue、Angular、Svelte、素の JavaScript など、Capacitor 内で動作するあらゆる Web フレームワークで使えます。

@capgo/capacitor-persistent-uuid はどのバージョンの Capacitor をサポートしていますか?

Capgo プラグインは Capacitor のメジャーバージョンに合わせています。使用している Capacitor のメジャーバージョンに一致するプラグインのメジャーバージョンを使ってください (例: Capacitor 8 ならプラグイン v8)。GitHub の README にある互換性テーブルに、メンテナンス中のバージョンが記載されています。

@capgo/capacitor-persistent-uuid は無料でオープンソースですか?

はい。code のソースコードは GitHub の https://github.com/Cap-go/capacitor-persistent-uuid/ で公開されており、npm から無料でインストールできます。バグ報告やプルリクエストも歓迎します。

App Store の審査なしで、Persistent UUID を使用している code をアップデートできますか?

プラグインのインストールやアップグレードはネイティブの code を変更するため、新しいストアビルドが必要です。その後は、プラグインを呼び出す JavaScript、HTML、CSS の変更を Capgo Live Updates で即座に配信できます。

アプリの審査を待たずに Persistent UUID の変更をリリース

プラグインをストア用ビルドに組み込めば、Capgo live updates で JavaScript、HTML、CSS の変更を数分でユーザーに配信できます

Capgo から始める