Skip to content
yokoe edited this page Sep 14, 2010 · 3 revisions

ログイン

  • Pankiaを初期化すると自動ログインが行われます。ネットにつながっていない場合はログインは失敗します。

ログインに成功したときには、userDidLoginメソッドが呼ばれ、ログイン中のユーザ情報を取得することができます。

- (void)userDidLogin:(PNUser *)user{
	NSLog(@"%@ としてログインしました。", user.handle);
}

ネットにつながっていない状態など、ログインできなかった場合はuserDidFailToLoginWithError:が呼ばれます。

- (void)userDidFailToLoginWithError:(PNError*)error{
	NSLog(@"ログインに失敗しました。理由:%@",error.message);
}

アカウントの切り替え

  • PankiaではユーザはDashboard上でアカウントを切り替えることができます。

アカウントの切り替えが行われると、userDidSwitchAccount:が呼ばれ、スイッチ後のユーザを取得することができます。

- (void)userDidSwitchAccount:(PNUser *)user{
	NSLog(@"ユーザ %@ にスイッチしました。", user.handle);
}

セーブデータの扱い

  • ローカルでゲームデータを保持している場合は、アカウントの切り替えが行われたタイミングで適切にセーブデータの切り替えを行ってください。
  • 対応方法はゲームの内容によって変わってきますが、基本的にはリーダーボードを活用してデータの同期を行う形が無難です。

方法

  1. userDidSwitchAccountの中で、セーブデータを一度クリアする。
  2. userDidSwitchAccountの中で、+[PankiaNet fetchLatestLeaderboardsScore:]を呼び、最新のスコアを取得しにいく。
  3. fetchScoresOnLeaderboardDone:の中で、取得されたスコアの値からセーブデータを更新する。
Clone this wiki locally