2016-06-15 11 views
0

私は自分の日の統計とタイムラインをユーザに提供するアクティビティ認識/追跡アプリケーションを開発しています。私は現在、iPhone 5S以上の作業用バージョンを持っています。これは、M7とM8モーションコプロセッサを使用して、過去の日または時間帯のアクティビティをクエリします。加速度計のデータをiOSのバックグラウンドで保存する方法は?

私は現在、iPhone 5および5c(M7/M8モーションコプロセッサなし)などの古い携帯電話でサポートされているバージョンを開発しようとしています。私の考えは、加速度計の読み取り値を一定期間保存し、それらをサーバーに送信して分類することですが、これらの読み取り値を検出して保存するために、アプリがバックグラウンドで数分間以上生き残ることはできません。

私はCLLocationアップデートを使ってアプリをバックグラウンドで維持しようとしていますが、最新の携帯電話のバージョンと同様に、アプリを連続して実行するのではなく、各場所のアップデートで約10秒間起きます。バックグラウンド。

私は、オーディオやVOIPバックグラウンドモードの登録などに使用できるトリック/ハッキングについても認識していますが、アップルのレビューシステムでは、対面機能。

スタックオーバーフローに関するその他の回答は、場所の更新を使用すると簡単だと言っていることに変わりはありません。

M7/M8モーションコプロセッサを搭載していないiPhone向けに動作するMovesやHumanなどのアプリがApp Storeにあります。どのように動作するのですか?

答えて

1

まだ実行していない場合は、最新のバックグラウンド実行ドキュメントを参照してください。これは、アプリがアクティブでないときの処理方法と、許可されていないものと禁止されているものを含みます。

https://developer.apple.com/library/ios/documentation/iPhone/Conceptual/iPhoneOSProgrammingGuide/BackgroundExecution/BackgroundExecution.html

あなたが近いあなたが欲しいものを得ることができる唯一の方法は、精度の高いレベルを(例えばdesiredAccuracy = kCLLocationAccuracyBest)を使用してバックグラウンドで標準の位置情報サービスを有効にすることです。高い精度は、ユーザーが静止している以外のほとんどの場合、アップデートを維持します。この機能を使うにはビジネス上の理由があるはずです。また、これはバッテリーを大量に消費しており、事前にユーザーに警告することに注意してください。

+0

ありがとうございました!私はkCLLocationAccuracyBestを使って試してみます。結果はここに投稿します –

+0

結果は何ですか? – korgx9

関連する問題