diff --git a/MyApplication2/.idea/sonarlint/issuestore/index.pb b/MyApplication2/.idea/sonarlint/issuestore/index.pb
deleted file mode 100644
index fec208c..0000000
--- a/MyApplication2/.idea/sonarlint/issuestore/index.pb
+++ /dev/null
@@ -1,7 +0,0 @@
-
-\
-,.idea/inspectionProfiles/Project_Default.xml,4\9\496a238a6afa168dbaf6efd37bb459331589579c
-<
-build.gradle,f\0\f07866736216be0ee2aba49e392191aeae700a35
-v
-Fentry/src/ohosTest/java/com/example/myapplication/ExampleOhosTest.java,6\a\6a6b1c750d19dd7877d9984c3de755233f64900b
\ No newline at end of file
diff --git a/MyApplication2/EntryCard/entry/base/snapshot/widget-2x2.png b/MyApplication2/EntryCard/entry/base/snapshot/widget-2x2.png
deleted file mode 100644
index 9abe418..0000000
Binary files a/MyApplication2/EntryCard/entry/base/snapshot/widget-2x2.png and /dev/null differ
diff --git a/MyApplication2/entry/src/main/java/com/example/weather/data/DataMo.java b/MyApplication2/entry/src/main/java/com/example/weather/data/DataMo.java
deleted file mode 100644
index 11a1df2..0000000
--- a/MyApplication2/entry/src/main/java/com/example/weather/data/DataMo.java
+++ /dev/null
@@ -1,11 +0,0 @@
-package com.example.weather.data;
-
-import java.util.ArrayList;
-
-public class DataMo {
-    public ArrayList<CityMo> cityMos;
-
-    public DataMo(ArrayList<CityMo> cityMos){
-        this.cityMos = cityMos;
-    }
-}
diff --git a/MyApplication2/entry/src/main/java/com/example/weather/net/IHiNet.java b/MyApplication2/entry/src/main/java/com/example/weather/net/IHiNet.java
deleted file mode 100644
index 6fd6297..0000000
--- a/MyApplication2/entry/src/main/java/com/example/weather/net/IHiNet.java
+++ /dev/null
@@ -1,16 +0,0 @@
-package com.example.weather.net;
-
-import org.devio.hi.json.HiJson;
-
-import java.util.Map;
-
-import java.util.Map;
-
-public interface IHiNet {
-    void get(String url, Map<String, String> params, NetListener listener);
-
-    interface NetListener{
-        void onSuccess(HiJson res);
-        void onFail(String message);
-    }
-}
\ No newline at end of file
diff --git a/MyApplication2/entry/src/main/resources/base/graphic/background_ability_main.xml b/MyApplication2/entry/src/main/resources/base/graphic/background_ability_main.xml
deleted file mode 100644
index c0c0a3d..0000000
--- a/MyApplication2/entry/src/main/resources/base/graphic/background_ability_main.xml
+++ /dev/null
@@ -1,6 +0,0 @@
-<?xml version="1.0" encoding="UTF-8" ?>
-<shape xmlns:ohos="http://schemas.huawei.com/res/ohos"
-       ohos:shape="rectangle">
-    <solid
-        ohos:color="#FFFFFF"/>
-</shape>
\ No newline at end of file
diff --git a/MyApplication2/entry/src/main/resources/base/layout/item_title.xml b/MyApplication2/entry/src/main/resources/base/layout/item_title.xml
deleted file mode 100644
index 5ec7d92..0000000
--- a/MyApplication2/entry/src/main/resources/base/layout/item_title.xml
+++ /dev/null
@@ -1,10 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<Text xmlns:ohos="http://schemas.huawei.com/res/ohos"
-      ohos:id="$+id:city_item"
-      ohos:height="match_content"
-      ohos:width="match_content"
-      ohos:text_size="12vp"
-      ohos:text_color="#3fffff"
-      ohos:padding="6vp"
-      ohos:margin="2vp"
-      ohos:background_element="#70000000"/>
\ No newline at end of file
diff --git a/MyApplication2/.gitignore b/Weather/.gitignore
similarity index 100%
rename from MyApplication2/.gitignore
rename to Weather/.gitignore
diff --git a/MyApplication2/.idea/.gitignore b/Weather/.idea/.gitignore
similarity index 100%
rename from MyApplication2/.idea/.gitignore
rename to Weather/.idea/.gitignore
diff --git a/MyApplication2/.idea/compiler.xml b/Weather/.idea/compiler.xml
similarity index 100%
rename from MyApplication2/.idea/compiler.xml
rename to Weather/.idea/compiler.xml
diff --git a/MyApplication2/.idea/gradle.xml b/Weather/.idea/gradle.xml
similarity index 100%
rename from MyApplication2/.idea/gradle.xml
rename to Weather/.idea/gradle.xml
diff --git a/MyApplication2/.idea/inspectionProfiles/Project_Default.xml b/Weather/.idea/inspectionProfiles/Project_Default.xml
similarity index 100%
rename from MyApplication2/.idea/inspectionProfiles/Project_Default.xml
rename to Weather/.idea/inspectionProfiles/Project_Default.xml
diff --git a/Weather/.idea/intellij-javadocs-4.0.1.xml b/Weather/.idea/intellij-javadocs-4.0.1.xml
new file mode 100644
index 0000000..0e84319
--- /dev/null
+++ b/Weather/.idea/intellij-javadocs-4.0.1.xml
@@ -0,0 +1,204 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<project version="4">
+  <component name="JavaDocConfiguration">
+    <GENERAL>
+      <MODE>UPDATE</MODE>
+      <OVERRIDDEN_METHODS>false</OVERRIDDEN_METHODS>
+      <SPLITTED_CLASS_NAME>true</SPLITTED_CLASS_NAME>
+      <LEVELS>
+        <LEVEL>FIELD</LEVEL>
+        <LEVEL>TYPE</LEVEL>
+        <LEVEL>METHOD</LEVEL>
+      </LEVELS>
+      <VISIBILITIES>
+        <VISIBILITY>PUBLIC</VISIBILITY>
+        <VISIBILITY>PROTECTED</VISIBILITY>
+        <VISIBILITY>DEFAULT</VISIBILITY>
+      </VISIBILITIES>
+    </GENERAL>
+    <TEMPLATES>
+      <CLASSES>
+        <CLASS>
+          <KEY>^.*(public|protected|private)*.+interface\s+\w+.*</KEY>
+          <VALUE>/**\n
+ * The interface ${name}.\n
+&lt;#if element.typeParameters?has_content&gt;        * \n
+&lt;/#if&gt;
+&lt;#list element.typeParameters as typeParameter&gt;
+        * @param &lt;${typeParameter.name}&gt; the type parameter\n
+&lt;/#list&gt;
+ */</VALUE>
+        </CLASS>
+        <CLASS>
+          <KEY>^.*(public|protected|private)*.+enum\s+\w+.*</KEY>
+          <VALUE>/**\n
+ * The enum ${name}.\n
+ */</VALUE>
+        </CLASS>
+        <CLASS>
+          <KEY>^.*(public|protected|private)*.+class\s+\w+.*</KEY>
+          <VALUE>/**\n
+ * The type ${name}.\n
+&lt;#if element.typeParameters?has_content&gt;        * \n
+&lt;/#if&gt;
+&lt;#list element.typeParameters as typeParameter&gt;
+        * @param &lt;${typeParameter.name}&gt; the type parameter\n
+&lt;/#list&gt;
+ */</VALUE>
+        </CLASS>
+        <CLASS>
+          <KEY>.+</KEY>
+          <VALUE>/**\n
+ * The type ${name}.\n
+ */</VALUE>
+        </CLASS>
+      </CLASSES>
+      <CONSTRUCTORS>
+        <CONSTRUCTOR>
+          <KEY>.+</KEY>
+          <VALUE>/**\n
+ * Instantiates a new ${name}.\n
+&lt;#if element.parameterList.parameters?has_content&gt;
+         *\n
+&lt;/#if&gt;
+&lt;#list element.parameterList.parameters as parameter&gt;
+         * @param ${parameter.name} the ${paramNames[parameter.name]}\n
+&lt;/#list&gt;
+&lt;#if element.throwsList.referenceElements?has_content&gt;
+         *\n
+&lt;/#if&gt;
+&lt;#list element.throwsList.referenceElements as exception&gt;
+         * @throws ${exception.referenceName} the ${exceptionNames[exception.referenceName]}\n
+&lt;/#list&gt;
+ */</VALUE>
+        </CONSTRUCTOR>
+      </CONSTRUCTORS>
+      <METHODS>
+        <METHOD>
+          <KEY>^.*(public|protected|private)*\s*.*(\w(\s*&lt;.+&gt;)*)+\s+get\w+\s*\(.*\).+</KEY>
+          <VALUE>/**\n
+ * Gets ${partName}.\n
+&lt;#if element.typeParameters?has_content&gt;         * \n
+&lt;/#if&gt;
+&lt;#list element.typeParameters as typeParameter&gt;
+         * @param &lt;${typeParameter.name}&gt; the type parameter\n
+&lt;/#list&gt;
+&lt;#if element.parameterList.parameters?has_content&gt;
+         *\n
+&lt;/#if&gt;
+&lt;#list element.parameterList.parameters as parameter&gt;
+         * @param ${parameter.name} the ${paramNames[parameter.name]}\n
+&lt;/#list&gt;
+&lt;#if isNotVoid&gt;
+         *\n
+         * @return the ${partName}\n
+&lt;/#if&gt;
+&lt;#if element.throwsList.referenceElements?has_content&gt;
+         *\n
+&lt;/#if&gt;
+&lt;#list element.throwsList.referenceElements as exception&gt;
+         * @throws ${exception.referenceName} the ${exceptionNames[exception.referenceName]}\n
+&lt;/#list&gt;
+ */</VALUE>
+        </METHOD>
+        <METHOD>
+          <KEY>^.*(public|protected|private)*\s*.*(void|\w(\s*&lt;.+&gt;)*)+\s+set\w+\s*\(.*\).+</KEY>
+          <VALUE>/**\n
+ * Sets ${partName}.\n
+&lt;#if element.typeParameters?has_content&gt;         * \n
+&lt;/#if&gt;
+&lt;#list element.typeParameters as typeParameter&gt;
+         * @param &lt;${typeParameter.name}&gt; the type parameter\n
+&lt;/#list&gt;
+&lt;#if element.parameterList.parameters?has_content&gt;
+         *\n
+&lt;/#if&gt;
+&lt;#list element.parameterList.parameters as parameter&gt;
+         * @param ${parameter.name} the ${paramNames[parameter.name]}\n
+&lt;/#list&gt;
+&lt;#if isNotVoid&gt;
+         *\n
+         * @return the ${partName}\n
+&lt;/#if&gt;
+&lt;#if element.throwsList.referenceElements?has_content&gt;
+         *\n
+&lt;/#if&gt;
+&lt;#list element.throwsList.referenceElements as exception&gt;
+         * @throws ${exception.referenceName} the ${exceptionNames[exception.referenceName]}\n
+&lt;/#list&gt;
+ */</VALUE>
+        </METHOD>
+        <METHOD>
+          <KEY>^.*((public\s+static)|(static\s+public))\s+void\s+main\s*\(\s*String\s*(\[\s*\]|\.\.\.)\s+\w+\s*\).+</KEY>
+          <VALUE>/**\n
+ * The entry point of application.\n
+
+     &lt;#if element.parameterList.parameters?has_content&gt;
+         *\n
+&lt;/#if&gt;
+     * @param ${element.parameterList.parameters[0].name} the input arguments\n
+&lt;#if element.throwsList.referenceElements?has_content&gt;
+         *\n
+&lt;/#if&gt;
+&lt;#list element.throwsList.referenceElements as exception&gt;
+         * @throws ${exception.referenceName} the ${exceptionNames[exception.referenceName]}\n
+&lt;/#list&gt;
+ */</VALUE>
+        </METHOD>
+        <METHOD>
+          <KEY>.+</KEY>
+          <VALUE>/**\n
+ * ${name}&lt;#if isNotVoid&gt; ${return}&lt;/#if&gt;.\n
+&lt;#if element.typeParameters?has_content&gt;         * \n
+&lt;/#if&gt;
+&lt;#list element.typeParameters as typeParameter&gt;
+         * @param &lt;${typeParameter.name}&gt; the type parameter\n
+&lt;/#list&gt;
+&lt;#if element.parameterList.parameters?has_content&gt;
+         *\n
+&lt;/#if&gt;
+&lt;#list element.parameterList.parameters as parameter&gt;
+         * @param ${parameter.name} the ${paramNames[parameter.name]}\n
+&lt;/#list&gt;
+&lt;#if isNotVoid&gt;
+         *\n
+         * @return the ${return}\n
+&lt;/#if&gt;
+&lt;#if element.throwsList.referenceElements?has_content&gt;
+         *\n
+&lt;/#if&gt;
+&lt;#list element.throwsList.referenceElements as exception&gt;
+         * @throws ${exception.referenceName} the ${exceptionNames[exception.referenceName]}\n
+&lt;/#list&gt;
+ */</VALUE>
+        </METHOD>
+      </METHODS>
+      <FIELDS>
+        <FIELD>
+          <KEY>^.*(public|protected|private)*.+static.*(\w\s\w)+.+</KEY>
+          <VALUE>/**\n
+ * The constant ${element.getName()}.\n
+ */</VALUE>
+        </FIELD>
+        <FIELD>
+          <KEY>^.*(public|protected|private)*.*(\w\s\w)+.+</KEY>
+          <VALUE>/**\n
+    &lt;#if element.parent.isInterface()&gt;
+        * The constant ${element.getName()}.\n
+&lt;#else&gt;
+        * The ${name}.\n
+&lt;/#if&gt; */</VALUE>
+        </FIELD>
+        <FIELD>
+          <KEY>.+</KEY>
+          <VALUE>/**\n
+    &lt;#if element.parent.isEnum()&gt;
+        *${name} ${typeName}.\n
+&lt;#else&gt;
+        * The ${name}.\n
+&lt;/#if&gt;*/</VALUE>
+        </FIELD>
+      </FIELDS>
+    </TEMPLATES>
+  </component>
+</project>
\ No newline at end of file
diff --git a/MyApplication2/.idea/jarRepositories.xml b/Weather/.idea/jarRepositories.xml
similarity index 86%
rename from MyApplication2/.idea/jarRepositories.xml
rename to Weather/.idea/jarRepositories.xml
index 0b561bd..8b24213 100644
--- a/MyApplication2/.idea/jarRepositories.xml
+++ b/Weather/.idea/jarRepositories.xml
@@ -31,5 +31,10 @@
       <option name="name" value="BintrayJCenter" />
       <option name="url" value="https://jcenter.bintray.com/" />
     </remote-repository>
+    <remote-repository>
+      <option name="id" value="MavenRepo" />
+      <option name="name" value="MavenRepo" />
+      <option name="url" value="https://repo.maven.apache.org/maven2/" />
+    </remote-repository>
   </component>
 </project>
\ No newline at end of file
diff --git a/MyApplication2/.idea/misc.xml b/Weather/.idea/misc.xml
similarity index 58%
rename from MyApplication2/.idea/misc.xml
rename to Weather/.idea/misc.xml
index 794aa67..58918f5 100644
--- a/MyApplication2/.idea/misc.xml
+++ b/Weather/.idea/misc.xml
@@ -1,4 +1,4 @@
 <?xml version="1.0" encoding="UTF-8"?>
 <project version="4">
-  <component name="ProjectRootManager" version="2" languageLevel="JDK_1_8" default="false" project-jdk-name="1.8" project-jdk-type="JavaSDK" />
+  <component name="ProjectRootManager" version="2" languageLevel="JDK_1_8" default="true" project-jdk-name="1.8" project-jdk-type="JavaSDK" />
 </project>
\ No newline at end of file
diff --git a/Weather/.idea/sonarlint/issuestore/0/7/0774814162e422c76bce232de8fbe7aa73482fb1 b/Weather/.idea/sonarlint/issuestore/0/7/0774814162e422c76bce232de8fbe7aa73482fb1
new file mode 100644
index 0000000..e781881
--- /dev/null
+++ b/Weather/.idea/sonarlint/issuestore/0/7/0774814162e422c76bce232de8fbe7aa73482fb1
@@ -0,0 +1,6 @@
+
+j
+java:S1104
+"TMake cityName a static final constant or non-public and provide accessors if needed.(¹ÆŸŸ
+o
+java:S1104"TMake cityCode a static final constant or non-public and provide accessors if needed.(‘ê¨Íùÿÿÿÿ
\ No newline at end of file
diff --git a/Weather/.idea/sonarlint/issuestore/0/9/0967d9173abdcb01da65265c8e154e9a37034a67 b/Weather/.idea/sonarlint/issuestore/0/9/0967d9173abdcb01da65265c8e154e9a37034a67
new file mode 100644
index 0000000..d7c8a57
--- /dev/null
+++ b/Weather/.idea/sonarlint/issuestore/0/9/0967d9173abdcb01da65265c8e154e9a37034a67
@@ -0,0 +1,9 @@
+
+E
+java:S20933"*Change this "try" to a try-with-resources.(¡»¢üùÿÿÿÿ
+C
+java:S1604&"(Make this anonymous inner class a lambda(”Ì’�þÿÿÿÿ
+>
+java:S1604E"(Make this anonymous inner class a lambda(�³Å»
+]
+java:S22599"HA "NullPointerException" could be thrown; "connection" is nullable here.(”—üH
\ No newline at end of file
diff --git a/MyApplication2/.idea/sonarlint/issuestore/4/9/496a238a6afa168dbaf6efd37bb459331589579c b/Weather/.idea/sonarlint/issuestore/0/c/0c1945d7443c2e154bd3e421c0d438bd4086d8c3
similarity index 100%
rename from MyApplication2/.idea/sonarlint/issuestore/4/9/496a238a6afa168dbaf6efd37bb459331589579c
rename to Weather/.idea/sonarlint/issuestore/0/c/0c1945d7443c2e154bd3e421c0d438bd4086d8c3
diff --git a/MyApplication2/.idea/sonarlint/issuestore/6/a/6a6b1c750d19dd7877d9984c3de755233f64900b b/Weather/.idea/sonarlint/issuestore/1/0/10f965cf51fe14a5ef0ca2ebefb1bd7e4607eeb2
similarity index 100%
rename from MyApplication2/.idea/sonarlint/issuestore/6/a/6a6b1c750d19dd7877d9984c3de755233f64900b
rename to Weather/.idea/sonarlint/issuestore/1/0/10f965cf51fe14a5ef0ca2ebefb1bd7e4607eeb2
diff --git a/MyApplication2/.idea/sonarlint/issuestore/f/0/f07866736216be0ee2aba49e392191aeae700a35 b/Weather/.idea/sonarlint/issuestore/2/d/2de47c4a3a933c03f3a50b5cca0f22761d46d3d4
similarity index 100%
rename from MyApplication2/.idea/sonarlint/issuestore/f/0/f07866736216be0ee2aba49e392191aeae700a35
rename to Weather/.idea/sonarlint/issuestore/2/d/2de47c4a3a933c03f3a50b5cca0f22761d46d3d4
diff --git a/Weather/.idea/sonarlint/issuestore/4/2/42a85d72c6c5bb50c094790894e8cef757c01d01 b/Weather/.idea/sonarlint/issuestore/4/2/42a85d72c6c5bb50c094790894e8cef757c01d01
new file mode 100644
index 0000000..d9fa3fa
--- /dev/null
+++ b/Weather/.idea/sonarlint/issuestore/4/2/42a85d72c6c5bb50c094790894e8cef757c01d01
@@ -0,0 +1,6 @@
+
+P
+java:S1118
+":Add a private constructor to hide the implicit public one.(ã¶ÒÒ
+J
+java:S2864"4Iterate over the "entrySet" instead of the "keySet".(«ñá¬
\ No newline at end of file
diff --git a/Weather/.idea/sonarlint/issuestore/4/9/496a238a6afa168dbaf6efd37bb459331589579c b/Weather/.idea/sonarlint/issuestore/4/9/496a238a6afa168dbaf6efd37bb459331589579c
new file mode 100644
index 0000000..e69de29
diff --git a/Weather/.idea/sonarlint/issuestore/6/a/6a6b1c750d19dd7877d9984c3de755233f64900b b/Weather/.idea/sonarlint/issuestore/6/a/6a6b1c750d19dd7877d9984c3de755233f64900b
new file mode 100644
index 0000000..e69de29
diff --git a/Weather/.idea/sonarlint/issuestore/7/5/750f76477761fe96654f7734d0ff1b7bb1be5876 b/Weather/.idea/sonarlint/issuestore/7/5/750f76477761fe96654f7734d0ff1b7bb1be5876
new file mode 100644
index 0000000..3d6872d
--- /dev/null
+++ b/Weather/.idea/sonarlint/issuestore/7/5/750f76477761fe96654f7734d0ff1b7bb1be5876
@@ -0,0 +1,4 @@
+
+C
+java:S1185
+"(Remove this method to simply inherit it.(Þ×ÎŠÿÿÿÿÿ
\ No newline at end of file
diff --git a/Weather/.idea/sonarlint/issuestore/8/f/8f423886990ce6638a830fe4e6a70e23f267f22a b/Weather/.idea/sonarlint/issuestore/8/f/8f423886990ce6638a830fe4e6a70e23f267f22a
new file mode 100644
index 0000000..12b78c2
--- /dev/null
+++ b/Weather/.idea/sonarlint/issuestore/8/f/8f423886990ce6638a830fe4e6a70e23f267f22a
@@ -0,0 +1,3 @@
+
+P
+java:S1118	":Add a private constructor to hide the implicit public one.(�Àð†
\ No newline at end of file
diff --git a/Weather/.idea/sonarlint/issuestore/a/b/aba7d9f4dd5aeef95a00381e20cef7a825179e38 b/Weather/.idea/sonarlint/issuestore/a/b/aba7d9f4dd5aeef95a00381e20cef7a825179e38
new file mode 100644
index 0000000..ff98c7d
--- /dev/null
+++ b/Weather/.idea/sonarlint/issuestore/a/b/aba7d9f4dd5aeef95a00381e20cef7a825179e38
@@ -0,0 +1,17 @@
+
+q	java:S116"\Rename this field "temperature_1Text" to match the regular expression '^[a-z][a-zA-Z0-9]*$'.(å­ÿ•
+m	java:S116"XRename this field "weather_1Text" to match the regular expression '^[a-z][a-zA-Z0-9]*$'.(å­ÿ•
+j	java:S116"URename this field "tips_1Text" to match the regular expression '^[a-z][a-zA-Z0-9]*$'.(å­ÿ•
+s	java:S116 "YRename this field "weatherImage_1" to match the regular expression '^[a-z][a-zA-Z0-9]*$'.(£ŠÖúþÿÿÿÿ
+^
+java:S1659"HDeclare "weatherText" and all following declarations on a separate line.(å­ÿ•
+G
+java:S1659 ",Declare "weatherImage_1" on a separate line.(£ŠÖúþÿÿÿÿ
+V	java:S125`"<This block of commented-out lines of code should be removed.(Š×¯ûúÿÿÿÿ
+Q	java:S125g"<This block of commented-out lines of code should be removed.(øáå‚
+V	java:S125u"<This block of commented-out lines of code should be removed.(Š×¯ûúÿÿÿÿ
+Q	java:S125|"<This block of commented-out lines of code should be removed.(øáå‚
+F
+java:S1068"+Remove this unused "mLayout" private field.(¸·§Ïüÿÿÿÿ
+f
+java:S1192_"KDefine a constant instead of duplicating this literal "WeatherApp" 4 times.(êÈ‡Êûÿÿÿÿ
\ No newline at end of file
diff --git a/Weather/.idea/sonarlint/issuestore/a/d/ad38b2dea33752cac233aa09d7dfbe582e9dded6 b/Weather/.idea/sonarlint/issuestore/a/d/ad38b2dea33752cac233aa09d7dfbe582e9dded6
new file mode 100644
index 0000000..e69de29
diff --git a/Weather/.idea/sonarlint/issuestore/c/4/c4d7c06613adb8c5404d09c42a94f8ad8bcc9664 b/Weather/.idea/sonarlint/issuestore/c/4/c4d7c06613adb8c5404d09c42a94f8ad8bcc9664
new file mode 100644
index 0000000..e69de29
diff --git a/Weather/.idea/sonarlint/issuestore/d/5/d515ec7324135962f492b6cd82deaeda948f45d6 b/Weather/.idea/sonarlint/issuestore/d/5/d515ec7324135962f492b6cd82deaeda948f45d6
new file mode 100644
index 0000000..4c474bd
--- /dev/null
+++ b/Weather/.idea/sonarlint/issuestore/d/5/d515ec7324135962f492b6cd82deaeda948f45d6
@@ -0,0 +1,9 @@
+
+Q
+java:S1874";Remove this use of "RecycleItemProvider"; it is deprecated.(ø‹�¿
+c	java:S100a"NRename this method name to match the regular expression '^[a-z][a-zA-Z0-9]*$'.(ÞÄ‰š
+‚
+java:S1319!"gThe type of "cityMos" should be an interface such as "List" rather than the implementation "ArrayList".(­É¯íûÿÿÿÿ
+k	java:S117C"QRename this local variable to match the regular expression '^[a-z][a-zA-Z0-9]*$'.(·ô€ðÿÿÿÿÿ
+C
+java:S1604M"(Make this anonymous inner class a lambda(ëÏ“éÿÿÿÿÿ
\ No newline at end of file
diff --git a/Weather/.idea/sonarlint/issuestore/d/b/dbba308765e22bdac0f7ce0d766cd240fae5658f b/Weather/.idea/sonarlint/issuestore/d/b/dbba308765e22bdac0f7ce0d766cd240fae5658f
new file mode 100644
index 0000000..39e3bc2
--- /dev/null
+++ b/Weather/.idea/sonarlint/issuestore/d/b/dbba308765e22bdac0f7ce0d766cd240fae5658f
@@ -0,0 +1,7 @@
+
+‚
+java:S1319"gThe type of "cityMos" should be an interface such as "List" rather than the implementation "ArrayList".(É£Ýóøÿÿÿÿ
+‚
+java:S1319"gThe type of "cityMos" should be an interface such as "List" rather than the implementation "ArrayList".(ÀÎ°Êýÿÿÿÿ
+n
+java:S1104"SMake cityMos a static final constant or non-public and provide accessors if needed.(É£Ýóøÿÿÿÿ
\ No newline at end of file
diff --git a/Weather/.idea/sonarlint/issuestore/f/0/f07866736216be0ee2aba49e392191aeae700a35 b/Weather/.idea/sonarlint/issuestore/f/0/f07866736216be0ee2aba49e392191aeae700a35
new file mode 100644
index 0000000..e69de29
diff --git a/Weather/.idea/sonarlint/issuestore/index.pb b/Weather/.idea/sonarlint/issuestore/index.pb
new file mode 100644
index 0000000..e74fae0
--- /dev/null
+++ b/Weather/.idea/sonarlint/issuestore/index.pb
@@ -0,0 +1,33 @@
+
+\
+,.idea/inspectionProfiles/Project_Default.xml,4\9\496a238a6afa168dbaf6efd37bb459331589579c
+<
+build.gradle,f\0\f07866736216be0ee2aba49e392191aeae700a35
+v
+Fentry/src/ohosTest/java/com/example/myapplication/ExampleOhosTest.java,6\a\6a6b1c750d19dd7877d9984c3de755233f64900b
+j
+:entry/src/main/java/com/example/weather/MyApplication.java,7\5\750f76477761fe96654f7734d0ff1b7bb1be5876
+f
+6entry/src/main/java/com/example/weather/net/HiNet.java,0\9\0967d9173abdcb01da65265c8e154e9a37034a67
+j
+:entry/src/main/java/com/example/weather/net/HiNetUtil.java,4\2\42a85d72c6c5bb50c094790894e8cef757c01d01
+g
+7entry/src/main/java/com/example/weather/net/IHiNet.java,2\d\2de47c4a3a933c03f3a50b5cca0f22761d46d3d4
+h
+8entry/src/main/java/com/example/weather/data/CityMo.java,0\7\0774814162e422c76bce232de8fbe7aa73482fb1
+h
+8entry/src/main/java/com/example/weather/data/DataMo.java,d\b\dbba308765e22bdac0f7ce0d766cd240fae5658f
+r
+Bentry/src/main/java/com/example/weather/data/ListItemProvider.java,d\5\d515ec7324135962f492b6cd82deaeda948f45d6
+9
+	Readme.md,0\c\0c1945d7443c2e154bd3e421c0d438bd4086d8c3
+B
+entry/build.gradle,a\d\ad38b2dea33752cac233aa09d7dfbe582e9dded6
+l
+<entry/src/main/java/com/example/weather/util/HiExecutor.java,8\f\8f423886990ce6638a830fe4e6a70e23f267f22a
+h
+8entry/src/main/java/com/example/weather/MainAbility.java,c\4\c4d7c06613adb8c5404d09c42a94f8ad8bcc9664
+s
+Centry/src/main/java/com/example/weather/slice/MainAbilitySlice.java,a\b\aba7d9f4dd5aeef95a00381e20cef7a825179e38
+J
+entry/src/main/config.json,1\0\10f965cf51fe14a5ef0ca2ebefb1bd7e4607eeb2
\ No newline at end of file
diff --git a/MyApplication2/.idea/vcs.xml b/Weather/.idea/vcs.xml
similarity index 100%
rename from MyApplication2/.idea/vcs.xml
rename to Weather/.idea/vcs.xml
diff --git a/Weather/Readme.md b/Weather/Readme.md
new file mode 100644
index 0000000..b94e46f
--- /dev/null
+++ b/Weather/Readme.md
@@ -0,0 +1,5 @@
+# å¤©æ°”åº”ç”¨
+
+è¿™æ˜¯ä¸€ä¸ªç®€å�•çš„é¸¿è’™å¤©æ°”åº”ç”¨ï¼Œæ”¯æŒ�é¸¿è’™æ‰‹æœºä»¥å�Šé¸¿è’™æ‰‹è¡¨ï¼› é‡‡ç”¨org.devio.hi.json:hijsonæ�¥è§£æž�ç½‘ç»œè¯·æ±‚æ•°æ�®ï¼Œ ä½¿ç”¨æ—¶è¯·è‡ªè¡Œæ›¿æ�¢å’Œé£Žå¤©æ°”çš„APIå¯†é’¥ï¼Œå·²é€‚é…�SDK6.0
+
+2022.03.04æ›´æ–°
\ No newline at end of file
diff --git a/MyApplication2/build.gradle b/Weather/build.gradle
similarity index 93%
rename from MyApplication2/build.gradle
rename to Weather/build.gradle
index c94f108..c3312d9 100644
--- a/MyApplication2/build.gradle
+++ b/Weather/build.gradle
@@ -27,8 +27,8 @@ buildscript {
         }
     }
     dependencies {
-        classpath 'com.huawei.ohos:hap:3.0.3.4'
-        classpath 'com.huawei.ohos:decctest:1.2.6.0'
+        classpath 'com.huawei.ohos:hap:3.0.5.2'
+        classpath 'com.huawei.ohos:decctest:1.2.7.2'
     }
 }
 
diff --git a/MyApplication2/entry/.gitignore b/Weather/entry/.gitignore
similarity index 100%
rename from MyApplication2/entry/.gitignore
rename to Weather/entry/.gitignore
diff --git a/MyApplication2/entry/build.gradle b/Weather/entry/build.gradle
similarity index 89%
rename from MyApplication2/entry/build.gradle
rename to Weather/entry/build.gradle
index 26e1d65..46fea5f 100644
--- a/MyApplication2/entry/build.gradle
+++ b/Weather/entry/build.gradle
@@ -6,7 +6,6 @@ ohos {
     defaultConfig {
         compatibleSdkVersion 6
     }
-    showInServiceCenter true
     buildTypes {
         release {
             proguardOpt {
@@ -24,7 +23,7 @@ dependencies {
     ohosTestImplementation 'com.huawei.ohos.testkit:runner:1.0.0.200'
 }
 decc {
-    supportType = ['html','xml']
+    supportType = ['html', 'xml']
 }
 buildscript {
     repositories {
@@ -34,11 +33,11 @@ buildscript {
         maven {
             url 'https://developer.huawei.com/repo/'
         }
-        jcenter()
+        mavenCentral()
     }
     dependencies {
         classpath 'com.huawei.ohos:hap:3.0.3.2'
-        classpath 'com.huawei.ohos:decctest:1.2.6.0'
+        classpath 'com.huawei.ohos:decctest:1.2.7.2'
     }
 }
 
@@ -50,6 +49,6 @@ allprojects {
         maven {
             url 'https://developer.huawei.com/repo/'
         }
-        jcenter()
+        mavenCentral()
     }
 }
diff --git a/MyApplication2/entry/proguard-rules.pro b/Weather/entry/proguard-rules.pro
similarity index 100%
rename from MyApplication2/entry/proguard-rules.pro
rename to Weather/entry/proguard-rules.pro
diff --git a/MyApplication2/entry/src/main/config.json b/Weather/entry/src/main/config.json
similarity index 71%
rename from MyApplication2/entry/src/main/config.json
rename to Weather/entry/src/main/config.json
index b173446..3045f37 100644
--- a/MyApplication2/entry/src/main/config.json
+++ b/Weather/entry/src/main/config.json
@@ -1,7 +1,7 @@
 {
   "app": {
     "bundleName": "com.example.test.weather",
-    "vendor": "example",
+    "vendor": "xcl",
     "version": {
       "code": 1000000,
       "name": "1.0.0"
@@ -14,8 +14,7 @@
     "mainAbility": "com.example.weather.MainAbility",
     "deviceType": [
       "phone",
-      "tablet",
-      "wearable"
+      "tablet"
     ],
     "reqPermissions": [
       {
@@ -54,22 +53,6 @@
         "formsEnabled": true,
         "label": "$string:entry_MainAbility",
         "type": "page",
-        "forms": [
-          {
-            "isDefault": true,
-            "scheduledUpdateTime": "10:30",
-            "defaultDimension": "2*2",
-            "name": "widget",
-            "description": "This is a service widget",
-            "colorMode": "auto",
-            "type": "JS",
-            "supportDimensions": [
-              "2*2"
-            ],
-            "updateEnabled": true,
-            "updateDuration": 1
-          }
-        ],
         "launchType": "standard"
       }
     ]
diff --git a/MyApplication2/entry/src/main/java/com/example/weather/MainAbility.java b/Weather/entry/src/main/java/com/example/weather/MainAbility.java
similarity index 91%
rename from MyApplication2/entry/src/main/java/com/example/weather/MainAbility.java
rename to Weather/entry/src/main/java/com/example/weather/MainAbility.java
index c96a80c..02a4508 100644
--- a/MyApplication2/entry/src/main/java/com/example/weather/MainAbility.java
+++ b/Weather/entry/src/main/java/com/example/weather/MainAbility.java
@@ -4,6 +4,9 @@ import com.example.weather.slice.MainAbilitySlice;
 import ohos.aafwk.ability.Ability;
 import ohos.aafwk.content.Intent;
 
+/**
+ * The type Main ability.
+ */
 public class MainAbility extends Ability {
     @Override
     public void onStart(Intent intent) {
diff --git a/MyApplication2/entry/src/main/java/com/example/weather/MyApplication.java b/Weather/entry/src/main/java/com/example/weather/MyApplication.java
similarity index 85%
rename from MyApplication2/entry/src/main/java/com/example/weather/MyApplication.java
rename to Weather/entry/src/main/java/com/example/weather/MyApplication.java
index e629292..7ab7659 100644
--- a/MyApplication2/entry/src/main/java/com/example/weather/MyApplication.java
+++ b/Weather/entry/src/main/java/com/example/weather/MyApplication.java
@@ -2,6 +2,9 @@ package com.example.weather;
 
 import ohos.aafwk.ability.AbilityPackage;
 
+/**
+ * The type My application.
+ */
 public class MyApplication extends AbilityPackage {
     @Override
     public void onInitialize() {
diff --git a/MyApplication2/entry/src/main/java/com/example/weather/data/CityMo.java b/Weather/entry/src/main/java/com/example/weather/data/CityMo.java
similarity index 50%
rename from MyApplication2/entry/src/main/java/com/example/weather/data/CityMo.java
rename to Weather/entry/src/main/java/com/example/weather/data/CityMo.java
index 2177399..dd05bcb 100644
--- a/MyApplication2/entry/src/main/java/com/example/weather/data/CityMo.java
+++ b/Weather/entry/src/main/java/com/example/weather/data/CityMo.java
@@ -1,9 +1,24 @@
 package com.example.weather.data;
 
+/**
+ * The type City mo.
+ */
 public class CityMo {
+    /**
+     * The City name.
+     */
     public String cityName;
+    /**
+     * The City code.
+     */
     public String cityCode;
 
+    /**
+     * Instantiates a new City mo.
+     *
+     * @param cityName the city name
+     * @param cityCode the city code
+     */
     public CityMo(String cityName, String cityCode) {
         this.cityName = cityName;
         this.cityCode = cityCode;
diff --git a/Weather/entry/src/main/java/com/example/weather/data/DataMo.java b/Weather/entry/src/main/java/com/example/weather/data/DataMo.java
new file mode 100644
index 0000000..9eb276c
--- /dev/null
+++ b/Weather/entry/src/main/java/com/example/weather/data/DataMo.java
@@ -0,0 +1,22 @@
+package com.example.weather.data;
+
+import java.util.ArrayList;
+
+/**
+ * The type Data mo.
+ */
+public class DataMo {
+    /**
+     * The City mos.
+     */
+    public ArrayList<CityMo> cityMos;
+
+    /**
+     * Instantiates a new Data mo.
+     *
+     * @param cityMos the city mos
+     */
+    public DataMo(ArrayList<CityMo> cityMos) {
+        this.cityMos = cityMos;
+    }
+}
diff --git a/MyApplication2/entry/src/main/java/com/example/weather/data/ListItemProvider.java b/Weather/entry/src/main/java/com/example/weather/data/ListItemProvider.java
similarity index 70%
rename from MyApplication2/entry/src/main/java/com/example/weather/data/ListItemProvider.java
rename to Weather/entry/src/main/java/com/example/weather/data/ListItemProvider.java
index ce05295..30afd60 100644
--- a/MyApplication2/entry/src/main/java/com/example/weather/data/ListItemProvider.java
+++ b/Weather/entry/src/main/java/com/example/weather/data/ListItemProvider.java
@@ -1,27 +1,41 @@
 package com.example.weather.data;
 
+import com.example.weather.ResourceTable;
 import ohos.aafwk.ability.AbilitySlice;
 import ohos.agp.components.*;
-import com.example.weather.ResourceTable;
 
 import java.util.ArrayList;
 
+/**
+ * The type List item provider.
+ */
 public class ListItemProvider extends RecycleItemProvider {
     private AbilitySlice mSlice;
     private OnItemClickListener listener;
     private ArrayList<DataMo> dataMos = new ArrayList<>();
 
-    public ListItemProvider(AbilitySlice abilitySlice, OnItemClickListener listener){
+    /**
+     * Instantiates a new List item provider.
+     *
+     * @param abilitySlice the ability slice
+     * @param listener     the listener
+     */
+    public ListItemProvider(AbilitySlice abilitySlice, OnItemClickListener listener) {
         this.mSlice = abilitySlice;
         this.listener = listener;
     }
 
-    public void setData(ArrayList<CityMo> cityMos){
+    /**
+     * Set data.
+     *
+     * @param cityMos the city mos
+     */
+    public void setData(ArrayList<CityMo> cityMos) {
         this.dataMos.clear();
         int i = 0;
         ArrayList<CityMo> tempList = new ArrayList<>();
-        for (CityMo mo:cityMos){
-            if (i == 3){
+        for (CityMo mo : cityMos) {
+            if (i == 3) {
                 i = 0;
                 dataMos.add(new DataMo(tempList));
                 tempList = new ArrayList<>();
@@ -32,6 +46,7 @@ public class ListItemProvider extends RecycleItemProvider {
         dataMos.add(new DataMo(tempList));
         this.notifyDataChanged();
     }
+
     @Override
     public int getCount() {
         return dataMos.size();
@@ -50,12 +65,12 @@ public class ListItemProvider extends RecycleItemProvider {
     @Override
     public Component getComponent(int i, Component component, ComponentContainer componentContainer) {
         Component component_item = LayoutScatter.getInstance(mSlice).parse(ResourceTable.Layout_list_item, null, false);
-        if ( !(component_item instanceof ComponentContainer)){
+        if (!(component_item instanceof ComponentContainer)) {
             return null;
         }
-        ComponentContainer rootLayout = (ComponentContainer)component_item;
+        ComponentContainer rootLayout = (ComponentContainer) component_item;
         DataMo dataMo = dataMos.get(i);
-        for (CityMo mo:dataMo.cityMos){
+        for (CityMo mo : dataMo.cityMos) {
             Text titleItem = (Text) LayoutScatter.getInstance(mSlice).parse(ResourceTable.Layout_item_title, null, false);
             titleItem.setText(mo.cityName);
             rootLayout.addComponent(titleItem);
@@ -69,7 +84,16 @@ public class ListItemProvider extends RecycleItemProvider {
         return component_item;
     }
 
-    public interface OnItemClickListener{
+    /**
+     * The interface On item click listener.
+     */
+    public interface OnItemClickListener {
+        /**
+         * On item click.
+         *
+         * @param cityMo   the city mo
+         * @param position the position
+         */
         void OnItemClick(CityMo cityMo, int position);
     }
 }
diff --git a/MyApplication2/entry/src/main/java/com/example/weather/net/HiNet.java b/Weather/entry/src/main/java/com/example/weather/net/HiNet.java
similarity index 83%
rename from MyApplication2/entry/src/main/java/com/example/weather/net/HiNet.java
rename to Weather/entry/src/main/java/com/example/weather/net/HiNet.java
index d61c608..95a36ab 100644
--- a/MyApplication2/entry/src/main/java/com/example/weather/net/HiNet.java
+++ b/Weather/entry/src/main/java/com/example/weather/net/HiNet.java
@@ -1,5 +1,6 @@
 package com.example.weather.net;
 
+import com.example.weather.util.HiExecutor;
 import ohos.hiviewdfx.HiLog;
 import ohos.hiviewdfx.HiLogLabel;
 import ohos.net.NetHandle;
@@ -7,7 +8,6 @@ import ohos.net.NetManager;
 import org.devio.hi.json.HiJson;
 import org.devio.hi.json.JSONException;
 import org.devio.hi.json.JSONObject;
-import com.example.weather.util.HiExecutor;
 
 import java.io.ByteArrayOutputStream;
 import java.io.InputStream;
@@ -17,11 +17,17 @@ import java.net.URL;
 import java.net.URLConnection;
 import java.util.Map;
 
-public class HiNet implements IHiNet{
+/**
+ * The type Hi net.
+ */
+public class HiNet implements IHiNet {
     private NetManager netManager;
-    private HiLogLabel logLabel = new HiLogLabel(0,0, HiNet.class.getSimpleName());
+    private HiLogLabel logLabel = new HiLogLabel(0, 0, HiNet.class.getSimpleName());
 
-    public HiNet(){
+    /**
+     * Instantiates a new Hi net.
+     */
+    public HiNet() {
         netManager = NetManager.getInstance(null);
     }
 
@@ -45,25 +51,25 @@ public class HiNet implements IHiNet{
         try {
             URL url = new URL(finalUrl);
             URLConnection urlConnection = netHandle.openConnection(url, Proxy.NO_PROXY);
-            if (urlConnection instanceof  HttpURLConnection){
-                connection = (HttpURLConnection)urlConnection;
+            if (urlConnection instanceof HttpURLConnection) {
+                connection = (HttpURLConnection) urlConnection;
             }
             connection.setRequestMethod("GET");
             connection.connect();
             HiLog.debug(logLabel, "connect...");
-            if (connection.getResponseCode() == 200){
+            if (connection.getResponseCode() == 200) {
                 inputStream = connection.getInputStream();
                 baos = new ByteArrayOutputStream();
                 int readLen;
                 byte[] bytes = new byte[1024];
-                while((readLen = inputStream.read(bytes)) != -1){
+                while ((readLen = inputStream.read(bytes)) != -1) {
                     baos.write(bytes, 0, readLen);
                 }
                 String result = baos.toString();
                 HiExecutor.runUI(new Runnable() {
                     @Override
                     public void run() {
-                        try{
+                        try {
                             HiJson res = new HiJson(new JSONObject(result));
                             listener.onSuccess(res);
                             HiLog.debug(logLabel, "success.");
@@ -77,11 +83,11 @@ public class HiNet implements IHiNet{
                 HiLog.debug(logLabel, "Request fail, code:" + connection.getResponseCode());
                 listener.onFail("Request fail, code:" + connection.getResponseCode());
             }
-        } catch (Exception e){
+        } catch (Exception e) {
             HiLog.debug(logLabel, "Request fail, msg:" + e.toString());
             listener.onFail("Request fail, msg:" + e.toString());
         } finally {
-            if (connection != null){
+            if (connection != null) {
                 connection.disconnect();
             }
             HiNetUtil.close(inputStream);
diff --git a/MyApplication2/entry/src/main/java/com/example/weather/net/HiNetUtil.java b/Weather/entry/src/main/java/com/example/weather/net/HiNetUtil.java
similarity index 60%
rename from MyApplication2/entry/src/main/java/com/example/weather/net/HiNetUtil.java
rename to Weather/entry/src/main/java/com/example/weather/net/HiNetUtil.java
index 5b14e46..93e2f71 100644
--- a/MyApplication2/entry/src/main/java/com/example/weather/net/HiNetUtil.java
+++ b/Weather/entry/src/main/java/com/example/weather/net/HiNetUtil.java
@@ -4,16 +4,26 @@ import java.io.Closeable;
 import java.io.IOException;
 import java.util.Map;
 
+/**
+ * The type Hi net util.
+ */
 public class HiNetUtil {
 
-    public  static String buildParams(String url, Map<String, String> params){
+    /**
+     * Build params string.
+     *
+     * @param url    the url
+     * @param params the params
+     * @return the string
+     */
+    public static String buildParams(String url, Map<String, String> params) {
         if (params == null) return null;
         StringBuilder builder = new StringBuilder(url);
         boolean isFirst = true;
-        for (String key : params.keySet()){
+        for (String key : params.keySet()) {
             String value = params.get(key);
-            if (key != null && value != null){
-                if (isFirst){
+            if (key != null && value != null) {
+                if (isFirst) {
                     isFirst = false;
                     builder.append("?");
                 } else {
@@ -27,8 +37,13 @@ public class HiNetUtil {
         return builder.toString();
     }
 
-    public  static void close(Closeable closeable){
-        if (closeable != null){
+    /**
+     * Close.
+     *
+     * @param closeable the closeable
+     */
+    public static void close(Closeable closeable) {
+        if (closeable != null) {
             try {
                 closeable.close();
             } catch (IOException e) {
diff --git a/Weather/entry/src/main/java/com/example/weather/net/IHiNet.java b/Weather/entry/src/main/java/com/example/weather/net/IHiNet.java
new file mode 100644
index 0000000..f89284b
--- /dev/null
+++ b/Weather/entry/src/main/java/com/example/weather/net/IHiNet.java
@@ -0,0 +1,38 @@
+package com.example.weather.net;
+
+import org.devio.hi.json.HiJson;
+
+import java.util.Map;
+
+/**
+ * The interface Hi net.
+ */
+public interface IHiNet {
+    /**
+     * Get.
+     *
+     * @param url      the url
+     * @param params   the params
+     * @param listener the listener
+     */
+    void get(String url, Map<String, String> params, NetListener listener);
+
+    /**
+     * The interface Net listener.
+     */
+    interface NetListener {
+        /**
+         * On success.
+         *
+         * @param res the res
+         */
+        void onSuccess(HiJson res);
+
+        /**
+         * On fail.
+         *
+         * @param message the message
+         */
+        void onFail(String message);
+    }
+}
\ No newline at end of file
diff --git a/MyApplication2/entry/src/main/java/com/example/weather/slice/MainAbilitySlice.java b/Weather/entry/src/main/java/com/example/weather/slice/MainAbilitySlice.java
similarity index 62%
rename from MyApplication2/entry/src/main/java/com/example/weather/slice/MainAbilitySlice.java
rename to Weather/entry/src/main/java/com/example/weather/slice/MainAbilitySlice.java
index 2116cdf..ae08dc5 100644
--- a/MyApplication2/entry/src/main/java/com/example/weather/slice/MainAbilitySlice.java
+++ b/Weather/entry/src/main/java/com/example/weather/slice/MainAbilitySlice.java
@@ -1,32 +1,35 @@
 package com.example.weather.slice;
 
+import com.example.weather.ResourceTable;
+import com.example.weather.data.CityMo;
+import com.example.weather.data.ListItemProvider;
+import com.example.weather.net.HiNet;
+import com.example.weather.net.IHiNet;
+import ohos.aafwk.ability.AbilitySlice;
+import ohos.aafwk.content.Intent;
 import ohos.agp.components.DirectionalLayout;
-        import ohos.agp.components.Image;
-        import ohos.agp.components.ListContainer;
-        import ohos.agp.components.Text;
-        import ohos.hiviewdfx.HiLog;
-        import ohos.hiviewdfx.HiLogLabel;
-        import org.devio.hi.json.HiJson;
-        import com.example.weather.ResourceTable;
-        import ohos.aafwk.ability.AbilitySlice;
-        import ohos.aafwk.content.Intent;
-        import com.example.weather.data.CityMo;
-        import com.example.weather.data.ListItemProvider;
-        import com.example.weather.net.HiNet;
-        import com.example.weather.net.IHiNet;
+import ohos.agp.components.Image;
+import ohos.agp.components.ListContainer;
+import ohos.agp.components.Text;
+import ohos.hiviewdfx.HiLog;
+import ohos.hiviewdfx.HiLogLabel;
+import org.devio.hi.json.HiJson;
 
 import java.util.ArrayList;
 import java.util.HashMap;
 import java.util.Map;
 
-public class MainAbilitySlice extends AbilitySlice implements ListItemProvider.OnItemClickListener{
+/**
+ * The type Main ability slice.
+ */
+public class MainAbilitySlice extends AbilitySlice implements ListItemProvider.OnItemClickListener {
     private DirectionalLayout mLayout = new DirectionalLayout(this);
     private ListContainer listContainer;
     private ListItemProvider listItemProvider;
     private ArrayList<CityMo> cities = new ArrayList<>();
     private HiNet hiNet;
-    private Text temperatureText,weatherText,tipsText,temperature_1Text,weather_1Text,tips_1Text;
-    private Image weatherImage,weatherImage_1;
+    private Text temperatureText, weatherText, tipsText, temperature_1Text, weather_1Text, tips_1Text;
+    private Image weatherImage, weatherImage_1;
 
     @Override
     public void onStart(Intent intent) {
@@ -41,12 +44,12 @@ public class MainAbilitySlice extends AbilitySlice implements ListItemProvider.O
     }
 
     private void initLayout1() {
-        listContainer = (ListContainer)findComponentById(ResourceTable.Id_list);
+        listContainer = (ListContainer) findComponentById(ResourceTable.Id_list);
         listItemProvider = new ListItemProvider(this, this);
         listContainer.setItemProvider(listItemProvider);
-        temperatureText = (Text)findComponentById(ResourceTable.Id_temperature_1);
-        weatherText = (Text)findComponentById(ResourceTable.Id_weather_1);
-        tipsText = (Text)findComponentById(ResourceTable.Id_tips_1);
+        temperatureText = (Text) findComponentById(ResourceTable.Id_temperature_1);
+        weatherText = (Text) findComponentById(ResourceTable.Id_weather_1);
+        tipsText = (Text) findComponentById(ResourceTable.Id_tips_1);
         weatherImage = (Image) findComponentById(ResourceTable.Id_weather_icon_1);
     }
 
@@ -55,13 +58,13 @@ public class MainAbilitySlice extends AbilitySlice implements ListItemProvider.O
     }
 
 
-    private void initLayout(){
-        listContainer = (ListContainer)findComponentById(ResourceTable.Id_list);
+    private void initLayout() {
+        listContainer = (ListContainer) findComponentById(ResourceTable.Id_list);
         listItemProvider = new ListItemProvider(this, this);
         listContainer.setItemProvider(listItemProvider);
-        temperature_1Text = (Text)findComponentById(ResourceTable.Id_temperature);
-        weather_1Text = (Text)findComponentById(ResourceTable.Id_weather);
-        tips_1Text = (Text)findComponentById(ResourceTable.Id_tips);
+        temperature_1Text = (Text) findComponentById(ResourceTable.Id_temperature);
+        weather_1Text = (Text) findComponentById(ResourceTable.Id_weather);
+        tips_1Text = (Text) findComponentById(ResourceTable.Id_tips);
         weatherImage_1 = (Image) findComponentById(ResourceTable.Id_weather_icon);
     }
 
@@ -80,40 +83,44 @@ public class MainAbilitySlice extends AbilitySlice implements ListItemProvider.O
 
         loadData(cityMo);
     }
-    private void loadData(CityMo mo){
+
+    private void loadData(CityMo mo) {
         //https://devapi.qweather.com/v7/weather/now?location=114.03,22.32&key=<ç”¨æˆ·key:18418bf60e874597abf85b7906d03e48>
         Map<String, String> params = new HashMap<>();
         params.put("location", mo.cityCode);
-        params.put("key", "18418bf60e874597abf85b7906d03e48");
+        params.put("key", "ä½ çš„å’Œé£Žå¤©æ°”APIå¯†é’¥");
         hiNet.get("https://devapi.qweather.com/v7/weather/now", params, new IHiNet.NetListener() {
             @Override
             public void onSuccess(HiJson res) {
-                HiLog.info(new HiLogLabel(HiLog.LOG_APP,  0x00201, "WeatherApp"), "Get success:" + res.toString());
+                HiLog.info(new HiLogLabel(HiLog.LOG_APP, 0x00201, "WeatherApp"), "Get success:" + res.toString());
                 //System.out.println("WeatherApp onSuccess:"+ res);
                 bindData(res, mo);
             }
+
             @Override
             public void onFail(String message) {
-                HiLog.info(new HiLogLabel(HiLog.LOG_APP,  0x00201, "WeatherApp"), "Get fail:" + message);
+                HiLog.info(new HiLogLabel(HiLog.LOG_APP, 0x00201, "WeatherApp"), "Get fail:" + message);
                 //System.out.println("WeatherApp onSuccess:"+ message);
             }
         });
     }
-    private void loadData1(CityMo mo){
+
+    private void loadData1(CityMo mo) {
         //https://devapi.qweather.com/v7/weather/now?location=114.03,22.32&key=<ç”¨æˆ·key:18418bf60e874597abf85b7906d03e48>
         Map<String, String> params = new HashMap<>();
         params.put("location", mo.cityCode);
-        params.put("key", "18418bf60e874597abf85b7906d03e48");
+        params.put("key", "ä½ çš„å’Œé£Žå¤©æ°”APIå¯†é’¥");
         hiNet.get("https://devapi.qweather.com/v7/weather/now", params, new IHiNet.NetListener() {
             @Override
             public void onSuccess(HiJson res) {
-                HiLog.info(new HiLogLabel(HiLog.LOG_APP,  0x00201, "WeatherApp"), "Get success:" + res.toString());
+                HiLog.info(new HiLogLabel(HiLog.LOG_APP, 0x00201, "WeatherApp"), "Get success:" + res.toString());
                 //System.out.println("WeatherApp onSuccess:"+ res);
                 bindData1(res, mo);
             }
+
             @Override
             public void onFail(String message) {
-                HiLog.info(new HiLogLabel(HiLog.LOG_APP,  0x00201, "WeatherApp"), "Get fail:" + message);
+                HiLog.info(new HiLogLabel(HiLog.LOG_APP, 0x00201, "WeatherApp"), "Get fail:" + message);
                 //System.out.println("WeatherApp onSuccess:"+ message);
             }
         });
@@ -126,26 +133,27 @@ public class MainAbilitySlice extends AbilitySlice implements ListItemProvider.O
         String winddirection = hiJson.value("windDir");
         String windpower = hiJson.value("windScale");
         String humidity = hiJson.value("humidity");
-/*
- *ä¸Šæ–¹ä¸ºå¯¹äºŽèŽ·å�–åˆ°çš„JSONæ•°æ�®çš„è¯»å�–å¤„ç�†ï¼Œå�¯åŠ å¼‚å¸¸æŠ›å‡º
- */
+        /*
+         *ä¸Šæ–¹ä¸ºå¯¹äºŽèŽ·å�–åˆ°çš„JSONæ•°æ�®çš„è¯»å�–å¤„ç�†ï¼Œå�¯åŠ å¼‚å¸¸æŠ›å‡º
+         */
         temperatureText.setText(temperature + "â„ƒ");
         weatherText.setText(weather);
-        tipsText.setText(mo.cityName + ":" + winddirection +" æœ€å¤§é£ŽåŠ›:"+ windpower + "çº§" + " ç©ºæ°”æ¹¿åº¦" + humidity + "%");
+        tipsText.setText(mo.cityName + ":" + winddirection + " æœ€å¤§é£ŽåŠ›:" + windpower + "çº§" + " ç©ºæ°”æ¹¿åº¦" + humidity + "%");
         int id = ResourceTable.Media_sunshine;
-        if (weather.contains("é˜´")){
+        if (weather.contains("é˜´")) {
             id = ResourceTable.Media_overcast;
-        } else if (weather.contains("é›¨")){
+        } else if (weather.contains("é›¨")) {
             id = ResourceTable.Media_rain;
-        } else if (weather.contains("é›ª")){
+        } else if (weather.contains("é›ª")) {
             id = ResourceTable.Media_snow;
-        } else if (weather.contains("é›·ç”µ")){
+        } else if (weather.contains("é›·ç”µ")) {
             id = ResourceTable.Media_thunder;
-        } else if (weather.contains("å¤šäº‘")){
+        } else if (weather.contains("å¤šäº‘")) {
             id = ResourceTable.Media_cloudy;
         }/*æ­¤å¤„çš„å¤©æ°”è¯¦æƒ…å¾…å®Œå–„*/
         weatherImage.setImageAndDecodeBounds(id);
     }
+
     private void bindData1(HiJson res, CityMo mo) {
         HiJson hiJson = res.get("now");
         String temperature = hiJson.value("temp");
@@ -158,17 +166,17 @@ public class MainAbilitySlice extends AbilitySlice implements ListItemProvider.O
          */
         temperature_1Text.setText(temperature + "â„ƒ");
         weather_1Text.setText(weather);
-        tips_1Text.setText(mo.cityName + ":" + winddirection +" æœ€å¤§é£ŽåŠ›:"+ windpower + "çº§" + " ç©ºæ°”æ¹¿åº¦" + humidity + "%");
+        tips_1Text.setText(mo.cityName + ":" + winddirection + " æœ€å¤§é£ŽåŠ›:" + windpower + "çº§" + " ç©ºæ°”æ¹¿åº¦" + humidity + "%");
         int id = ResourceTable.Media_sunshine;
-        if (weather.contains("é˜´")){
+        if (weather.contains("é˜´")) {
             id = ResourceTable.Media_overcast;
-        } else if (weather.contains("é›¨")){
+        } else if (weather.contains("é›¨")) {
             id = ResourceTable.Media_rain;
-        } else if (weather.contains("é›ª")){
+        } else if (weather.contains("é›ª")) {
             id = ResourceTable.Media_snow;
-        } else if (weather.contains("é›·ç”µ")){
+        } else if (weather.contains("é›·ç”µ")) {
             id = ResourceTable.Media_thunder;
-        } else if (weather.contains("å¤šäº‘")){
+        } else if (weather.contains("å¤šäº‘")) {
             id = ResourceTable.Media_cloudy;
         }/*æ­¤å¤„çš„å¤©æ°”è¯¦æƒ…å¾…å®Œå–„*/
         weatherImage_1.setImageAndDecodeBounds(id);
diff --git a/MyApplication2/entry/src/main/java/com/example/weather/util/HiExecutor.java b/Weather/entry/src/main/java/com/example/weather/util/HiExecutor.java
similarity index 73%
rename from MyApplication2/entry/src/main/java/com/example/weather/util/HiExecutor.java
rename to Weather/entry/src/main/java/com/example/weather/util/HiExecutor.java
index ba8736a..0b24214 100644
--- a/MyApplication2/entry/src/main/java/com/example/weather/util/HiExecutor.java
+++ b/Weather/entry/src/main/java/com/example/weather/util/HiExecutor.java
@@ -3,12 +3,20 @@ package com.example.weather.util;
 import ohos.eventhandler.EventHandler;
 import ohos.eventhandler.EventRunner;
 
+/**
+ * The type Hi executor.
+ */
 public class HiExecutor {
+    /**
+     * Run ui.
+     *
+     * @param runnable the runnable
+     */
     /*
      * åˆ‡æ�¢ä»»åŠ¡åˆ°ä¸»çº¿ç¨‹æ‰§è¡Œ
      * @param runnable
      * */
-    public static void runUI(Runnable runnable){
+    public static void runUI(Runnable runnable) {
         // åˆ‡æ�¢åˆ°ä¸»çº¿ç¨‹
         EventRunner runner = EventRunner.getMainEventRunner();
         EventHandler eventHandler = new EventHandler(runner);
@@ -16,11 +24,16 @@ public class HiExecutor {
         eventHandler.postSyncTask(runnable);
     }
 
+    /**
+     * Run bg.
+     *
+     * @param runnable the runnable
+     */
     /*
      * åœ¨å­�çº¿ç¨‹æ‰§è¡Œä»»åŠ¡
      * @param runnable
      * */
-    public static void runBG(Runnable runnable){
+    public static void runBG(Runnable runnable) {
         //å¼€å�¯ä¸€ä¸ªçº¿ç¨‹
         EventRunner runner = EventRunner.create(true);
         EventHandler eventHandler = new EventHandler(runner);
diff --git a/MyApplication2/entry/src/main/resources/base/element/string.json b/Weather/entry/src/main/resources/base/element/string.json
similarity index 100%
rename from MyApplication2/entry/src/main/resources/base/element/string.json
rename to Weather/entry/src/main/resources/base/element/string.json
diff --git a/Weather/entry/src/main/resources/base/graphic/background_ability_main.xml b/Weather/entry/src/main/resources/base/graphic/background_ability_main.xml
new file mode 100644
index 0000000..a002c23
--- /dev/null
+++ b/Weather/entry/src/main/resources/base/graphic/background_ability_main.xml
@@ -0,0 +1,8 @@
+<?xml version="1.0" encoding="UTF-8" ?>
+<shape
+    xmlns:ohos="http://schemas.huawei.com/res/ohos"
+    ohos:shape="rectangle">
+
+    <solid
+        ohos:color="#FFFFFF"/>
+</shape>
\ No newline at end of file
diff --git a/MyApplication2/entry/src/main/resources/base/layout/ability_main.xml b/Weather/entry/src/main/resources/base/layout/ability_main.xml
similarity index 92%
rename from MyApplication2/entry/src/main/resources/base/layout/ability_main.xml
rename to Weather/entry/src/main/resources/base/layout/ability_main.xml
index 04fd9e8..3ece530 100644
--- a/MyApplication2/entry/src/main/resources/base/layout/ability_main.xml
+++ b/Weather/entry/src/main/resources/base/layout/ability_main.xml
@@ -1,98 +1,106 @@
 <?xml version="1.0" encoding="utf-8"?>
 <DirectionalLayout
     xmlns:ohos="http://schemas.huawei.com/res/ohos"
+    ohos:id="$+id:root"
     ohos:height="match_parent"
     ohos:width="match_parent"
-    ohos:id="$+id:root"
     ohos:alignment="horizontal_center"
-    ohos:padding="32"
-    ohos:orientation="vertical">
+    ohos:orientation="vertical"
+    ohos:padding="32">
 
     <DirectionalLayout
-        ohos:orientation="horizontal"
-        ohos:width="match_parent"
         ohos:height="match_content"
-        ohos:alignment="horizontal_center">
+        ohos:width="match_parent"
+        ohos:alignment="horizontal_center"
+        ohos:orientation="horizontal">
+
         <Image
             ohos:id="$+id:weather_icon"
             ohos:height="60vp"
             ohos:width="60vp"
-            ohos:scale_mode="inside"
-            ohos:padding="5vp"
             ohos:image_src="$media:sunshine"
+            ohos:padding="5vp"
+            ohos:scale_mode="inside"
             />
+
         <Text
             ohos:id="$+id:weather"
             ohos:height="match_content"
             ohos:width="match_content"
+            ohos:right_margin="10vp"
             ohos:text="1ä¿�ç•™"
             ohos:text_color="#FF000000"
-            ohos:right_margin="10vp"
             ohos:text_size="12fp"
             />
+
         <Text
             ohos:id="$+id:temperature"
             ohos:height="match_content"
             ohos:width="match_content"
             ohos:text="1ä¿�ç•™"
-            ohos:top_padding="8vp"
             ohos:text_color="#FF000000"
             ohos:text_size="20fp"
+            ohos:top_padding="8vp"
             />
     </DirectionalLayout>
+
     <Text
         ohos:id="$+id:tips"
-        ohos:width="match_content"
         ohos:height="match_content"
+        ohos:width="match_content"
         ohos:layout_alignment="horizontal_center"
-        ohos:text="1ä¿�ç•™"
-        ohos:text_color="#FF3A6B53"
         ohos:left_margin="10vp"
         ohos:right_margin="10vp"
+        ohos:text="1ä¿�ç•™"
+        ohos:text_color="#FF3A6B53"
         ohos:text_size="12vp"
         />
 
     <DirectionalLayout
-        ohos:orientation="horizontal"
-        ohos:width="match_parent"
         ohos:height="match_content"
-        ohos:alignment="horizontal_center">
+        ohos:width="match_parent"
+        ohos:alignment="horizontal_center"
+        ohos:orientation="horizontal">
+
         <Image
             ohos:id="$+id:weather_icon_1"
             ohos:height="60vp"
             ohos:width="60vp"
-            ohos:scale_mode="inside"
-            ohos:padding="5vp"
             ohos:image_src="$media:sunshine"
+            ohos:padding="5vp"
+            ohos:scale_mode="inside"
             />
+
         <Text
             ohos:id="$+id:weather_1"
             ohos:height="match_content"
             ohos:width="match_content"
+            ohos:right_margin="10vp"
             ohos:text="2ä¿�ç•™"
             ohos:text_color="#FF000000"
-            ohos:right_margin="10vp"
             ohos:text_size="12fp"
             />
+
         <Text
             ohos:id="$+id:temperature_1"
             ohos:height="match_content"
             ohos:width="match_content"
             ohos:text="2ä¿�ç•™"
-            ohos:top_padding="8vp"
             ohos:text_color="#FF000000"
             ohos:text_size="20fp"
+            ohos:top_padding="8vp"
             />
     </DirectionalLayout>
+
     <Text
         ohos:id="$+id:tips_1"
-        ohos:width="match_content"
         ohos:height="match_content"
+        ohos:width="match_content"
         ohos:layout_alignment="horizontal_center"
-        ohos:text="2ä¿�ç•™"
-        ohos:text_color="#FF3A6B53"
         ohos:left_margin="10vp"
         ohos:right_margin="10vp"
+        ohos:text="2ä¿�ç•™"
+        ohos:text_color="#FF3A6B53"
         ohos:text_size="12vp"
         />
 
diff --git a/Weather/entry/src/main/resources/base/layout/item_title.xml b/Weather/entry/src/main/resources/base/layout/item_title.xml
new file mode 100644
index 0000000..bae194d
--- /dev/null
+++ b/Weather/entry/src/main/resources/base/layout/item_title.xml
@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Text
+    xmlns:ohos="http://schemas.huawei.com/res/ohos"
+    ohos:id="$+id:city_item"
+    ohos:height="match_content"
+    ohos:width="match_content"
+    ohos:background_element="#70000000"
+    ohos:margin="2vp"
+    ohos:padding="6vp"
+    ohos:text_color="#3fffff"
+    ohos:text_size="12vp"/>
\ No newline at end of file
diff --git a/MyApplication2/entry/src/main/resources/base/layout/list_item.xml b/Weather/entry/src/main/resources/base/layout/list_item.xml
similarity index 69%
rename from MyApplication2/entry/src/main/resources/base/layout/list_item.xml
rename to Weather/entry/src/main/resources/base/layout/list_item.xml
index b8ec838..167d2b1 100644
--- a/MyApplication2/entry/src/main/resources/base/layout/list_item.xml
+++ b/Weather/entry/src/main/resources/base/layout/list_item.xml
@@ -3,5 +3,5 @@
     xmlns:ohos="http://schemas.huawei.com/res/ohos"
     ohos:height="match_content"
     ohos:width="match_parent"
-    ohos:orientation="horizontal"
-    ohos:alignment="horizontal_center"/>
\ No newline at end of file
+    ohos:alignment="horizontal_center"
+    ohos:orientation="horizontal"/>
\ No newline at end of file
diff --git a/MyApplication2/entry/src/main/resources/base/media/bg1.png b/Weather/entry/src/main/resources/base/media/bg1.png
similarity index 100%
rename from MyApplication2/entry/src/main/resources/base/media/bg1.png
rename to Weather/entry/src/main/resources/base/media/bg1.png
diff --git a/MyApplication2/entry/src/main/resources/base/media/cloudy.png b/Weather/entry/src/main/resources/base/media/cloudy.png
similarity index 100%
rename from MyApplication2/entry/src/main/resources/base/media/cloudy.png
rename to Weather/entry/src/main/resources/base/media/cloudy.png
diff --git a/MyApplication2/entry/src/main/resources/base/media/icon.png b/Weather/entry/src/main/resources/base/media/icon.png
similarity index 100%
rename from MyApplication2/entry/src/main/resources/base/media/icon.png
rename to Weather/entry/src/main/resources/base/media/icon.png
diff --git a/MyApplication2/entry/src/main/resources/base/media/overcast.png b/Weather/entry/src/main/resources/base/media/overcast.png
similarity index 100%
rename from MyApplication2/entry/src/main/resources/base/media/overcast.png
rename to Weather/entry/src/main/resources/base/media/overcast.png
diff --git a/MyApplication2/entry/src/main/resources/base/media/rain.png b/Weather/entry/src/main/resources/base/media/rain.png
similarity index 100%
rename from MyApplication2/entry/src/main/resources/base/media/rain.png
rename to Weather/entry/src/main/resources/base/media/rain.png
diff --git a/MyApplication2/entry/src/main/resources/base/media/snow.png b/Weather/entry/src/main/resources/base/media/snow.png
similarity index 100%
rename from MyApplication2/entry/src/main/resources/base/media/snow.png
rename to Weather/entry/src/main/resources/base/media/snow.png
diff --git a/MyApplication2/entry/src/main/resources/base/media/sunshine.png b/Weather/entry/src/main/resources/base/media/sunshine.png
similarity index 100%
rename from MyApplication2/entry/src/main/resources/base/media/sunshine.png
rename to Weather/entry/src/main/resources/base/media/sunshine.png
diff --git a/MyApplication2/entry/src/main/resources/base/media/thunder.png b/Weather/entry/src/main/resources/base/media/thunder.png
similarity index 100%
rename from MyApplication2/entry/src/main/resources/base/media/thunder.png
rename to Weather/entry/src/main/resources/base/media/thunder.png
diff --git a/MyApplication2/entry/src/ohosTest/java/com/example/myapplication/ExampleOhosTest.java b/Weather/entry/src/ohosTest/java/com/example/myapplication/ExampleOhosTest.java
similarity index 100%
rename from MyApplication2/entry/src/ohosTest/java/com/example/myapplication/ExampleOhosTest.java
rename to Weather/entry/src/ohosTest/java/com/example/myapplication/ExampleOhosTest.java
diff --git a/MyApplication2/entry/src/test/java/com/example/myapplication/ExampleTest.java b/Weather/entry/src/test/java/com/example/myapplication/ExampleTest.java
similarity index 100%
rename from MyApplication2/entry/src/test/java/com/example/myapplication/ExampleTest.java
rename to Weather/entry/src/test/java/com/example/myapplication/ExampleTest.java
diff --git a/MyApplication2/gradle.properties b/Weather/gradle.properties
similarity index 100%
rename from MyApplication2/gradle.properties
rename to Weather/gradle.properties
diff --git a/MyApplication2/gradle/wrapper/gradle-wrapper.jar b/Weather/gradle/wrapper/gradle-wrapper.jar
similarity index 100%
rename from MyApplication2/gradle/wrapper/gradle-wrapper.jar
rename to Weather/gradle/wrapper/gradle-wrapper.jar
diff --git a/MyApplication2/gradle/wrapper/gradle-wrapper.properties b/Weather/gradle/wrapper/gradle-wrapper.properties
similarity index 67%
rename from MyApplication2/gradle/wrapper/gradle-wrapper.properties
rename to Weather/gradle/wrapper/gradle-wrapper.properties
index f59159e..63c817f 100644
--- a/MyApplication2/gradle/wrapper/gradle-wrapper.properties
+++ b/Weather/gradle/wrapper/gradle-wrapper.properties
@@ -1,5 +1,5 @@
 distributionBase=GRADLE_USER_HOME
 distributionPath=wrapper/dists
-distributionUrl=https\://repo.huaweicloud.com/gradle/gradle-6.3-bin.zip
+distributionUrl=https\://repo.huaweicloud.com/gradle/gradle-7.3-bin.zip
 zipStoreBase=GRADLE_USER_HOME
 zipStorePath=wrapper/dists
diff --git a/MyApplication2/gradlew b/Weather/gradlew
similarity index 100%
rename from MyApplication2/gradlew
rename to Weather/gradlew
diff --git a/MyApplication2/gradlew.bat b/Weather/gradlew.bat
similarity index 100%
rename from MyApplication2/gradlew.bat
rename to Weather/gradlew.bat
diff --git a/MyApplication2/package.json b/Weather/package.json
similarity index 100%
rename from MyApplication2/package.json
rename to Weather/package.json
diff --git a/MyApplication2/settings.gradle b/Weather/settings.gradle
similarity index 100%
rename from MyApplication2/settings.gradle
rename to Weather/settings.gradle
