心知天气网页无法加载插件怎么处理中的hash是怎么生成的

全新上线Android SDK为您的App用户提供天气服务心知天气Android SDK简介心知天气SDK现已停止维护,建议不要使用!请通过直接发送request请求的方式调用API。心知天气Android SDK是一套天气数据查询调用接口,供开发者在自己的app中便捷地获取由心知天气提供的各种气象数据。
该SDK具有如下特点:对所有注册用户免费开放使用。使用更安全的签名验证方式,确保开发者的密钥不会被泄露。可以获取用户当前套餐包含的全部数据。版本信息:最新SDK版本号:v1.0.1支持Android版本:Android 4.0以上版本,API Level 14SDK需要使用您的心知天气API密钥和用户ID来进行与服务端的交互,我们会保护您的密钥在网络传输过程中不被泄漏。我的API密钥:API密钥(key)是用来验证API请求合法性的一个唯一字符串。我的用户ID:用户ID是在注册心知会员时系统自动分配的一个随机10位的字符串,如U。开发环境配置以下分别以Eclipse、Android Studio两种开发环境为例讲解一下心知天气SDK的配置方法。Eclipse:第一步:在工程中新建"libs"目录,将下载的SDK(一个jar文件)拷贝到"libs"根目录下。注意:如果您在Eclipse上使用adt22插件,则还需要进行如下配置:选中工程,在右键菜单上选择"Properties > Java Build Path > Order and Export",勾选"Android Private Libraries"。第二步:在工程的"AndroidManifest.xml"文件中添加需要的权限,目前版本的SDK仅需要网络访问权限:&uses-permission android:name="android.permission.INTERNET" /&gt第三步:选择"Project > Clean"清除工程缓存。Android Studio:第一步:在工程的"app/libs"目录下放入已下载的SDK(一个jar文件)。第二步:选择上一步中添加的jar文件,在右键菜单中选择"Add As Library"。第三步:在工程的"AndroidManifest.xml"文件中添加需要的权限,目前版本的SDK仅需要网络访问权限:&uses-permission android:name="android.permission.INTERNET" /&gt示例代码Android SDK的主要package是com.thinkpage.lib.api,其入口类为TPWeatherManager,
这个类被设计为单例,调用sharedWeatherManager()方法可以获得其实例:TPWeatherManager weatherManager = TPWeatherManager.sharedWeatherManager();接下来使用您的API密钥和用户ID对TPWeatherManager实例进行初始化:weatherManager.initWithKeyAndUserId(&My_Api_Key&,&My_User_Name&);TPWeatherManager提供了一组方法,用于获取心知天气提供的各类气象数据。
下面是一个完整的例子,创建TPWeatherManager实例并获取当前北京的实况天气:TPWeatherManager weatherManager = TPWeatherManager.sharedWeatherManager();
//使用心知天气官网获取的key和用户id初始化WeatherManager
weatherManager.initWithKeyAndUserId(&My_Api_Key&,&My_User_Name&);
// 获取北京当前天气,使用简体中文、摄氏度
weatherManager.getWeatherNow(new TPCity("beijing")
, TPWeatherManager.TPWeatherReportLanguage.kSimplifiedChinese
, TPWeatherManager.TPTemperatureUnit.kCelsius
, new TPListeners.TPWeatherNowListener() {
public void onTPWeatherNowAvailable(TPWeatherNow weatherNow, String errorInfo) {
if (weatherNow != null) {
//weatherNow 就是返回的当前天气信息。
log(weatherNow.text); //获取天气文本,例如“晴”、“多云”
log(weatherNow.windDirection);
//获取当前风向,例如“西北”
log(weatherNow.feelsLikeTemperature); //获取当前体感温度
log(errorInfo); //错误信息
});天气实况包:com.thinkpage.lib.api类:TPWeatherManager方法:public void getWeatherNow(TPCity city, TPWeatherReportLanguage language, TPTemperatureUnit unit, TPListeners.TPWeatherNowListener listener)说明:获取指定城市的实况天气。参数:city要查询的地点,详见language返回数据的语言,详见unit返回数据的温度单位,详见listener监听器对象。该监听器仅有一个由调用者实现的方法onTPWeatherNowAvailable(TPWeatherNow weatherNow, String errorInfo);
第一个参数weatherNow包含了所请求的天气信息:public class TPWeatherNow
// 天气现象文字,例如“多云”
// 天气现象代码,例如“4”
// 温度,单位为c摄氏度或f华氏度
// 体感温度,单位为c摄氏度或f华氏度
public int feelsLikeT
// 气压。单位为mb百帕或in英寸
// 相对湿度,范围0~1
// 能见度,单位为km公里或mi英里
// 风向文字,例如“西北”
public String windD
// 风向角度,范围0~360,0为正北,90为正东,180为正南,270为正西
public int windDirectionD
// 风速,单位为km/h公里每小时或mph英里每小时
public double windS
// 风力等级
public double windS
// 云量,范围0~100,天空被云覆盖的百分比
// 露点温度
public int dewP
// 数据更新时间(该城市的本地时间)
public Date lastUpdateD
}当发生错误时,错误信息由第二个参数errorInfo返回。逐日预报和历史包:com.thinkpage.lib.api类:TPWeatherManager方法:public void getWeatherDailyArray(TPCity city, TPWeatherReportLanguage language, TPTemperatureUnit unit, Date startDate, int days, TPListeners.TPWeatherDailyListener listener)说明:获取指定城市未来最多15天的每日白天和夜间预报,以及昨天的历史数据。参数:city要查询的地点,详见language返回数据的语言,详见unit返回数据的温度单位,详见startDate所查询的起始日期days所查询的天数listener监听器对象。该监听器仅有一个由调用者实现的方法onTPWeatherDailyAvailable(TPWeatherDaily[] weatherDailies, String errorInfo);
第一个参数weatherDailies是个数组,包含了所请求的天气信息:public class TPWeatherDaily {
// 白天天气现象文字
public String textD
// 白天天气现象代码
public String codeD
// 晚间天气现象文字
public String textN
// 晚间天气现象代码
public String codeN
// 当天最高温度
public int highT
// 当天最低温度
public int lowT
// 降水概率,范围0~100,单位百分比
public double chanceOfR
// 风向文字
public String windD
// 风向角度,范围0~360
public int windDirectionD
// 风速,单位km/h(当unit=c时)、mph(当unit=f时)
public double windS
// 风力等级
public double windS
}当发生错误时,错误信息由第二个参数errorInfo返回。24小时逐小时预报包:com.thinkpage.lib.api类:TPWeatherManager方法:public void getWeatherHourlyArray(TPCity city, TPWeatherReportLanguage language, TPTemperatureUnit unit, int startHourOffset, int hours, TPListeners.TPWeatherHourlyListener listener)说明:获取指定城市未来最多24小时的逐小时预报。目前仅支持中国城市。参数:city要查询的地点,详见language返回数据的语言,详见unit返回数据的温度单位,详见startHourOffset所查询的起始其实时间距离现在的小时数,例如0代表这个小时、1代表下个小时hours所查询的小时数listener监听器对象。该监听器仅有一个由调用者实现的方法onTPWeatherHourlyAvailable(TPWeatherHourly[] weatherHourlies, String errorInfo);
第一个参数weatherHourlies是个数组,包含了所请求的天气信息:public class TPWeatherHourly {
// 天气现象文字
// 天气现象代码
// 温度,单位为c摄氏度或f华氏度
}当发生错误时,错误信息由第二个参数errorInfo返回。过去24小时天气历史纪录包:com.thinkpage.lib.api类:TPWeatherManager方法:public void getWeatherHistoryHourlyArray(TPCity city, TPWeatherReportLanguage language, TPTemperatureUnit unit, TPListeners.TPWeatherHistoryHourlyListener listener)说明:获取指定城市过去24小时逐时的天气历史记录。参数:city要查询的地点,详见language返回数据的语言,详见unit返回数据的温度单位,详见listener监听器对象。该监听器仅有一个由调用者实现的方法onTPWeatherHistoryHourlyAvailable(TPWeatherHistoryHourly[] weatherHistoryHourlies, String errorInfo);
第一个参数weatherHistoryHourlies是个数组,包含了所请求的天气信息:public class TPWeatherHistoryHourly {
// 天气现象文字,例如“多云”
// 天气现象代码,例如“4”
// 温度,单位为c摄氏度或f华氏度
// 体感温度,单位为c摄氏度或f华氏度
public int feelsLikeT
// 气压。单位为mb百帕或in英寸
// 相对湿度,范围0~1
// 能见度,单位为km公里或mi英里
// 风向文字,例如“西北”
public String windD
// 风向角度,范围0~360,0为正北,90为正东,180为正南,270为正西
public int windDirectionD
// 风速,单位为km/h公里每小时或mph英里每小时
public double windS
// 风力等级
public double windS
// 云量,范围0~100,天空被云覆盖的百分比
// 露点温度
public int dewP
// 数据更新时间(该城市的本地时间)
public Date lastUpdateD
}当发生错误时,错误信息由第二个参数errorInfo返回。气象灾害预警包:com.thinkpage.lib.api类:TPWeatherManager方法:public void getWeatherAlarms(TPCity city, TPListeners.TPWeatherAlarmListener listener)说明:获取指定城市的气象灾害预警信息。参数:city要查询的地点,详见listener监听器对象。该监听器仅有一个由调用者实现的方法onTPWeatherAlarmAvailable(TPWeatherAlarm[] weatherAlarms, String errorInfo);
第一个参数weatherAlarms是个数组,包含了所请求的天气信息:public class TPWeatherAlarm {
// 灾害预警标题
// 灾害预警标题
// 灾害级别
// 预警状体
// 详细描述
// 发布时间
public Date publishingD
}当发生错误时,错误信息由第二个参数errorInfo返回。空气质量实况包:com.thinkpage.lib.api类:TPWeatherManager方法:public void getAirQualities(TPCity city, TPWeatherReportLanguage language, TPListeners.TPAirQualityListener listener)说明:获取指定城市的AQI、PM2.5、PM10、一氧化碳、二氧化氮、臭氧等空气质量信息。参数:city要查询的地点,详见language返回数据的语言,详见listener监听器对象。该监听器仅有一个由调用者实现的方法onTPAirQualityAvailable(TPAirQuality[] airQualities, String errorInfo);
第一个参数airQualities是个数组,包含了所请求的空气质量信息:public class TPAirQuality {
// 空气质量数据来源,分为城市和气象站两种
public enum TPAirQualityType{kTPAirQualityTypeCity, kTPAirQualityTypeStation};
// 数据来源
public TPAirQualityT
// 空气质量指数(AQI)是描述空气质量状况的定量指数
// PM2.5颗粒物(粒径小于等于2.5μm)1小时平均值。单位:μg/m?
public double pm25;
// PM10颗粒物(粒径小于等于10μm)1小时平均值。单位:μg/m?
public double pm10;
// 二氧化硫1小时平均值。单位:μg/m?
public double so2;
// 二氧化氮1小时平均值。单位:μg/m?
public double no2;
// 一氧化碳1小时平均值。单位:mg/m?
// 臭氧1小时平均值。单位:μg/m?
public double o3;
// 空气质量类别,有“优、良、轻度污染、中度污染、重度污染、严重污染”6类
// 监测站名称,当且仅当type==kTPAirQualityTypeStation时有效
// 数据发布时间
public Date lastUpdateD
}当发生错误时,错误信息由第二个参数errorInfo返回。空气质量实况城市排行包:com.thinkpage.lib.api类:TPWeatherManager方法:public void getAirRanking(TPWeatherReportLanguage language, TPListeners.TPAirRankingListener listener)说明:获取全国城市空气质量AQI排行榜。参数:language返回数据的语言,详见listener监听器对象。该监听器仅有一个由调用者实现的方法onAirRankingAvailable(TPAirRankingCity[] airRankingCities, String errorInfo);
第一个参数airRankingCities是个数组,包含了所请求的城市排行信息:public class TPAirRankingCity {
// 城市详细信息
public TPCityInformation cityI
// 城市AQI数据
}当发生错误时,错误信息由第二个参数errorInfo返回。逐日空气质量预报包:com.thinkpage.lib.api类:TPWeatherManager方法:public void getAirDaily(TPCity city, TPWeatherReportLanguage language, int days, TPListeners.TPAirDailyListener listener)说明:获取指定城市未来最多7天的每日AQI预报。参数:city要查询的地点,详见language返回数据的语言,详见days获取空气质量预报的总天数,从当天算起listener监听器对象。该监听器仅有一个由调用者实现的方法onAirDailyAvailable(TPAirDaily[] airDailyArray, String errorInfo);
第一个参数airDailyArray是个数组,包含了所请求的空气质量信息:public class TPAirDaily {
// 空气质量指数(AQI)是描述空气质量状况的定量指数
// PM2.5颗粒物(粒径小于等于2.5μm)预报值。单位:μg/m?
public double pm25;
// PM10颗粒物(粒径小于等于10μm)预报值。单位:μg/m?
public double pm10;
// 二氧化硫预报值。单位:μg/m?
public double so2;
// 二氧化氮预报值。单位:μg/m?
public double no2;
// 一氧化碳预报值。单位:mg/m?
// 臭氧预报值。单位:μg/m?
public double o3;
// 空气质量类别,有“优、良、轻度污染、中度污染、重度污染、严重污染”6类
// 预报日期
}当发生错误时,错误信息由第二个参数errorInfo返回。逐小时空气质量预报包:com.thinkpage.lib.api类:TPWeatherManager方法:public void getAirHourly(TPCity city, TPWeatherReportLanguage language, int days, TPListeners.TPAirHourlyListener listener)说明:获取指定城市未来最多7天的每小时AQI预报。参数:city要查询的地点,详见language返回数据的语言,详见days获取空气质量预报的总天数,从当天算起listener监听器对象。该监听器仅有一个由调用者实现的方法onAirHourlyAvailable(TPAirHourly[] airHourlyArray, String errorInfo);
第一个参数airHourlyArray是个数组,包含了所请求的空气质量信息:public class TPAirHourly {
// 空气质量指数(AQI)是描述空气质量状况的定量指数
// PM2.5颗粒物(粒径小于等于2.5μm)预报值。单位:μg/m?
public double pm25;
// PM10颗粒物(粒径小于等于10μm)预报值。单位:μg/m?
public double pm10;
// 二氧化硫预报值。单位:μg/m?
public double so2;
// 二氧化氮预报值。单位:μg/m?
public double no2;
// 一氧化碳预报值。单位:mg/m?
// 臭氧预报值。单位:μg/m?
public double o3;
// 空气质量类别,有“优、良、轻度污染、中度污染、重度污染、严重污染”6类
// 预报时间
}当发生错误时,错误信息由第二个参数errorInfo返回。过去24小时空气质量历史记录包:com.thinkpage.lib.api类:TPWeatherManager方法:public void getHistoryHourlyAirQualities(TPCity city, TPWeatherReportLanguage language, TPListeners.TPHistoryHourlyAirQualityListener listener)说明:获取指定城市过去24小时逐时的AQI、PM2.5、PM10、一氧化碳、二氧化氮、臭氧等空气质量信息。参数:city要查询的地点,详见language返回数据的语言,详见listener监听器对象。该监听器仅有一个由调用者实现的方法onHistoryHourlyTPAirQualityAvailable(TPAirQuality[][] airQualities, String errorInfo);
第一个参数airQualities是个二维数组,包含了所请求的空气质量信息:public class TPAirQuality {
// 空气质量数据来源,分为城市和气象站两种
public enum TPAirQualityType{kTPAirQualityTypeCity, kTPAirQualityTypeStation};
// 数据来源
public TPAirQualityT
// 空气质量指数(AQI)是描述空气质量状况的定量指数
// PM2.5颗粒物(粒径小于等于2.5μm)1小时平均值。单位:μg/m?
public double pm25;
// PM10颗粒物(粒径小于等于10μm)1小时平均值。单位:μg/m?
public double pm10;
// 二氧化硫1小时平均值。单位:μg/m?
public double so2;
// 二氧化氮1小时平均值。单位:μg/m?
public double no2;
// 一氧化碳1小时平均值。单位:mg/m?
// 臭氧1小时平均值。单位:μg/m?
public double o3;
// 空气质量类别,有“优、良、轻度污染、中度污染、重度污染、严重污染”6类
// 监测站名称,当且仅当type==kTPAirQualityTypeStation时有效
// 数据发布时间
public Date lastUpdateD
}当发生错误时,错误信息由第二个参数errorInfo返回。生活指数包:com.thinkpage.lib.api类:TPWeatherManager方法:public void getLifeSuggestion(TPCity city, TPWeatherReportLanguage language, TPListeners.TPLifeSuggestionListener listener)说明:获取指定城市的基本、交通、生活、运动、健康5大类共27项生活指数。目前仅支持中国城市。参数:city要查询的地点,详见language返回数据的语言,详见listener监听器对象。该监听器仅有一个由调用者实现的方法onLifeSuggestionAvailable(TPLifeSuggestion lifeSuggestion, String errorInfo);
第一个参数lifeSuggestion包含了所请求的天气信息:public class TPLifeSuggestion {
// 单项生活指数对象
public static class TPLifeSuggestionItem {
// 简要建议
// 详细建议
// 空调建议
public TPLifeSuggestionItem airC
// 空气污染建议
public TPLifeSuggestionItem airP
public TPLifeSuggestionI
public TPLifeSuggestionI
public TPLifeSuggestionI
public TPLifeSuggestionI
public TPLifeSuggestionItem carW
public TPLifeSuggestionI
public TPLifeSuggestionI
public TPLifeSuggestionI
public TPLifeSuggestionI
public TPLifeSuggestionI
public TPLifeSuggestionI
public TPLifeSuggestionItem hairD
public TPLifeSuggestionI
public TPLifeSuggestionI
public TPLifeSuggestionI
public TPLifeSuggestionItem morningS
public TPLifeSuggestionItem nightL
public TPLifeSuggestionItem roadC
public TPLifeSuggestionI
public TPLifeSuggestionI
public TPLifeSuggestionI
public TPLifeSuggestionI
public TPLifeSuggestionI
public TPLifeSuggestionI
public TPLifeSuggestionI
// 数据发布时间
public Date lastUpdateD
}当发生错误时,错误信息由第二个参数errorInfo返回。农历、节气、生肖包:com.thinkpage.lib.api类:TPWeatherManager方法:public void getChineseCalendarDates(TPWeatherReportLanguage language, Date startDate, int days, TPListeners.TPChineseCalendarDateListener listener)说明:查询任何一个公历日期对应的农历日期、农历传统节假日、二十四节气、天干地支纪年纪月纪日、及生肖属相。参数:language返回数据的语言,详见startDate查询的起始日期days查询的天数listener监听器对象。该监听器仅有一个由调用者实现的方法onChineseCalendarDateAvailable(TPChineseCalendarDate[] chineseDates, String errorInfo);
第一个参数chineseDates是个数组,包含了所请求的农历节气信息:public class TPChineseCalendarDate {
// 生肖属相
// 干支纪年
public String ganzhiY
// 干支纪月
public String ganzhiM
// 干支纪日
public String ganzhiD
public String lunarY
public String lunarM
public String lunarD
// 农历月中文名
public String lunarMonthN
// 农历日中文名
public String lunarDayN
// 农历闰月所在月份,0表示无闰月
public String lunarLeapM
// 农历节假日,如:春节、端午、中秋等
public String lunarF
// 二十四节气名,如:冬至、小寒、大寒、立春等
public String solarT
}当发生错误时,错误信息由第二个参数errorInfo返回。机动车尾号限行包:com.thinkpage.lib.api类:TPWeatherManager方法:public void getDrivingRestriction(TPCity city, TPListeners.TPDrivingRestrictionListener listener)说明:查询北京、天津、哈尔滨、成都、杭州、贵阳、长春、兰州8个城市的今天、明天和后天的机动车尾号限行数据。参数:city要查询的地点,详见listener监听器对象。该监听器仅有一个由调用者实现的方法onDrivingRestrictionAvailable(TPDrivingRestriction drivingRestriction, String errorInfo);
第一个参数drivingRestriction包含了所请求的交通请求信息:public class TPDrivingRestriction {
// 尾号限行数据
public static class TPDrivingRestrictionItem {
// 被限行的尾号
public String[]
// 限行类型,其他城市可能是“日期尾号限行”、“单双号限行”等
// 处罚规定
// 限行区域
// 详细说明
// 单日尾号限行数据
public TPDrivingRestrictionItem[] restrictionI
}当发生错误时,错误信息由第二个参数errorInfo返回。日出日落包:com.thinkpage.lib.api类:TPWeatherManager方法:public void getSunInformation(TPCity city, TPWeatherReportLanguage language, Date startDate, int days, TPListeners.TPSunInformationListener listener)说明:查询全球城市每天日出日落时间。参数:city要查询的地点,详见language返回数据的语言,详见startDate查询的开始日期days
查询的天数listener监听器对象。该监听器仅有一个由调用者实现的方法onSunInformationAvailable(TPSunInformation[] sunInformationArray, String errorInfo);
第一个参数sunInformationArray是一个数组,包含了所请求的日出日落信息:public class TPSunInformation {
// 日出时间
public Date sunriseD
// 日落时间
public Date sunsetD
}当发生错误时,错误信息由第二个参数errorInfo返回。月升月落和月相包:com.thinkpage.lib.api类:TPWeatherManager方法:public void getMoonInformation(TPCity city, TPWeatherReportLanguage language, Date startDate, int days, TPListeners.TPSunInformationListener listener)说明:查询全球城市每天月出月落时间和月相。参数:city要查询的地点,详见language返回数据的语言,详见startDate查询的开始日期days
查询的天数listener监听器对象。该监听器仅有一个由调用者实现的方法onMoonInformationAvailable(TPMoonInformation[] moonInformationArray, String errorInfo);
第一个参数moonInformationArray是一个数组,包含了所请求的日出日落信息:public class TPMoonInformation {
// 月升时间
public Date moonriseD
// 月落时间
public Date moonsetD
// 月球被照明部分比例,范围0~1
// 月相,范围0~1
// 月相名称
public String phaseN
}当发生错误时,错误信息由第二个参数errorInfo返回。包:com.thinkpage.lib.api类:TPWeatherManager方法:public void getCityInformation(TPCity city, TPWeatherReportLanguage language, int limit, int offset, TPListeners.TPCityInformationListener listener)说明:根据城市ID、中文、英文、拼音、IP、经纬度搜索匹配的城市。参数:city要查询的地点,详见language返回数据的语言,详见limit当符合条件的搜索结果较多时可以分页返回,这个参数指定分页每页最多记录数offset分页初始位置跳过的记录数listener监听器对象。该监听器仅有一个由调用者实现的方法onCityInformationAvailable(TPCityInformation[] cityInformationArray, String errorInfo);
第一个参数cityInformationArray是一个数组,包含了所请求的城市信息:public class TPCityInformation {
// 城市名称
// 国家代码
public String countryC
// 隶属层级,从小到大, 例如“海淀,北京,中国”
// IANA标准时区名称(该名称不受夏令时影响)
// 相对于UTC时区的偏移量(采用夏令时的城市会因夏令时而变化)
public String timezoneO
}当发生错误时,错误信息由第二个参数errorInfo返回。TPCity说明:指定一个要查询的城市,通常用来作为函数的参数。构造方法:使用城市名创建一个TPCity对象:public static TPCity cityWithName(String name);使用城市ID创建一个TPCity对象:public static TPCity cityWithId(String cityId);使用地理坐标创建一个TPCity对象:public static TPCity cityWithLocation(Location location);使用IP地址创建一个TPCity对象:public static TPCity cityWithIPAddress(String ipAddress);创建一个自动识别地址的TPCity对象:public static TPCity cityWithAutoRecognization();TPWeatherReportLanguage说明:TPWeatherManager的内部枚举,指定返回的气象数据使用的语言,通常作为函数的参数。定义:public enum TPWeatherReportLanguage {
// 简体中文
kSimplifiedChinese,
// 繁体中文
kTraditionalChinese
};TPTemperatureUnit说明:TPWeatherManager的内部枚举,指定返回的气象数据使用的温度单位,通常作为函数的参数。定义:public enum TPTemperatureUnit {
// 温度:c(摄氏度), 风速: km/h(千米/小时), 能见度:km(千米), 气压:mb(百帕)
// 温度:f(华氏度), 风速: mph(英里/小时), 能见度:mi(英里), 气压:in(英寸)
kFahrenheit
};产品公司联系(C) 北京心知科技有限公司

我要回帖

更多关于 无法加载插件怎么处理 的文章

 

随机推荐