

webにおけるサービスは基本的にメールアドレスとパスワードでのログインが必要です。  
しかし、スマートフォンのソーシャルゲームなどはニックネームの入力くらいしか要求されず、その後のログインも自動で行われているようでした。

flutterの場合、device_infoというもので一意のデバイスIDが取得できるようですが、  
メールアドレスやパスワードやユーザー名の代わりに  
その一意のデバイスIDだけを頼りにデータベースを構成してるのでしょうか？  
または、デバイスにトークンのようなものを保存し、それでユーザーを特定しているのでしょうか？


CC BY-SA 4.0
2021-01-19T09:09:06.540
73407
2021-01-20T04:22:52.563
43585
question
database flutter
ソーシャルゲームにおけるユーザーの特定とログイン方法


特定する＝プライバシー侵害に直結する結構シビアな問題なので回答が付きにくいのかと。

あなたの言う「特定」の意図というか案件というかで答えは異なるでしょう。

一人のユーザ (Google Account) が複数台の Android 端末を持っているとき、その端末は  
「同じ」アカウントとみなすのか  
「違う」アカウントとみなすのか  
などなど  
...にゃんこ大戦争とかたいていの Android ゲームは 1 Google Account
で複数台の端末にインストールできて、課金するお財布は同じでもゲーム上は異なるアカウントだったりする...

よって課金システムから見ると、これらは特定の結果「同じ」アカウントであり  
ゲームシステムから見ると、これらは特定の結果「違う」アカウントであるわけで

# IOS は持っていないので知らん

プライバシー侵害しても個人を特定したい広告元とされたくないユーザー（OS ベンダ）との駆け引きからこの手の ID
はいろいろ変遷をたどってきた経緯があって、たとえばこんな解説とか

[iOS/Androidで端末を識別するIDまとめ](https://iridge.jp/blog/201404/4836/)

まあ普通のスマホゲームではインストール時に端末の記憶装置にデータを保存することを許可してもらったうえで、そのゲームの提供者が運営するサーバー上で作ったそのゲーム専用のアカウント
ID を端末の内蔵記憶装置に保存しておくのが一般的かと思います。そうしておかないと機種変更などの際にアカウントの引継ぎが困難になっちゃいます。


CC BY-SA 4.0
2021-01-20T00:21:13.623
73420
2021-01-20T04:22:52.563
2021-01-20T04:22:52.563
8589
8589
73407
answer