鸿蒙系统应用——高德地图开发

DevEco studio配置

1.新建deveco工程 2.在高德地图下载相关SDK, 3.将下载好的SDK解压之后拷贝到DevEco工程libs目录下

高德地图控制台配置

1.控制台新建一个应用,

如图: 2.点击添加对应用进行配置 key名称自取。 AppId——获取方法:

在MainAbility.java的onStart方法中添加如下代码:

try {
          
   
            String AppId = getBundleManager().getBundleInfo(getBundleName(),0).getAppId();
            HiLog.info(label,AppId);
        } catch (RemoteException e) {
          
   
            e.printStackTrace();
        }

在log窗口中即可查看到AppId。

代码编写

1.config.json申明权限

2.MainAblitySlice.java获取MapView对象

运行之后等待地图加载就可以看到地图啦

MainAblitySlice.java代码

public class MainAbilitySlice extends AbilitySlice {
          
   
    private MapView mapView;
    
    private AMap aMap;

    @Override
    public void onStart(Intent intent) {
          
   
        super.onStart(intent);
        super.setUIContent(ResourceTable.Layout_ability_main);

        initMap();
    }
    
    private void initMap(){
          
   
        mapView = new MapView(this);
        mapView.onCreate(null);
        mapView.onResume();
        ComponentContainer.LayoutConfig layoutConfig = new ComponentContainer.LayoutConfig(
                ComponentContainer.LayoutConfig.MATCH_PARENT,ComponentContainer.LayoutConfig.MATCH_PARENT
        );
        mapView.setLayoutConfig(layoutConfig);
        super.setUIContent(mapView);
        aMap = mapView.getMap();
        aMap.setOnMapLoadedListener(new AMap.OnMapLoadedListener() {
          
   
            @Override
            public void onMapLoaded() {
          
   
                
            }
        });
    }

    @Override
    public void onActive() {
          
   
        super.onActive();
    }

    @Override
    public void onForeground(Intent intent) {
          
   
        super.onForeground(intent);
    }

    @Override
    protected void onStop() {
          
   
        if(mapView != null){
          
   
            mapView.onDestroy();
        }
    }
}
经验分享 程序员 微信小程序 职场和发展