gmapナビゲーションのような機能をブルードットポインタのようなイオンハイブリッドアプリケーションに追加したいと考えています。以前はジオロケーションAPIを使用しましたが、位置を変更しても場所は変更されません(静的に見えます)。私はGoogleマップのようなライブ位置追跡を追加したい。誰も私に正しい方法を提案することはできますか?ionicアプリケーションでライブ位置追跡を追加する方法
答えて
watchPositionを使用し、地図上のマーカーを変更してください。次のようなものがあります。
var myMarker = null;
// get current position
navigator.geolocation.getCurrentPosition(showPosition);
// show current position on map
function showPosition(position) {
myMarker = new google.maps.Marker({
position: new google.maps.LatLng(position.coords.latitude, position.coords.longitude),
map: new google.maps.Map(document.getElementById("map")),
icon: 'img/icons/myicon.png'
});
}
// watch user's position
navigator.geolocation.watchPosition(watchSuccess, watchError, watchOptions);
// change marker location everytime position is updated
function watchSuccess(position) {
var latLng = new google.maps.LatLng(position.coords.latitude, position.coords.longitude);
// set marker position
marker.setPosition(latLng);
}
$ cordovaGeolocationプラグインを使用することもできます。プラグインのドキュメントを見てください。
getCurrentPosition戻りジオロケーション
watchPosition戻り、現在位置、それが変わるたびの現在位置。したがって、この関数では、setPositionで毎回マップ上のマーカーを変更し、座標を渡すことができます。
良い結果が得られますが、すべての位置が変更された後も古いマーカーが表示され、最新の位置のマーカーは1つしか表示されません。 –
あなたの提案が私の問題を解決するおかげで、cristiano。 "marker.setPosition(latLng);"の代わりにあなたのコードに1つの修正を加えてください。 "" myMarker.setPosition(latLng);を記述する必要があります。 " –
map
プロパティにネイティブメソッドsetMyLocationEnabled(true)
を適用するだけで済みます。
私の例を参照してください。
LET要素:のHTMLElement =のdocument.getElementById( 'マップ');
this.map = this.googleMaps.create(要素);
this.map.setMyLocationEnabled(true);
この最後の行は、ネイティブの現在の位置マーカーをアクティブにします。
- 1. UIViewをアニメーション化する - 位置を追跡する方法は?
- 2. UWPバックグラウンドタスクの位置追跡
- 3. iotの位置追跡をシミュレートする方法は?
- 4. 位置追跡で複数の緯度と経度を追加する方法Google API
- 5. Nibなしアプリケーションでのマウス位置の追跡
- 6. 低信号位置での位置追跡
- 7. AndroidリアルタイムGoogleマップの位置追跡
- 8. 中国向けAndroid GPS位置追跡
- 9. CSS固定位置でコンテンツを追加する方法navbar
- 10. ユニティでマウスの位置を追跡して表示する方法3d
- 11. j2meでsms、mmsandの位置を追跡する
- 12. 右のコールアウトアクセサリビューがタップされたときの位置を追跡する方法
- 13. 入力の要素位置を追跡して表示する方法は?
- 14. 正確な位置にイメージビューを追加する方法
- 15. Googleマップに自分の位置を追加する方法api
- 16. スクロール位置にfixed divのfadeInエフェクトを追加する方法
- 17. リスナを仕切り位置に追加する方法は?
- 18. 検索パスに新しい位置を追加する方法
- 19. 追加する要素に動的位置を追加
- 20. 追加位置:固定;ヘッダ
- 21. GPS位置情報をAndroidで追跡します。
- 22. 追跡する方法EXC_BAD_ACESS
- 23. ワークフローに追跡プロファイルを追加する
- 24. Instrumentsで増加するメモリを追跡する方法は?
- 25. 3Dキューブの位置を追跡するOpenGL?
- 26. 正確な位置を追跡するandroid/NodeJS
- 27. 二重リンクリスト(Java)の 'カーソル'の位置を追跡する
- 28. Webアプリケーション経由でHTTP RESTFUL要求を追跡する方法
- 29. .NETアプリケーションでURLリダイレクトを追跡する方法は?
- 30. ランチャーオーケストレーションツールでイベントを追跡する方法
https://www.pubnub.com/blog/2017-02-02-realtime-google-maps-tracking-and-live-geolocation-with-javascript/ – Edison
感謝エジソン、しかし、私は1つの質問がある実際にはGoogleのAPIを使用することによってのみ可能ですか?追加の依存関係を使用したくない場合、それを達成する方法は何ですか? –
Google Maps APIの 'watchPosition()'関数です。マップ内のマーカーを変更するために必要なすべての情報を返します。 – Cristiano