在调用接口页面的<script>部分增加如下配置。
import awareness from '@service.awareness'
或
var awareness = require('@service.awareness')
描述
获取服务提供商。
返回值
字符串,服务提供商的代号,如厂商的英文品牌名称,如果无此服务则返回空字符串。返回空字符串时,请勿调用该服务其他接口,否则将抛出异常。
示例代码
awareness.getProvider();
描述
添加围栏,该接口只有在获得用户同意获得位置信息后才可以使用。
OBJECT参数
参数 |
类型 |
是否必填 |
说明 |
|---|---|---|---|
appId |
string |
是 |
在华为开发者联盟上创建快应用后分配的唯一标识。获取方式请参见“创建快应用”中的“获取APP ID”章节。 |
key |
string |
是 |
围栏唯一标识符,根据此参数可以添加或替换对应的围栏。大小不能超过128KB。 |
autoRemove |
boolean |
是 |
是否使用autoRemove功能。
|
success |
function |
否 |
成功回调。 |
fail |
function |
否 |
失败回调。 |
fail返回错误代码
错误码 |
说明 |
|---|---|
200 |
通用错误。 |
201 |
用户拒绝。 |
204 |
操作超时。 |
1002 |
应用鉴权失败。 |
示例代码
awareness.addBarrier({
appId: "101449471",
key: "enterLocationBarrier",
autoRemove: true,
success: function (data) {
console.log(JSON.stringify(data));
},
fail: function (data, code) {
console.log(JSON.stringify(data + ", code = " + code));
}
})
描述
删除围栏。
OBJECT参数
参数 |
类型 |
是否必填 |
说明 |
|---|---|---|---|
appId |
string |
是 |
在华为开发者联盟上创建快应用后分配的唯一标识。获取方式请参见“创建快应用”中的“获取APP ID”章节。 |
key |
string |
是 |
需要删除围栏对应的标识符。 |
success |
function |
否 |
成功回调。 |
fail |
function |
否 |
失败回调。 |
fail返回错误代码
错误码 |
说明 |
|---|---|
200 |
通用错误。 |
示例代码
awareness.deleteBarrier({
appId: "101449471",
key: "enterLocationBarrier",
success: function (data) {
console.log(JSON.stringify(data));
},
fail: function (data, code) {
console.log(JSON.stringify(data + ", code = " + code));
}
})
描述
查询围栏状态。
OBJECT参数
参数 |
类型 |
是否必填 |
说明 |
|---|---|---|---|
appId |
string |
是 |
在华为开发者联盟上创建快应用后分配的唯一标识。获取方式请参见“创建快应用”中的“获取APP ID”章节。 |
key |
string |
是 |
需要删除围栏对应的标识符。 |
success |
function |
否 |
成功回调。 |
fail |
function |
否 |
失败回调。 |
success返回值
参数 |
类型 |
说明 |
|---|---|---|
status |
number |
对于不同类型的围栏,获取围栏状态会有所不同。
|
fail返回错误代码
错误码 |
说明 |
|---|---|
200 |
通用错误。 |
示例代码
awareness.getBarrierLastStatus({
appId: '101449471',
key: 'enterLocationBarrier',
success: function (data) {
console.log(data.status);
},
fail: function (data, code) {
console.log(JSON.stringify(data + ', code = ' + code));
}
})
描述
进入围栏。
OBJECT参数
参数 |
类型 |
是否必填 |
说明 |
|---|---|---|---|
latitude |
number |
是 |
围栏中心点纬度,使用wgs84坐标系。 |
longitude |
number |
是 |
围栏中心点经度,使用wgs84坐标系。 |
radius |
number |
是 |
围栏半径,单位:米,最小半径为200米。 |
notification |
object |
是 |
进入围栏触发的通知消息,详细内容参见“notification说明”。 注意:
通知消息的标题和内容请勿包含敏感信息。 |
key |
String |
是 |
需要进入围栏对应的标识符。 |
success |
function |
否 |
成功回调。 |
fail |
function |
否 |
失败回调。 |
notification说明
clickAction说明
参数 |
类型 |
是否必填 |
说明 |
|---|---|---|---|
uri |
string |
是 |
点击通知后跳转的页面地址。 支持的格式包括:
可以通过“?param1=value1”的方式添加参数,参数可以在页面中通过this.param1的方式获取。 |
fail返回错误代码
错误码 |
说明 |
|---|---|
200 |
通用错误。 |
示例代码
awareness.enterLocationBarrier({
notification: {
contentTitle: 'title',
contentText: 'content',
clickAction: {
uri: '/index.html?index=1'
}
},
key: "enterLocationBarrier",
latitude: "31.976427",
longitude: "118.75277",
radius: "200",
success: function (data) {
console.log(JSON.stringify(data));
},
fail: function (data, code) {
console.log(JSON.stringify(data + ", code = " + code));
}
})
描述
离开围栏。
OBJECT参数
参数 |
类型 |
是否必填 |
说明 |
|---|---|---|---|
latitude |
number |
是 |
围栏中心点纬度,使用wgs84坐标系。 |
longitude |
number |
是 |
围栏中心点经度,使用wgs84坐标系。 |
radius |
number |
是 |
围栏半径,单位:米,最小半径为200米。 |
notification |
object |
是 |
进入围栏触发的通知消息,详细内容参见“notification说明”。 注意:
通知消息的标题和内容请勿包含敏感信息。 |
key |
string |
是 |
需要离开围栏对应的标识符。 |
success |
function |
否 |
成功回调。 |
fail |
function |
否 |
失败回调。 |
fail返回错误代码
错误码 |
说明 |
|---|---|
200 |
通用错误。 |
示例代码
awareness.exitLocationBarrier({
notification: {
contentTitle: 'title',
contentText: 'content',
clickAction: {
uri: '/index.html?index=1'
}
},
key: "exitLocationBarrier",
latitude: "31.976427",
longitude: "118.75277",
radius: "200",
success: function (data) {
console.log(JSON.stringify(data));
},
fail: function (data, code) {
console.log(JSON.stringify(data + ", code = " + code));
}
})
描述
停留在围栏中。添加围栏后,如果用户处于此围栏中,则围栏状态为true;如果用于处于围栏外,然后进入围栏中停留超过指定时间,则围栏状态也为true,并触发停留围栏事件。
OBJECT参数
参数 |
类型 |
是否必填 |
说明 |
|---|---|---|---|
timeOfDuration |
number |
是 |
停留时长,单位毫秒。 |
latitude |
number |
是 |
围栏中心点纬度,使用wgs84坐标系。 |
longitude |
number |
是 |
围栏中心点经度,使用wgs84坐标系。 |
radius |
number |
是 |
围栏半径,单位:米,最小半径为200米。 |
notification |
object |
是 |
进入围栏触发的通知消息,详细内容参见“notification说明”。 注意:
通知消息的标题和内容请勿包含敏感信息。 |
key |
string |
是 |
需要停留围栏对应的标识符。 |
success |
function |
否 |
成功回调。 |
fail |
function |
否 |
失败回调。 |
fail返回错误码
错误码 |
说明 |
|---|---|
200 |
通用错误。 |
示例代码
awareness.stayLocationBarrier({
notification: {
contentTitle: 'title',
contentText: 'content',
clickAction: {
uri: '/index.html?index=1'
}
},
key: "stayLocationBarrier",
latitude: "31.976427",
longitude: "118.75277",
radius: "200",
timeOfDuration: "30000",
success: function (data) {
console.log(JSON.stringify(data));
},
fail: function (data, code) {
console.log(JSON.stringify(data + ", code = " + code));
}
})