开发 HarmonyOS NEXT 地图SDK 开发指南 获取地图数据 获取天气数据

获取天气数据 最后更新时间: 2026年05月26日

简介

通过天气查询,可获取城市的实时天气、今天和未来3天的预报天气,可结合定位和逆地理编码功能使用,查询定位点所在城市的天气情况。注意:仅支持中国部分地区数据(台湾省目前没有数据)返回

天气查询是一个可用来改善app体验的功能,如:在跑步类app中加入天气的提醒;出行前了解天气情况以便安排行程。

天气查询的请求参数类为 WeatherSearch,city(城市)为必设参数,type(气象类型)为可选,包含有两种类型:WEATHER_TYPE_LIVE为实况天气;WEATHER_TYPE_FORECAST为预报天气,默认为 实况天气。

示例代码

实况天气的代码如下:

 第一步:设置查询条件及天气监听接口

//检索参数为城市和天气类型,实况天气为WEATHER_TYPE_LIVE、天气预报为WEATHER_TYPE_FORECAST
et query = new WeatherSearchQuery(this.cityName, WeatherSearchQuery.WEATHER_TYPE_FORECAST)
this.weatherSearch = new WeatherSearch(this.context)
      this.weatherSearch.setOnWeatherSearchListener(this.weatherSearchListener)
this.weatherSearch.setQuery(query)
//异步搜索
this.weatherSearch.searchWeatherAsyn()

第二步:获取天气查询结果


/**
  * 实时天气查询回调
  */
public onWeatherLiveSearched: (weatherLiveResult: LocalWeatherLiveResult | undefined, errorCode: number): void => {
      if (errorCode === AMapException.CODE_AMAP_SUCCESS) {
        if (weatherLiveResult && weatherLiveResult.getLiveResult()) {
          this.weatherLive = weatherLiveResult.getLiveResult()
        } else {
          ToastUtil.show(this.uiContext, '对不起,没有搜索到相关数据!')
        }
      } else {
        ToastUtil.showError(this.uiContext, errorCode)
      }
    }

截图效果如下:

注意事项

请注意:使用上述功能需要下载地图SDK,导入搜索功能的包。

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