2017-08-16 15 views
2

アプリでデバイスの使用状況を測定するにはどうすればよいですか? momentのようなアプリは、過去24時間にどれくらい電話が使用されたかを(全画面時間として)記録しています。 iOS SDKのAPIがあるのか​​、iOSの特定の信号によって推測されていますか?iOSでのデバイスの使用

基本的には、お使いの電話機(電話、画像、アプリ、ゲームなど)を今日どのくらい使っていますか?私はそれを推測するのはうれしいですが、どの信号を探すべきかを知る必要があります。

+1

デバイス全体の使用状況を測定しますか?特定のデバイスでのあなたのアプリの使い方だけ?どのようなデータを収集しようとしていますか? –

+0

全体のデバイスまたは電話 – xoail

+0

良い質問と面白いアプリ。現在実行中のアプリケーションを取得するための[this](https://stackoverflow.com/a/39281076/1040347)の回答を確認してください。また、[that](https://stackoverflow.com/a/28373247/1040347) [Location Services](https://stackoverflow.com/a/19043297/1040347)を使用して常に実行してください。 –

答えて

2

これはモーメントアプリのthe FAQに答えている:モーメントがバックグラウンドで実行されている必要があり、自動的に画面の時間を追跡するために

。 Appleは、非常に特定の使用事例において、バックグラウンドで一貫してアプリケーションを実行することができます。あなたが行く場所を追跡することは、モーメントをバックグラウンドで実行できるようにするものです。

デバイスがロックされるまで、アプリは自分自身をロケーションサービスとして登録し、そのコードはバックグラウンドで実行されます。コードが実行されているときはいつでも、それは使用時間に数えることができます。

信頼性を向上させるために他のbackground modesを使用することもできますが、IPAを解凍しない限り正確な仕組みはわかりません。

+0

そのように1日あたりの使用量をどのように推測できるかはまだ分かりません。私は自分のアプリを積極的に使用していないのに他のアプリを使っているときに、バックグラウンドでのランニングは情報収集にどのように役立ちますかそれが私のアプリがアクティブでなくても電話機のロックが解除されたときにイベントを作成するバックグラウンド実行タスクAPIの一部でない限り。 – xoail

+0

@xoail:サンプリングを使用しています。バックグラウンドコードを5分ごとに実行し、どのアプリが前面に表示されているかを確認します(Alekseyのコメントを参照)。その期間内に同じアプリが連続して表示された場合、その期間に5分間そのアプリを使用した可能性が高いです。 – kennytm

関連する問題