バックグラウンドからフォアグラウンドに移動したときに、非常に正確な緯度と経度の座標を表示するアプリが必要です。
私はこれを行うのにかなり苦労しています。アプリをバックグラウンドにすると、位置情報サービスがオフになります。バックグラウンド位置情報モードを有効にすることを検討しましたが、そうするとユーザーのバッテリーが消耗する可能性があることを認識しています。私も使用しようとしましstartMonitoringSignificantLocationChanges
たが、それは正確ではないようです。
私のビューには、クリックするとユーザーの座標を表示するボタンがあります。歩き回っているときにボタンをクリックすると、座標が正確になります。しかし、ユーザーがアプリを起動してすぐにボタンをクリックすると、座標がかなりずれます。誰でもこれで私を助けることができますか?バックグラウンド位置情報モードを有効にすることが唯一のオプションですか? 位置が正確になるまでボタンを無効にすることはできますか? どんな助けでも大歓迎です!
私のビューは、以下のようにアプリ デリゲートで設定されている locationManager から座標を取得します。
ビューは次のとおりです。
-(void>buttonClick {
NSString *userLatitude =[(PDCAppDelegate *)[UIApplication sharedApplication].delegate
getUserLatitude];
NSString *userLongitude =[(PDCAppDelegate *)[UIApplication sharedApplication].delegate
getUserLongitude];
}
アプリのデリゲートは次のとおりです。
- (NSString *)getUserLatitude {
NSString *userLatitude = [NSString stringWithFormat:@"%f",
locationManager.location.coordinate.latitude];
return userLatitude;
}
- (NSString *)getUserLongitude {
NSString *userLongitude = [NSString stringWithFormat:@"%f",
locationManager.location.coordinate.longitude];
return userLongitude;
}