# 简介
918博天堂官网封装了高精度实时定位服务相关 API(Ntrip 协议)的 Android SDK,降低开发者集成难度,能方便快速调试和接入高精度实时定位服务。
# 开发环境
Android 4.0及以上版本。
# 配置安装
1.准备918博天堂官网提供的最新版本的 SDK jar 包。例如:"starlocation-ntrip-java.jar";
2.项目根目录下新建 libs 目录将 jar 包放入其中;
3.配置依赖库,在 build.gradle 中引入 jar 包,并加入 netty 依赖,如下:
implementation fileTree(dir: 'libs', include: ['*.jar'])
compile 'io.netty:netty-all:4.1.10.Final'
1
2
2
4.在 build.gradle 中将 java 版本配置为 1.7 及以上,如下:
compileOptions {
sourceCompatibility JavaVersion.VERSION_1_7
targetCompatibility JavaVersion.VERSION_1_7
}
1
2
3
4
2
3
4
5.SDK 需要网络访问相关的一些权限,需要在 AndroidManifest.xml 中增加如下权限声明:
<uses-permission android:name="android.permission.CHANGE_NETWORK_STATE"/>
<uses-permission android:name="android.permission.CHANGE_WIFI_STATE"/>
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE"/>
<uses-permission android:name="android.permission.ACCESS_WIFI_STATE"/>
<uses-permission android:name="android.permission.INTERNET"/>
1
2
3
4
5
2
3
4
5
# 示例
// 配置必要信息
String userName = "***";
String userPassword = "***";
// 调用接口示例如下
StarLocationService starLocationService = StarLocationFactory.getStarLocationProService(userName, userPassword);
// 创建一个起始位置
String gga = "$GPGGA,031323,2306.00,N,11320.00,E,4,31,0.5,69.3891,M,-6.6544,M,01,0001*62";
// 首次发起请求需要进行监听器的设置,并且传递首次gga信息
starLocationService.requestLocRtcmUpdate(new StarLocationListener() {
@Override
public void onRtcmDataChanged(LocRtcmData locRtcmData) {
//获取RTCM数据
byte[] rtcm =locRtcmData.getRtcmMessage();
// TODO 根据自身需求处理rtcm数据
}
@Override
public void onState(Status status) {
//获取状态码信息
}
}, gga);
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
更多示例,请下载 工程示例 (opens new window)。