1、网上数据源网站很多,随便选一个点击进入聚合数据官网
2、点击API,然后选择【免费接口大全】,可以看到这里有许多我们Android项目用到的接口,比如天气预报、星座运势、新闻头条、历史上的今天、老黄历等等。
3、比如说,我们想申请一个API,就直接点击立即申请即可,每个接口次数都是有限制的,限量每天100次。
4、我们申请完了之后,点右上角的【个人中心】,然后【数据中心】——>【我的API】,可以看到我们的key值,这样就可以在代码中进行请求了。
1、天气预报,直接在URLUtils.java
中直接换掉天气预报的key值即可,其他不用变:
public class URLUtils {
public static final String KEY = "天气预报的key值";
public static String temp_url = "http://apis.juhe.cn/simpleWeather/query";
public static String index_url = "http://apis.juhe.cn/simpleWeather/life";
public static String getTemp_url(String city){
String url = temp_url+"?city="+city+"&key="+KEY;
return url;
}
public static String getIndex_url(String city){
String url = index_url+"?city="+city+"&key="+KEY;
return url;
}
}
2、中华字典,也是在URLUtils.java
中进行修改,这里有两个key,一个是字典的key,还有一个是成语的key:
public class URLUtils {
public static String pinyinurl = "http://v.juhe.cn/xhzd/querypy?key=";
public static String bushourul = "http://v.juhe.cn/xhzd/querybs?key=";
public static final String DICTKEY = "字典的key";
public static String wordurl = "http://v.juhe.cn/xhzd/query?key=";
public static final String CHENGYUKEY = "成语的key";
public static String chengyuurl = "http://v.juhe.cn/chengyu/query?key=";
public static String getChengyuurl(String word){
String url = chengyuurl+CHENGYUKEY+"&word="+word;
return url;
}
public static String getWordurl(String word){
String url = wordurl+DICTKEY+"&word="+word;
return url;
}
public static String getPinyinurl(String word,int page,int pagesize){
String url = pinyinurl+DICTKEY+"&word="+word+"&page="+page+"&pagesize="+pagesize;
return url;
}
public static String getBushouurl(String bs,int page,int pagesize){
String url = bushourul+DICTKEY+"&word="+bs+"&page="+page+"&pagesize="+pagesize;
return url;
}
}
3、新闻APP,同样道理,在NewsURL.java
中进行修改,替换成新闻头条的key即可:
public class NewsURL {
public static String key = "新闻头条的key";
public static String info_url = "http://v.juhe.cn/toutiao/index?key="+key+"&type=";
// 头条
public static String headline_url = info_url +"top";
// 社会
public static String society_url = info_url +"shehui";
// 国内
public static String home_url = info_url +"guonei";
// 国际
public static String internation_url = info_url+"guoji";
// 娱乐
public static String entertainment_url = info_url+"yule";
// 体育
public static String sport_url = info_url+"tiyu";
// 军事
public static String military_url = info_url+"junshi";
// 科技
public static String science_url = info_url+"keji";
// 财经
public static String finance_url = info_url+"caijing";
// 时尚
public static String fashion_url = info_url+"shishang";
}
4、星座配对,以此类推,在URLContent
中修改key,一个星座配对的接口,还有一个星座运势的接口:
public class URLContent {
// 星座配对接口
public static String getParnterURL(String men,String woman){
men = men.replace("座","");
woman = woman.replace("座","");
try {
men = URLEncoder.encode(men,"UTF-8");
woman = URLEncoder.encode(woman,"UTF-8");
} catch (Exception e) {
e.printStackTrace();
}
String url = "http://apis.juhe.cn/xzpd/query?men="+men+"&women="+woman+"&key=星座配对接口";
return url;
}
// 星座运势接口
public static String getLuckURL(String name){
try {
name = URLEncoder.encode(name,"UTF-8");
} catch (UnsupportedEncodingException e) {
e.printStackTrace();
}
String url = "http://web.juhe.cn:8080/constellation/getAll?consName="+name+"&type=year&key=星座运势接口";
return url;
}
}
5、历史上的今天,在ContentURL
中修改key值,注意历史上的今天api在两个方法中进行更换,还有一个老黄历api在中间的方法中进行更换。
public class ContentURL {
// 获取指定日期对应的历史上的今天的网址
public static String getTodayHistoryURL(String version,int month,int day){
String url = "http://api.juheapi.com/japi/toh?v="+version+"&month="+month+"&day="+day+"&key=历史上的今天";
return url;
}
// 获取指定日期的老黄历的网址
public static String getLaohuangliURL(String time){
String url = "http://v.juhe.cn/laohuangli/d?date="+time+"&key=老黄历";
return url;
}
// http://api.juheapi.com/japi/tohdet?key=6a877b186ccd134296d131183b74c9f4&v=1.0&id=18401114
// 根据指定事件id获取指定事件详情信息
public static String getHistoryDescURL(String version,String id){
String url = "http://api.juheapi.com/japi/tohdet?key=历史上的今天&v="+version+"&id="+id;
return url;
}
}
我是个不擅长做选择的人,或许应该跟随聪明人的脚步进行选择,走弯路的概率要比自己独自选择的小很多。