地理位置
說明:
開發(fā)前請熟悉鴻蒙開發(fā)指導(dǎo)文檔 :[gitee.com/li-shizhen-skin/harmony-os/blob/master/README.md
]
導(dǎo)入模塊
import geolocation from '@system.geolocation';
權(quán)限列表
ohos.permission.LOCATION
geolocation.getLocation
getLocation(Object): void
獲取設(shè)備的地理位置。
系統(tǒng)能力: SystemCapability.Location.Location.Lite
參數(shù)名 | 類型 | 必填 | 說明 |
---|---|---|---|
timeout | number | 否 | 超時時間,單位為ms,默認(rèn)值為30000。 設(shè)置超時,是為了防止出現(xiàn)權(quán)限被系統(tǒng)拒絕、定位信號弱或者定位設(shè)置不當(dāng),導(dǎo)致請求阻塞的情況。超時后會使用fail回調(diào)函數(shù)。 取值范圍為32位正整數(shù)。如果設(shè)置值小于等于0,系統(tǒng)按默認(rèn)值處理。 |
coordType | string | 否 | 坐標(biāo)系的類型,可通過getSupportedCoordTypes獲取可選值,缺省值為wgs84。 |
success | Function | 否 | 接口調(diào)用成功的回調(diào)函數(shù)。 |
fail | Function | 否 | 接口調(diào)用失敗的回調(diào)函數(shù)。 |
complete | Function | 否 | 接口調(diào)用結(jié)束的回調(diào)函數(shù)。 |
success返回值:
參數(shù)名 | 類型 | 說明 |
---|---|---|
longitude | number | 設(shè)備位置信息:經(jīng)度。 |
latitude | number | 設(shè)備位置信息:緯度。 |
altitude | number | 設(shè)備位置信息:海拔。 |
accuracy | number | 設(shè)備位置信息:精確度。 |
time | number | 設(shè)備位置信息:時間。 |
fail返回錯誤代碼:
錯誤碼 | 說明 |
---|---|
601 | 獲取定位權(quán)限失敗,失敗原因:用戶拒絕。 |
602 | 權(quán)限未聲明。 |
800 | 超時,失敗原因:網(wǎng)絡(luò)狀況不佳或GPS不可用。 |
801 | 系統(tǒng)位置開關(guān)未打開。 |
802 | 該次調(diào)用結(jié)果未返回前接口又被重新調(diào)用,該次調(diào)用失敗返回錯誤碼。 |
示例:
export default {
getLocation() {
geolocation.getLocation({
success: function(data) {
console.log('success get location data. latitude:' + data.latitude);
},
fail: function(data, code) {
console.log('fail to get location. code:' + code + ', data:' + data);
},
});
},
}
geolocation.getLocationType
getLocationType(Object): void
獲取當(dāng)前設(shè)備支持的定位類型。
系統(tǒng)能力: SystemCapability.Location.Location.Lite
參數(shù):
參數(shù)名 | 類型 | 必填 | 說明 |
---|---|---|---|
success | Function | 否 | 接口調(diào)用成功的回調(diào)函數(shù)。 |
fail | Function | 否 | 接口調(diào)用失敗的回調(diào)函數(shù)。 |
complete | Function | 否 | 接口調(diào)用結(jié)束的回調(diào)函數(shù)。 |
success返回值:
參數(shù)名 | 類型 | 說明 |
---|---|---|
types | Array | 可選的定位類型['gps', 'network']。 |
示例:
export default {
getLocationType() {
geolocation.getLocationType({
success: function(data) {
console.log('success get location type:' + data.types[0]);
},
fail: function(data, code) {
console.log('fail to get location. code:' + code + ', data:' + data);
},
});
},
}
geolocation.subscribe
subscribe(Object): void
訂閱設(shè)備的地理位置信息。多次調(diào)用的話,只有最后一次的調(diào)用生效。
系統(tǒng)能力: SystemCapability.Location.Location.Lite
參數(shù):
參數(shù)名 | 類型 | 必填 | 說明 |
---|---|---|---|
coordType | string | 否 | 坐標(biāo)系的類型,可通過getSupportedCoordTypes獲取可選值,默認(rèn)值為wgs84。 |
success | Function | 是 | 位置信息發(fā)生變化的回調(diào)函數(shù)。 |
fail | Function | 否 | 接口調(diào)用失敗的回調(diào)函數(shù)。 |
success返回值:
參數(shù)名 | 類型 | 說明 |
---|---|---|
longitude | number | 設(shè)備位置信息:經(jīng)度。 |
latitude | number | 設(shè)備位置信息:緯度。 |
altitude | number | 設(shè)備位置信息:海拔。 |
accuracy | number | 設(shè)備位置信息:精確度。 |
time | number | 設(shè)備位置信息:時間。 |
fail返回錯誤代碼:
錯誤碼 | 說明 |
---|---|
601 | 獲取定位權(quán)限失敗,失敗原因:用戶拒絕。 |
602 | 權(quán)限未聲明。 |
801 | 系統(tǒng)位置開關(guān)未打開。 |
示例:
export default {
subscribe() {
geolocation.subscribe({
success: function(data) {
console.log('get location. latitude:' + data.latitude);
},
fail: function(data, code) {
console.log('fail to get location. code:' + code + ', data:' + data);
},
});
},
}
geolocation.unsubscribe
unsubscribe(): void
取消訂閱設(shè)備的地理位置信息。
系統(tǒng)能力: SystemCapability.Location.Location.Lite
示例:
export default {
unsubscribe() {
geolocation.unsubscribe();
},
}
geolocation.getSupportedCoordTypes
getSupportedCoordTypes(): Array
獲取設(shè)備支持的坐標(biāo)系類型。
系統(tǒng)能力: SystemCapability.Location.Location.Lite
返回值:
類型 | 非空 | 說明 |
---|---|---|
Array | 是 | 表示坐標(biāo)系類型,如[wgs84, gcj02]。 |
示例:
export default {
getSupportedCoordTypes() {
var types = geolocation.getSupportedCoordTypes();
},
}
審核編輯 黃宇
-
鴻蒙
+關(guān)注
關(guān)注
57文章
2397瀏覽量
43098
發(fā)布評論請先 登錄
相關(guān)推薦
鴻蒙原生應(yīng)用元服務(wù)開發(fā)-Web管理位置權(quán)限
老司機教你分析日志:分析用戶的地理位置信息
請問單片機連接esp8266模塊怎么獲取地理位置?
關(guān)于智能穿戴應(yīng)用開發(fā)的幾個疑問?
Facebook或推定位功能 自動標(biāo)注用戶地理位置
低功耗群組電臺的地理位置應(yīng)用
Android取證中地理位置信息提取分析實現(xiàn)
![Android取證中<b class='flag-5'>地理位置</b>信息提取分析實現(xiàn)](https://file.elecfans.com/web2/M00/49/6E/poYBAGKhwLKAZWZ7AAAU_Q-2Ejc534.jpg)
谷歌將重點整治地理位置權(quán)限的亂申請
基于LoRa技術(shù)的地理位置解決方案解析
SWay使用GPS監(jiān)控孩子的地理位置
![SWay使用GPS監(jiān)控孩子的<b class='flag-5'>地理位置</b>](https://file.elecfans.com/web1/M00/D9/4E/pIYBAF_1ac2Ac0EEAABDkS1IP1s689.png)
華為緊急通話界面顯示地理位置專利公布,提升救援成功率
![華為緊急通話界面顯示<b class='flag-5'>地理位置</b>專利公布,提升救援成功率](https://file1.elecfans.com/web2/M00/A9/4F/wKgZomUk7gSAVCizAADAYJIQyzo291.png)
評論