Android——天氣預報(酷歐天氣)(第一篇)
阿新 • • 發佈:2021-02-10
技術標籤:Android Studioandroidjavaandroid studio
本文引用於郭神的酷歐天氣
正文:
首先要用到的四個依賴包如下:
註解:
/*
*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’
第二步:在專案包下建立四個包
分別為:db,gson,service,util
然後在db包裡建立三個類Province,City,County實體類都繼承與LitePalSupport(原酷歐天氣繼承DataSupport,但DataSupport已經被棄用)
分別用於存放省,市,縣三級的資料
- Province裡面程式碼為:
public class Province extends LitePalSupport {
private int id;
private String provinceName;//省名稱
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"
第一部分到這裡