Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
DCloud
unidocs-uni-app-x-zh
提交
2477a360
U
unidocs-uni-app-x-zh
项目概览
DCloud
/
unidocs-uni-app-x-zh
通知
144
Star
2
Fork
33
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
9
列表
看板
标记
里程碑
合并请求
11
DevOps
流水线
流水线任务
计划
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
U
unidocs-uni-app-x-zh
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
9
Issue
9
列表
看板
标记
里程碑
合并请求
11
合并请求
11
Pages
DevOps
DevOps
流水线
流水线任务
计划
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
流水线任务
提交
Issue看板
提交
2477a360
编写于
7月 22, 2024
作者:
WOSHIMAHAIFENG
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
Update get-location.md
上级
e05b9c81
变更
1
显示空白变更内容
内联
并排
Showing
1 changed file
with
14 addition
and
9 deletion
+14
-9
docs/api/get-location.md
docs/api/get-location.md
+14
-9
未找到文件。
docs/api/get-location.md
浏览文件 @
2477a360
...
@@ -40,27 +40,31 @@ uni-app x的App标准基座定位仅支持wgs84坐标系、不支持逆地址解
...
@@ -40,27 +40,31 @@ uni-app x的App标准基座定位仅支持wgs84坐标系、不支持逆地址解
<!-- UTSAPIJSON.general_type.param -->
<!-- UTSAPIJSON.general_type.param -->
## 自定义定位provider
## 自定义定位provider
接入到uni API
以自定义腾讯定位为例
背景:目前基座已经内置了系统定位,腾讯定位,基于开放的原则,在以上定位不满足用户需求的情况下,用户可以基于我们规范化的接口,错误信息描述等实现自己的定位需求。而在最终使用方式上与内置API无任何别
举个例子,用户想实现高德定位,但是内置定位api不支持,那您只需要按照下面的模版自己实现一套即可
以自定义高德定位为例
第一步,在interface.uts 中定义接口,继承UniLocationProvider,代码如下
第一步,在interface.uts 中定义接口,继承UniLocationProvider,代码如下
```
ts
```
ts
export
interface
UniLocation
Tencent
Provider
extends
UniLocationProvider
{}
export
interface
UniLocation
AMap
Provider
extends
UniLocationProvider
{}
```
```
第二步,在app-android或者app-ios的index.uts中实现接口,代码如下
第二步,在app-android或者app-ios的index.uts中实现接口,代码如下
```
ts
```
ts
import
{
UniLocation
Tencent
Provider
}
from
'
../interface
'
;
import
{
UniLocation
AMap
Provider
}
from
'
../interface
'
;
export
class
UniLocation
TencentProviderImpl
implements
UniLocationTencent
Provider
{
export
class
UniLocation
AMapProviderImpl
implements
UniLocationAMap
Provider
{
override
id
:
String
=
'
tencent
'
override
id
:
String
=
'
amap
'
override
description
:
String
=
"
tencent
"
override
description
:
String
=
"
amap
"
override
isAppExist
:
boolean
|
null
=
null
override
isAppExist
:
boolean
|
null
=
null
...
@@ -82,7 +86,7 @@ export class UniLocationTencentProviderImpl implements UniLocationTencentProvide
...
@@ -82,7 +86,7 @@ export class UniLocationTencentProviderImpl implements UniLocationTencentProvide
/* android打包配置 */
/* android打包配置 */
"
modules
"
:
{
"
modules
"
:
{
"
uni-getLocation
"
:{
"
uni-getLocation
"
:{
"
tencent
"
:{}
"
amap
"
:{}
}
}
}
}
}
}
...
@@ -91,4 +95,5 @@ export class UniLocationTencentProviderImpl implements UniLocationTencentProvide
...
@@ -91,4 +95,5 @@ export class UniLocationTencentProviderImpl implements UniLocationTencentProvide
第四步,打自定义基座
第四步,打自定义基座
[
示例代码
](
https://gitcode.net/dcloud/uni-api/-/tree/master/uni_modules/uni-getLocation-tencent
)
通过以上步骤就可以实现自定义定位provider接入到uni API
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录