私は、ユーザーが車を運転している場合にポップアップメッセージを持つAppを開発しています。私はSOMotionDetectorライブラリを実装しました。このライブラリは素晴らしいですが、私はユーザーの場所を追跡したくないので、自分の場所を追跡する許可を求めるメッセージを表示したくないのは間違いありません。別の選択肢がありますか?iOS:GPSがないと、ユーザーが車両を運転しているかどうかを検出できますか?
ここに、私が追加したコードがありますが、それが役立つかどうかはわかりません。
[SOLocationManager sharedInstance].allowsBackgroundLocationUpdates = NO;
[[SOMotionDetector sharedInstance] startDetection];
[SOMotionDetector sharedInstance].useM7IfAvailable = YES; //Use M7 chip if available, otherwise
[SOMotionDetector sharedInstance].motionTypeChangedBlock = ^(SOMotionType motionType) {
switch (motionType) {
case MotionTypeNotMoving:
break;
case MotionTypeWalking:
break;
case MotionTypeRunning:
break;
case MotionTypeAutomotive:[self alertMessage];
break;
}
};
私は 'automotive'モーションタイプをするために、GPSに依存していると信じています:ユーザー が速く20っぽいMPHよりも走行している場合は、私は ユーザーが車の中にあると仮定できました高速移動を判断しますが、ユーザーの所在地にアクセスしていないときに場所のアクセス許可を要求する必要はありません。これは、CoreMotionフレームワークで直接使用する場合です。私は 'SOMotionDetector'が何をしているのか分かりません。しかし、CoreMotionにはバックグラウンド通知がないので、バックグラウンドでモーションアップデートを受け取るには、サポートされているバックグラウンドモードの1つを利用する必要があります。位置更新は – Paulw11
Hello @ Weakman10122です。ユーザーが車両を運転しているかどうかを検出する方法。これを実装した方法を教えてください。あなたのお返事をお待ちしております。 – ChanWarde
@ChanWardeこのライブラリはhttps://github.com/SocialObjects-Software/SomotionDetectorを使用してください。それは私がそれを使用した最後にうまくいきました。 – Weakman10122