Android——天气预报(酷欧天气)(第一篇)

本文引用于郭神的酷欧天气
正文:
首先要用到的四个依赖包如下:
注解:
/*
*litepal用于处理数据库

  • okhttp3用于进行网络操作
    *gson用于解析GSON数据
    *glide用于加载和展示图片
    */
    implementation ‘org.litepal.guolindev:core:3.2.2’
    implementation(“com.squareup.okhttp3:okhttp:4.9.0”)
    implementation ‘com.google.code.gson:gson:2.8.6’
    implementation ‘com.github.bumptech.glide:glide:4.11.0’
    第二步:在项目包下建立四个包
    分别为:db,gson,service,util

    然后在db包里建立三个类Province,City,County实体类都继承与LitePalSupport(原酷欧天气继承DataSupport,但DataSupport已经被弃用)
    分别用于存放省,市,县三级的数据
  1. Province里面代码为:

    public class Province extends LitePalSupport {
    private int id;
    private String provinceName;//省名称
    private int provinceCode;//省代码
    public int getId() {
    return id;
    }
    public void setId(int id) {
    this.id = id;
    }
    public String getProvinceName() {
    return provinceName;
    }
    public void setProvinceName(String provinceName) {
    this.provinceName = provinceName;
    }
    public int getProvinceCode() {
    return provinceCode;
    }
    public void setProvinceCode(int provinceCode) {
    this.provinceCode = provinceCode;
    }
    }

    2.City里面的代码:

    public class City extends LitePalSupport {
    private int id;
    private String cityName;//城市名称
    private int cityCode;//城市代码
    private int provinceId;//省级ID,用于查询市级城市时,在省级后面加上省级ID,就会陈列出所有在此省内的城市
    public int getId() {
    return id;
    }
    public void setId(int id) {
    this.id = id;
    }
    public String getCityName() {
    return cityName;
    }
    public void setCityName(String cityName) {
    this.cityName = cityName;
    }
    public int getCityCode() {
    return cityCode;
    }
    public void setCityCode(int cityCode) {
    this.cityCode = cityCode;
    }
    public int getProvinceId() {
    return provinceId;
    }
    public void setProvinceId(int provinceId) {
    this.provinceId = provinceId;
    }
    }

    3.County里面的代码:

    public class County extends LitePalSupport {
    private int id;
    private String countyName;//县级名称
    private String weatherId;//天气ID
    private int cityId;//城市ID
    public int getId() {
    return id;
    }
    public void setId(int id) {
    this.id = id;
    }
    public String getCountyName() {
    return countyName;
    }
    public void setCountyName(String countyName) {
    this.countyName = countyName;
    }
    public String getWeatherId() {
    return weatherId;
    }
    public void setWeatherId(String weatherId) {
    this.weatherId = weatherId;
    }
    public int getCityId() {
    return cityId;
    }
    public void setCityId(int cityId) {
    this.cityId = cityId;
    }
    }


    然后在main目录下建立一个包名为assets, 在assets包下建立一个名为litepal.xml的文件
    在这里有两个重点:
    1:在main目录下建立assets包
    2:建立的文件名必须为litepal.xml,记住有后缀名
    不然会出现异常:litepal.xml file is missing. Please ensure it under assets folder.在这里插入图片描述
    其中litepal.xml内的代码为:
    数据库名称为:cool_weather
    版本为:1
    添加db包里面的三个实体类到映射列表中
<litepal>
    <dbname value="cool_weather" />
    <version value="1" />
    <list>
        <mapping class="com.example.weather2.db.Province"/>
        <mapping class="com.example.weather2.db.City"/>
        <mapping class="com.example.weather2.db.County"/>
    </list>
</litepal>
</font>

最后记得配置清单文件中的LitepalApplication

 android:name="org.litepal.LitePalApplication"

第一部分到这里

猜你喜欢

转载自blog.csdn.net/News53231323/article/details/113774577