W3Cschool
恭喜您成為首批注冊用戶
獲得88經(jīng)驗值獎勵
{"name": "system.geolocation"}
import geolocation from '@system.geolocation'
或
const geolocation = require('@system.geolocation')
獲取地理位置
精確設(shè)備定位
參數(shù)名 | 類型 | 必填 | 說明 |
---|---|---|---|
timeout | Long | 否 | 設(shè)置超時時間,單位是 ms,默認值為 30000。在權(quán)限被系統(tǒng)拒絕或者定位設(shè)置不當(dāng)?shù)那闆r下,有可能永遠不能返回結(jié)果,因而需要設(shè)置超時。超時后會使用 fail 回調(diào) |
coordType 1050+ | String | 否 | 坐標(biāo)系類型,可選值可通過 getSupportedCoordTypes 獲取,默認為 wgs84 |
success | Function | 是 | 成功回調(diào) |
fail | Function | 否 | 失敗回調(diào),原因可能是用戶拒絕 |
complete | Function | 否 | 執(zhí)行結(jié)束后的回調(diào) |
參數(shù)名 | 類型 | 說明 |
---|---|---|
longitude | Number | 經(jīng)度 |
latitude | Number | 緯度 |
accuracy 1040+ | Number | 精確度 |
time 1040+ | Number | 時間 |
錯誤碼 | 說明 |
---|---|
201 | 用戶拒絕,獲取定位權(quán)限失敗 |
204 | 超時返回 |
1000 1000+
|
系統(tǒng)位置開關(guān)關(guān)閉 |
geolocation.getLocation({
success: function (data) {
console.log(`handling success: longitude = ${data.longitude}, latitude = ${data.latitude}`)
},
fail: function (data, code) {
console.log(`handling fail, code = ${code}`)
}
})
使用快應(yīng)用內(nèi)置地圖查看位置,并且允許拉起第三方地圖應(yīng)用發(fā)起導(dǎo)航
精確設(shè)備定位
參數(shù)名 | 類型 | 必填 | 說明 |
---|---|---|---|
latitude | Number | 是 | 緯度,范圍為 -90~90,負數(shù)表示南緯 |
longitude | Number | 是 | 經(jīng)度,范圍為 -180~180,負數(shù)表示西經(jīng) |
coordType | String | 否 | 坐標(biāo)系,支持 wgs84 和 gcj02,默認使用 wgs84 |
scale | Number | 否 | 縮放比例,范圍為 5~18,默認值是 18 |
name | String | 否 | 位置名 |
address | String | 否 | 地址的詳細說明 |
success | Function | 否 | 成功回調(diào) |
fail | Function | 否 | 失敗回調(diào) |
complete | Function | 否 | 執(zhí)行結(jié)束后的回調(diào) |
錯誤碼 | 說明 |
---|---|
201 | 用戶拒絕 |
202 | 經(jīng)緯度參數(shù)非法 |
1000 | 跳轉(zhuǎn)導(dǎo)航出錯 |
1001 | 未安裝地圖應(yīng)用 |
geolocation.openLocation({
latitude: 22.553594050274,
longitude: 114.0586290118,
success: function() {
console.log(`open location success`)
},
fail: function(data, code) {
console.log(`open location fail, code = ${code}`)
},
complete: function() {
console.log(`open location complete`)
}
})
打開快應(yīng)用內(nèi)置地圖選擇位置
精確設(shè)備定位
參數(shù)名 | 類型 | 必填 | 說明 |
---|---|---|---|
latitude | Number | 否 | 指定中心點緯度,如果為空則顯示當(dāng)前位置 |
longitude | Number | 否 | 指定中心點經(jīng)度,如果為空則顯示當(dāng)前位置 |
coordType | String | 否 | 坐標(biāo)系,支持 wgs84 和 gcj02,默認使用 wgs84。僅作用于指定中心點的經(jīng)緯度坐標(biāo)系,成功回調(diào)的返回值國內(nèi)坐標(biāo)固定使用 gcj02 坐標(biāo)系,國外坐標(biāo)固定使用 wgs84 坐標(biāo)系 |
success | Function | 是 | 成功回調(diào) |
fail | Function | 否 | 失敗回調(diào) |
complete | Function | 否 | 執(zhí)行結(jié)束后的回調(diào) |
參數(shù)名 | 類型 | 說明 |
---|---|---|
name | String | 位置名稱 |
address | String | 詳細地址 |
coordType | String | 返回值經(jīng)緯度的坐標(biāo)系,國內(nèi)坐標(biāo)固定使用 gcj02 坐標(biāo)系,國外坐標(biāo)固定使用 wgs84 坐標(biāo)系 |
latitude | Number | 緯度,浮點數(shù),范圍為 -90~90,負數(shù)表示南緯 |
longitude | Number | 經(jīng)度,浮點數(shù),范圍為 -180~180,負數(shù)表示西經(jīng) |
錯誤碼 | 說明 |
---|---|
201 | 用戶拒絕 |
1000 | 所選位置無效 |
geolocation.chooseLocation({
success: function(data) {
console.log(
`choose location success: name = ${data.name}, address = ${data.address}, coordType = ${data.coordType}, latitude = ${data.latitude}, longitude = ${data.longitude}`
)
},
fail: function(data, code) {
console.log(`choose location fail, code = ${code}`)
},
complete: function() {
console.log(`choose location complete`)
}
})
1010+
獲取系統(tǒng)當(dāng)前支持的定位類型
精確設(shè)備定位
參數(shù)名 | 類型 | 必填 | 說明 |
---|---|---|---|
success | Function | 是 | 成功回調(diào) |
fail | Function | 否 | 失敗回調(diào) |
complete | Function | 否 | 執(zhí)行結(jié)束后的回調(diào) |
參數(shù)名 | 類型 | 說明 |
---|---|---|
types | Array | 支持的類型['gps','network'] |
geolocation.getLocationType({
success: function (data) {
console.log(`handling success: locationType = ${data.types}`)
},
fail: function (data, code) {
console.log(`handling fail, code = ${code}`)
}
})
監(jiān)聽地理位置。如果多次調(diào)用,僅最后一次調(diào)用生效
參數(shù)名 | 類型 | 必填 | 說明 |
---|---|---|---|
reserved 1050+ | Boolean | 否 | 是否持久化訂閱,默認為 false。機制:設(shè)置為 true,頁面跳轉(zhuǎn),不會自動取消訂閱,需手動取消訂閱 |
coordType 1050+ | String | 否 | 坐標(biāo)系類型,可選值可通過 getSupportedCoordTypes 獲取,默認為 wgs84 |
callback | Function | 是 | 每次位置信息發(fā)生變化,都會被回調(diào) |
fail | Function | 否 | 失敗回調(diào),原因可能是用戶拒絕 |
參數(shù)名 | 類型 | 說明 |
---|---|---|
longitude | Number | 經(jīng)度 |
latitude | Number | 緯度 |
accuracy 1040+ | Number | 精確度 |
time 1040+ | Number | 時間 |
錯誤碼 | 說明 |
---|---|
201 | 用戶拒絕,獲取定位權(quán)限失敗 |
1000 1000+
|
系統(tǒng)位置開關(guān)關(guān)閉 |
geolocation.subscribe({
callback: function (data) {
console.log(`handling success: longitude = ${data.longitude}, latitude = ${data.latitude}`)
},
fail: function (data, code) {
console.log(`handling fail, code = ${code}`)
}
})
取消監(jiān)聽地理位置
無
geolocation.unsubscribe()
獲取支持的坐標(biāo)系類型
無
字符串?dāng)?shù)組。當(dāng)前支持的坐標(biāo)系類型,如 [ 'wgs84' ]
var types = geolocation.getSupportedCoordTypes()
manifest 中申請后可用。
后臺運行詳細用法參見 后臺運行腳本。
Copyright©2021 w3cschool編程獅|閩ICP備15016281號-3|閩公網(wǎng)安備35020302033924號
違法和不良信息舉報電話:173-0602-2364|舉報郵箱:jubao@eeedong.com
掃描二維碼
下載編程獅App
編程獅公眾號
聯(lián)系方式:
更多建議: