ターン制ゲームを作っています。ユーザーがチートするのを防ぐために、ユーザーがターンの途中でアプリを閉じると、ターンは自動的に対戦相手に渡されます。これは、ユーザーがアプリを閉じて再起動し、最初からターンを開始できないためです。
ただし、プレーヤーにペナルティを科すべきケースが 2 つあります。電話がかかってきた場合や、電池残量の警告が表示された場合。電話の着信を検知して応答することはできますが、バッテリーがどうなるかわかりません。
どんな提案も素晴らしいでしょう
ターン制ゲームを作っています。ユーザーがチートするのを防ぐために、ユーザーがターンの途中でアプリを閉じると、ターンは自動的に対戦相手に渡されます。これは、ユーザーがアプリを閉じて再起動し、最初からターンを開始できないためです。
ただし、プレーヤーにペナルティを科すべきケースが 2 つあります。電話がかかってきた場合や、電池残量の警告が表示された場合。電話の着信を検知して応答することはできますが、バッテリーがどうなるかわかりません。
どんな提案も素晴らしいでしょう
UIDevice
バッテリーの監視は、シングルトンのプロパティを YES に設定することで有効になります。
UIDevice *device = [UIDevice currentDevice];
device.batteryMonitoringEnabled = YES;
iPhone OS
は、2 種類のバッテリー監視イベントを提供します。1 つは状態が変化したとき (充電中、プラグが抜かれている、完全に充電されているなど) で、もう 1 つはバッテリーの充電レベルが変化したときに更新されます。近接監視の場合と同様に、コールバックを登録して通知を受け取ります。
[[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(batteryChanged:) name:@"UIDeviceBatteryLevelDidChangeNotification" object:device];
[[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(batteryChanged:) name:@"UIDeviceBatteryStateDidChangeNotification" object:device];
また、このリンクを参照してください。