2016-08-24 3 views

答えて

2

私も同じ問題に遭っていました。デバイスがシャットダウンしていた現在時刻の取得

私は次のようにいくつかの方法を試しました。

  1. アプリケーションで現在の時間を取得するWillTerminate:app delegateメソッドこれは、アプリケーションがユーザーによって終了される時間を示します。デバイスの電源が切れたら、アプリケーションは自動的に終了します。ここでは、デバイスがオフになっている時間を得ることができます。アプリがフォアグラウンド状態のときにデバイスが切り替わる場合にのみ機能します。しかし、それはバックグラウンドで動作しません。バックグラウンドモードでは、最後に終了した時間を示します。
  2. NSUserDefalutsのバックグラウンドモードと保存(置き換え)時に1分/ 1秒ごとにタイマーを実行し、デバイスの電源が切れた場合、タイマーは停止し、最後に保存された値を取得できます携帯電話の電源を入れた後、ユーザーは一度デフォルトになります。さらにストレージを消費することもありません。

今、私は上記の第2のポイントを使用しています。その狂気かもしれないが、それは私のために働く。

+0

はい、私は両方を試してみます。 –

+1

はい、30秒間バックグラウンドで実行されているタイマーを使用しています。それは私のために働く..ありがとう...! –

+0

あなたのアプリがXcodeで動作していないときに試しましたか?あなたがデバッグしていない場合、タイマーはバックグラウンドで動作しません。 – Paulw11

0

私が知っている限り、UIDeviceから許可される通知はほんのわずかです。hereです。

文書化されていないプライベートフレームワークがありますが、そのような情報を提供することができますが、それらを使用すると、アプリケーションは拒否されます。

ただし、Enterprise Editionを使用してアプリケーションを展開できます。

関連する問題