コンテンツにスキップ

デバイス ID と課金

FortressFlag はアプリ単位ではなくデバイス単位で課金します。モデルはこうです。あなたのアプリを 3 つ動かしている 1 台のスマートフォンは 1 席であって、3 席ではありません。このページでは、それを可能にする ID、それが請求にとって何を意味するか、そしてプラットフォームごとの事実を説明します。1 席の約束にセットアップが必要な場所と、まだ成り立たない場所も含めて。数字になって現れる前に知っておきたいことです。

1 席は月間アクティブな 1 台のデバイス

Section titled “1 席は月間アクティブな 1 台のデバイス”

ある月の使用量は、その暦月(UTC)に、すべての環境とアプリを通じて flag を要求した重複しないデバイスの数です。1 回ポーリングしたデバイスも 1 回、1 万回ポーリングしたデバイスも 1 回と数えます。効率的なポーリングが請求を膨らませることはなく、静かな月は安くなります。

ID は発行されるもので、導出されるものではない

Section titled “ID は発行されるもので、導出されるものではない”

あなたのアプリのどれかがデバイス上で初めて SDK を起動したとき、SDK はランダムな識別子(dev_ に続く 22 文字)を発行し、デバイスに保存します。ID はそれで全部です。

  • ランダムで、決して導出されません。広告 ID でも、ハードウェアのシリアルでも、ユーザーに関する何かのハッシュでもありません。人に逆算することはできず、別のベンダーのアプリ間で活動を結び付けることもありません。GDPR の下では仮名化された識別子であり、私たちはそれを個人データとして扱い、識別子が運びうる限り最小の情報しか持たないよう設計しています。
  • デバイスごとに安定しています。iOS では、共有キーチェーンアクセスグループを通じてあなたのアプリ群が 1 つの ID を共有できるので、1 台の iPhone 上のあなたのアプリ 3 つは 1 台のデバイスとして数えられます。デバイス単位の約束が、構造によって守られます。Android では、現時点で ID はアプリごとです。あなたのアプリはそれぞれ独自の ID を発行し、別々に数えられます。
  • リセットできます。すべての SDK は ID を削除して再発行するリセットを提供します。識別子の消去経路です。正直な帰結として、リセット後そのデバイスは新しいデバイスとして数えられます。

シミュレーターには配信するが、決して課金しない

Section titled “シミュレーターには配信するが、決して課金しない”

シミュレーターやエミュレーターで動くビルドは、代わりに sim_ の ID を発行します。FortressFlag はそれらに実デバイスとまったく同じように flag を配信し、計測からは完全に除外します。チームのシミュレーター、CI、自動化されたブラウザテストが席を消費することは決してありません。(Web では、navigator.webdriver で自らを名乗る自動化ブラウザは sim_ の ID を得ます。Playwright や Cypress のスイートもカバーされます。)

使用状況画面には実トラフィックとシミュレータートラフィックの日次比率が表示されるので、シミュレーターをデバイスとして課金してしまっている、あるいはデバイスをシミュレーターとして隠してしまっている設定ミスのビルドは、黙って見過ごされず、目に見えます。

プラットフォームの事実を、ありのままに

Section titled “プラットフォームの事実を、ありのままに”

各プラットフォームは、そのプラットフォームが許す限り永続的に ID を保存しますが、永遠を許すプラットフォームはありません。実際に観察することになる帰結は次のとおりです。

  • iOS:ID はキーチェーンに保存され、アプリのアンインストール後も残ります。iCloud に同期されることはありません。バックアップに乗って 2 台目の iPhone に渡った ID は、1 台のデバイスを 2 台として課金してしまうからです。
  • Android:ID はアプリがアンインストールされると消去されます。再インストールは新しい ID を発行し、それは新しい課金対象デバイスです。プラットフォームの事実として、価格に織り込まれています。
  • Web:ID はブラウザのオリジンスコープのストレージに保存されます。プライベート/シークレットウィンドウは使い捨ての ID を発行し、そのセッションの間 1 台のデバイスとして数えられます。サイトデータを消去したユーザーも新しいデバイスです。また、あなたの Web サイト、iOS アプリ、Android アプリを使う 1 人の人は、プラットフォームごとに 1 台、最大 3 台のデバイスになります。設計上、プラットフォーム間の紐付けはありません。

トライアルと上限を超えたときの流れ

Section titled “トライアルと上限を超えたときの流れ”

すべてのトライアルには月間アクティブデバイス 1,000 台が含まれ、トライアルが期間で失効することはありません。必要なだけ評価できます。ある月のデバイス数がこの枠を超えて増えた場合、制限は段階的に訪れます。崖のように一気に来ることはありません。

  1. すぐに:チーム全員向けに、ダッシュボードにバナーが表示されます。
  2. 超過から 14 日後:ダッシュボードが読み取り専用になります。flag は配信され続け、購入するか使用量が下がるまで変更ができなくなるだけです。
  3. 超過から 28 日後:最初の 1,000 台を超えたデバイスは flag のデフォルトを受け取ります。最初の 1,000 台は最後まで実際の値を受け取り続けます。最初期のユーザーが劣化を受けることは決してありません。

有料プランを購入すれば、これらはすべて即座に解除されます。

何を、どのくらいの期間保持するか

Section titled “何を、どのくらいの期間保持するか”

計測には重複しないデバイスを数える必要があるので、生のデバイス識別子は 13 か月間保持され、その後破棄されます。1 年分の使用履歴と進行中の月をまかなうのに十分な期間です。使用状況画面には現在の期間と 12 か月分の履歴が表示されます。決済事業者に渡るのはデバイスの数であって、デバイス識別子ではありません。