开发 HarmonyOS 地图SDK 开发指南 显示地图

显示地图 最后更新时间: 2021年08月24日

使用地图SDK之前,需要在config.json文件中进行相关权限设置,确保地图功能可以正常使用。

第一步,配置config.json

首先,声明权限

...
"reqPermissions": [
      {
        "usedScene": {
          "ability": [
            "com.example.harmonysearchsdk.MainAbility"
          ],
          "when": "always"
        },
        "reason": "request internet",
        "name": "ohos.permission.INTERNET"
      }
    ]
...

第二步,向工程中添加地图开发包

将har包放入libs目录下,依次添加依赖。

dependencies {
    implementation files("libs/xxx.har")
		//...
}

或者直接使用引入libs下所有har包的方式:

dependencies {
	implementation fileTree(dir: 'libs', include: ['*.jar', '*.har'])
		//...
}

第三步,初始化地图容器

首先,设置Key

获取Key方式:https://lbs.amap.com/api/harmonyos-sdk/guide/get-key

MapsInitializer.setApiKey("您的key");

然后,创建MapView

public class BasicMapDemoSlice extends Ability {

    private MapView mapView;

    @Override
    protected void onStart(Intent intent) {
        super.onStart(intent);
        initMapView();
    }

    private void initMapView() {
        mapView = new MapView(this);

        mapView.onCreate(null);
        mapView.onResume();
        DirectionalLayout.LayoutConfig config = new DirectionalLayout.LayoutConfig(
                DirectionalLayout.LayoutConfig.MATCH_PARENT, DirectionalLayout.LayoutConfig.MATCH_PARENT);
        mapView.setLayoutConfig(config);
        super.setUIContent(mapView);
    }

    @Override
    protected void onStop() {
        super.onStop();
        if (mapView != null) {
            mapView.onDestroy();
        }
    }
}

最后,初始化地图并获取AMap对象

AMap aMap = mapView.getMap();
aMap.setOnMapLoadedListener(new AMap.OnMapLoadedListener() {
    @Override
    public void onMapLoaded() {
		// todo
    }
});

 至此就可以看到地图展示,并且拿到了AMap对象后,就可以往地图上添加点线面等覆盖物。

返回顶部 示例中心 常见问题 智能客服 公众号
二维码