私のアプリでは、サブスクリプションにライセンスとアプリ内課金を使用しています。使えました
AccountManager manager = AccountManager.get(context);
Account[] accounts = manager.getAccountsByType("com.google");
しかし、それは多くのアカウントを取得します。現在、私は1番目のものだけを使用しています。アプリの購入/ダウンロードにどちらを使用したかわかりません。私自身、最大 3 つの Google アカウントを持っていました (GMail は、古い Google の 1 つだけで、電話、実際の Google アカウント、および仕事用アカウントを有効にするためにサインアップする必要があります)。
電子メール アドレスは実際には必要ありません。別のデバイスを使用している場合でも、1 人のユーザーが同じであることを確認する何らかの方法です。彼らが異なるデバイスからアプリにアクセスする場合、それは問題ありません。
アプリはバックグラウンドでサーバーにアクセスするため、ユーザー ID を送信して記録します。
同様の質問にはどれも答えがありませんでした。あるいは、答えは「ありえない」でした。
ユーザーがアカウントを選択できるようにするためのメニュー項目を用意するのが最も適切な解決策ですか? それとも、すべてのユーザー ID をサーバーに保存し、ユーザーが一致する場合はそれらを許可する方がよいでしょうか? ライセンス サーバー API は、ある種の一意のユーザー ハッシュを提供しませんか? (見つけられませんが、私には少しあいまいです。)