简介 | 星舆科技-凯发真人

# img 简介

高精度地图 sdk,通过对地图数据和地图服务功能的封装,能极大简化开发工作量。

# img 开发环境

android studio 3.0 ,android minsdkversion 19

# img 配置安装

一、 高精度地图接入

1.创建 android 工程。在 android studio 创建 android 工程,要求主模块下的 build.gralde 中设置最小开发版本要求为 19;

2.导入开发包。使用 android studio 功能菜单“file->new->new moudle->import .jar/.aar package”导入 aar 文件: 1、starcart_mapsdk_core_vx.x.x.aar: 基础计算库; 2、starcart_mapsdk_ui_vx.x.x.aar: 地图界面操作基础库;

3.sdk 初始化。通过星舆位置申请 appkey,在 android application 初始化时调用 sdkinitializer 进行初始化:

sdkinitializer.init(this,"你的appkey");
1

4.高精度地图加载。在需要使用地图的页面的布局文件中,添加 starmapview 布局:

<cn.starcart.maplib.starmapview
    android:id="@ id/smv"
    android:layout_width="match_parent"
    android:layout_height="match_parent"/>
1
2
3
4

activity中添加地图加载回调监听:

starmapview.setonstarmaploadcallback(new onstarmaploadcallback() {
    @override
    public void onmapready(starmap starmap) {
        //地图加载成功
    }
    @override
    public void onloadfail(int errorcode) {
        //地图加载失败
    }
});
1
2
3
4
5
6
7
8
9
10
11

5.地图界面交互设置。通过 starmapview. getuisettings() 获取地图界面交互设置助手类uisettings;

6.设置地图样式。地图样式是指地图底图的风格,如街道图、卫星图。可通过 uisettings. setmapstyle 设置地图样式,通过 starmap. changemapstyle 方法改变地图样式;

7.标签点操作。通过 starmarkerbuilder 类,可以在地图上指定位置添加标签点,如:

starmarker maker=starmarkerbuilder.setname("my_location")
        .showmarkinfo(true)
        .setmarkinfotext("我的位置")
        . addtomap(mstarmap,location);
1
2
3
4

8.轨迹线操作。通过 starpolylinebuilder 类,可以根据指定位位置集合,在地图上生成轨迹线,如:

starpolyline trackpolyline=new starpolylinebuilder()
        .setcolor(color)
        .setname(name)
        .setwidth(float.parsefloat(polylinesize))
        .addtomap(mstarmap);
trackpolyline.onnewlocation(location);
1
2
3
4
5
6

二、 高精度导航服务接入

1.创建 android 工程。在 android studio 创建 android 工程,要求主模块下的 build.gralde 中设置最小开发版本要求为 19;

2.导入开发包。使用 android studio 功能菜单“file->new->new moudle->import .jar/.aar package”导入 aar 文件: 1、starcart_mapsdk_core_vx.x.x.aar: 基础计算库; 2、starcart_mapsdk_ui_vx.x.x.aar: 地图界面操作基础库; 3、starcart_mapsdk_navi_vx.x.x.aar: 车道级导航基础库;

3.sdk 初始化。通过星舆位置申请 appkey,在 android application 初始化时调用 sdkinitializer 进行初始化:

sdkinitializer.init(this,"你的appkey");
1

4.路径规划页面。路径规划 view 内嵌了高精度地图,在布局文件中增加以下内容,可使用内嵌的路径规划页面:

<cn.starcart.mapsdk.navi.starnavigationroutingview
        app:initlatitude="23.12199887507846"
        app:initlongitude="113.34587317490309"
        app:initscale="16.5"
        app:inittilt="0"
        android:id="@ id/snrview"
        android:layout_width="match_parent"
        android:layout_height="match_parent"/>
</androidx.constraintlayout.widget.constraintlayout>
1
2
3
4
5
6
7
8
9

其中 app:initlatitude 和 app:initlongitude 为地图初始化经纬度,app:initscale 为地图初始化缩放缩放级别,app:inittilt 为地图初始化倾斜角;

5.定位引擎。starlocationengine为导航服务提供定位信息,定位来源由 app 端控制,可以是 andorid 设备自身定位。也可以搭配相应的定位 sdk 或模组,使用星舆手机高精度定位算法输出结果、星舆手机助手定位结果等定位信息;

6.车道级导航引导界面。若使用内嵌的车道级导航引导界面,需要在 activity 的布局文件中增加以下内容:

<cn.starcart.mapsdk.navi.starnavigationguideview
    app:initlatitude="23.12199887507846"
    app:initlongitude="113.34587317490309"
    app:initscale="18"
    app:inittilt="45"
    android:id="@ id/sngview"
    android:layout_width="match_parent"
    android:layout_height="match_parent"/>
1
2
3
4
5
6
7
8

其中 app:initlatitude 和 app:initlongitude 为地图初始化经纬度,app:initscale 为地图初始化缩放缩放级别,app:inittilt 为地图初始化倾斜角。 并在 activity 初始化后增加以下内容:

intent intent=getintent();
string naviroutekey=intent.getstringextra(naviconst.key_rounting);
starnavigationguideview.setnaviroutingkey(naviroutekey);
1
2
3

naviroutekey 代表导航路径规划数据的索引,starnavigationguideview 通过该索引获取导航引导数据。

# img 接口说明

具体查看使用文档 (opens new window)

网站地图