#目次
- はじめに
- 実装方法
- まとめ
- 参考
#はじめに
この記事ではkony.location APIを使用して、デバイスの位置情報を取得する方法をご紹介します。
####②コーディング
コーディングを行います。
define({
getPosition: function () {
var positionoptions = {
timeout: 15000
}; // 15秒
kony.location.getCurrentPosition(this.successcallback, this.errorcallback, positionoptions);
},
// 成功時に呼び出されるコールバック
successcallback: function (position) {
var geoPosition = "緯度: " + position.coords.latitude;
geoPosition = geoPosition + " 経度: " + position.coords.longitude;
geoPosition = geoPosition + " 高度: " + position.coords.altitude;
geoPosition = geoPosition + " 精度: " + position.coords.accuracy;
geoPosition = geoPosition + " 高度精度: " + position.coords.altitudeAccuracy;
geoPosition = geoPosition + " 見出し: " + position.coords.heading;
geoPosition = geoPosition + " スピード: " + position.coords.speeding;
geoPosition = geoPosition + " タイムスタンプ: " + position.timestamp;
alert(geoPosition);
},
// エラー時に呼び出されるコールバック
errorcallback: function (positionerror) {
var errorMesg = "Error code: " + positionerror.code;
errorMesg = errorMesg + " message: " + positionerror.message;
alert(errorMesg);
}
});
上を説明します。
kony.location.getCurrentPosition(successcallback、errorcallback、positionoptions):デバイスの現在の場所を取得できる。
successcallback - 必須
キー | 説明 |
---|---|
latitude [Number] | 緯度 |
longitude [Number] | 経度 |
altitude [Number] | 位置の高さをメートルで表示したもの |
accuracy [Number] | 緯度と経度の座標の精度レベル |
altitudeaccuracy [Number] | 高度座標の精度レベル(単位:メートル) |
heading [Number] | 進行方向(北を基準にして時計回りに数えた度) |
speeding [Number] | デバイスの現在の対地速度をメートル毎秒で指定 |
timestamp [Number] | Position objectが取得された時間 |
####③アクションの紐付け
関数の準備ができたらActionと紐づけていきます。
btnGetLocation
(「Get Location」ボタン)を選択 > Action
タブをクリック > onClick
のEditをクリック > Action(getPosition
)紐づけ
####④Androidでの権限設定
位置情報を取得するためのアクセス許可を要求できるように設定します。
Project Settings
> Native
> Android
> Manifest Properties & Build Entries
以下の2つを追加(Add)し、Finish
をクリック
・ACCESS_COARSE_LOCATION
・ACCESS_FINE_LOCATION
####⑤iOSでの権限設定
iOSも設定していきます。
左側のメニューからAssets
> Media
> Common
> infoplist_configuration.json
の下矢印をクリック > Resourse Location
を選択し、ファイルを開く
※今回はVisual Studio Codeで開いています。
1番下の行に以下を追加
" NSLocationUsageDescription ": "Access Location"
#まとめ
今回は、デバイスの現在の場所を取得する方法について説明しました。
みなさんもぜひ活用してみてくださいね
#参考
kony.location Namespace:
https://docs.kony.com/konylibrary/visualizer/viz_api_dev_guide/content/kony.location_functions.htm
Runtime Permission API:
https://docs.kony.com/konylibrary/visualizer/viz_api_dev_guide/content/runtime_permissions.htm
Map Widgetを使って撮影場所を表示する:
https://qiita.com/Kony_Team/items/5b2fc9384801e0ae70c7