Browse Source

feaat: 课程学习

simon 6 tháng trước cách đây
mục cha
commit
fc03749324
100 tập tin đã thay đổi với 1091 bổ sung6 xóa
  1. BIN
      .DS_Store
  2. 22 2
      build-profile.json5
  3. 0 0
      commans/uicomponents/.gitignore
  4. 17 0
      commans/uicomponents/BuildProfile.ets
  5. 1 0
      commans/uicomponents/Index.ets
  6. 31 0
      commans/uicomponents/build-profile.json5
  7. 0 0
      commans/uicomponents/consumer-rules.txt
  8. 6 0
      commans/uicomponents/hvigorfile.ts
  9. 0 0
      commans/uicomponents/obfuscation-rules.txt
  10. 9 0
      commans/uicomponents/oh-package.json5
  11. 19 0
      commans/uicomponents/src/main/ets/components/MainPage.ets
  12. 12 0
      commans/uicomponents/src/main/module.json5
  13. 8 0
      commans/uicomponents/src/main/resources/base/element/float.json
  14. 8 0
      commans/uicomponents/src/main/resources/base/element/string.json
  15. 0 0
      commans/uicomponents/src/ohosTest/ets/test/Ability.test.ets
  16. 0 0
      commans/uicomponents/src/ohosTest/ets/test/List.test.ets
  17. 14 0
      commans/uicomponents/src/ohosTest/module.json5
  18. 0 0
      commans/uicomponents/src/test/List.test.ets
  19. 0 0
      commans/uicomponents/src/test/LocalUnit.test.ets
  20. 6 0
      commans/utils/.gitignore
  21. 17 0
      commans/utils/BuildProfile.ets
  22. 1 0
      commans/utils/Index.ets
  23. 31 0
      commans/utils/build-profile.json5
  24. 0 0
      commans/utils/consumer-rules.txt
  25. 6 0
      commans/utils/hvigorfile.ts
  26. 23 0
      commans/utils/obfuscation-rules.txt
  27. 9 0
      commans/utils/oh-package.json5
  28. 19 0
      commans/utils/src/main/ets/components/MainPage.ets
  29. 12 0
      commans/utils/src/main/module.json5
  30. 8 0
      commans/utils/src/main/resources/base/element/float.json
  31. 8 0
      commans/utils/src/main/resources/base/element/string.json
  32. 35 0
      commans/utils/src/ohosTest/ets/test/Ability.test.ets
  33. 5 0
      commans/utils/src/ohosTest/ets/test/List.test.ets
  34. 14 0
      commans/utils/src/ohosTest/module.json5
  35. 5 0
      commans/utils/src/test/List.test.ets
  36. 33 0
      commans/utils/src/test/LocalUnit.test.ets
  37. 6 0
      features/learning/.gitignore
  38. 17 0
      features/learning/BuildProfile.ets
  39. 1 0
      features/learning/Index.ets
  40. 31 0
      features/learning/build-profile.json5
  41. 0 0
      features/learning/consumer-rules.txt
  42. 6 0
      features/learning/hvigorfile.ts
  43. 23 0
      features/learning/obfuscation-rules.txt
  44. 9 0
      features/learning/oh-package.json5
  45. 13 0
      features/learning/src/main/ets/pages/CourseLearning.ets
  46. 18 0
      features/learning/src/main/module.json5
  47. 8 0
      features/learning/src/main/resources/base/element/float.json
  48. 12 0
      features/learning/src/main/resources/base/element/string.json
  49. 13 0
      features/learning/src/main/resources/rawfile/course_learning/asset-manifest.json
  50. BIN
      features/learning/src/main/resources/rawfile/course_learning/assets/banner.png
  51. BIN
      features/learning/src/main/resources/rawfile/course_learning/assets/course_cover_1.png
  52. BIN
      features/learning/src/main/resources/rawfile/course_learning/assets/course_cover_2.png
  53. BIN
      features/learning/src/main/resources/rawfile/course_learning/assets/course_cover_3.png
  54. BIN
      features/learning/src/main/resources/rawfile/course_learning/assets/course_cover_4.png
  55. BIN
      features/learning/src/main/resources/rawfile/course_learning/assets/course_cover_5.png
  56. BIN
      features/learning/src/main/resources/rawfile/course_learning/assets/course_cover_6.png
  57. BIN
      features/learning/src/main/resources/rawfile/course_learning/assets/course_cover_7.png
  58. BIN
      features/learning/src/main/resources/rawfile/course_learning/assets/course_cover_8.png
  59. 19 0
      features/learning/src/main/resources/rawfile/course_learning/assets/ic_book.svg
  60. 17 0
      features/learning/src/main/resources/rawfile/course_learning/assets/ic_time.svg
  61. 43 0
      features/learning/src/main/resources/rawfile/course_learning/css/reset.css
  62. 1 0
      features/learning/src/main/resources/rawfile/course_learning/index.html
  63. 2 0
      features/learning/src/main/resources/rawfile/course_learning/static/css/main.9a55d7a9.css
  64. 1 0
      features/learning/src/main/resources/rawfile/course_learning/static/css/main.9a55d7a9.css.map
  65. 3 0
      features/learning/src/main/resources/rawfile/course_learning/static/js/main.b1cba247.js
  66. 55 0
      features/learning/src/main/resources/rawfile/course_learning/static/js/main.b1cba247.js.LICENSE.txt
  67. 1 0
      features/learning/src/main/resources/rawfile/course_learning/static/js/main.b1cba247.js.map
  68. 35 0
      features/learning/src/ohosTest/ets/test/Ability.test.ets
  69. 5 0
      features/learning/src/ohosTest/ets/test/List.test.ets
  70. 14 0
      features/learning/src/ohosTest/module.json5
  71. 5 0
      features/learning/src/test/List.test.ets
  72. 33 0
      features/learning/src/test/LocalUnit.test.ets
  73. 6 0
      features/map/.gitignore
  74. 17 0
      features/map/BuildProfile.ets
  75. 1 0
      features/map/Index.ets
  76. 31 0
      features/map/build-profile.json5
  77. 0 0
      features/map/consumer-rules.txt
  78. 6 0
      features/map/hvigorfile.ts
  79. 23 0
      features/map/obfuscation-rules.txt
  80. 3 4
      entry/oh-package.json5
  81. 19 0
      features/map/src/main/ets/components/MainPage.ets
  82. 12 0
      features/map/src/main/module.json5
  83. 8 0
      features/map/src/main/resources/base/element/float.json
  84. 8 0
      features/map/src/main/resources/base/element/string.json
  85. 35 0
      features/map/src/ohosTest/ets/test/Ability.test.ets
  86. 5 0
      features/map/src/ohosTest/ets/test/List.test.ets
  87. 14 0
      features/map/src/ohosTest/module.json5
  88. 5 0
      features/map/src/test/List.test.ets
  89. 33 0
      features/map/src/test/LocalUnit.test.ets
  90. 6 0
      features/quickstart/.gitignore
  91. 17 0
      features/quickstart/BuildProfile.ets
  92. 3 0
      features/quickstart/Index.ets
  93. 31 0
      features/quickstart/build-profile.json5
  94. 0 0
      features/quickstart/consumer-rules.txt
  95. 6 0
      features/quickstart/hvigorfile.ts
  96. 23 0
      features/quickstart/obfuscation-rules.txt
  97. 9 0
      features/quickstart/oh-package.json5
  98. 0 0
      features/quickstart/src/main/ets/model/ArticleClass.ets
  99. 0 0
      features/quickstart/src/main/ets/model/BannerClass.ets
  100. 0 0
      entry/src/main/ets/pages/Index.ets

BIN
.DS_Store


+ 22 - 2
build-profile.json5

@@ -27,8 +27,8 @@
   },
   "modules": [
     {
-      "name": "entry",
-      "srcPath": "./entry",
+      "name": "default",
+      "srcPath": "./products/default",
       "targets": [
         {
           "name": "default",
@@ -37,6 +37,26 @@
           ]
         }
       ]
+    },
+    {
+      "name": "quickstart",
+      "srcPath": "./features/quickstart",
+    },
+    {
+      "name": "map",
+      "srcPath": "./features/map",
+    },
+    {
+      "name": "learning",
+      "srcPath": "./features/learning",
+    },
+    {
+      "name": "utils",
+      "srcPath": "./commans/utils",
+    },
+    {
+      "name": "uicomponents",
+      "srcPath": "./commans/uicomponents",
     }
   ]
 }

entry/.gitignore → commans/uicomponents/.gitignore


+ 17 - 0
commans/uicomponents/BuildProfile.ets

@@ -0,0 +1,17 @@
+/**
+ * Use these variables when you tailor your ArkTS code. They must be of the const type.
+ */
+export const HAR_VERSION = '1.0.0';
+export const BUILD_MODE_NAME = 'debug';
+export const DEBUG = true;
+export const TARGET_NAME = 'default';
+
+/**
+ * BuildProfile Class is used only for compatibility purposes.
+ */
+export default class BuildProfile { 
+	static readonly HAR_VERSION = HAR_VERSION;
+	static readonly BUILD_MODE_NAME = BUILD_MODE_NAME;
+	static readonly DEBUG = DEBUG;
+	static readonly TARGET_NAME = TARGET_NAME;
+}

+ 1 - 0
commans/uicomponents/Index.ets

@@ -0,0 +1 @@
+export { MainPage } from './src/main/ets/components/MainPage';

+ 31 - 0
commans/uicomponents/build-profile.json5

@@ -0,0 +1,31 @@
+{
+  "apiType": "stageMode",
+  "buildOption": {
+  },
+  "buildOptionSet": [
+    {
+      "name": "release",
+      "arkOptions": {
+        "obfuscation": {
+          "ruleOptions": {
+            "enable": false,
+            "files": [
+              "./obfuscation-rules.txt"
+            ]
+          },
+          "consumerFiles": [
+            "./consumer-rules.txt"
+          ]
+        }
+      },
+    },
+  ],
+  "targets": [
+    {
+      "name": "default"
+    },
+    {
+      "name": "ohosTest"
+    }
+  ]
+}

+ 0 - 0
commans/uicomponents/consumer-rules.txt


+ 6 - 0
commans/uicomponents/hvigorfile.ts

@@ -0,0 +1,6 @@
+import { harTasks } from '@ohos/hvigor-ohos-plugin';
+
+export default {
+    system: harTasks,  /* Built-in plugin of Hvigor. It cannot be modified. */
+    plugins:[]         /* Custom plugin to extend the functionality of Hvigor. */
+}

entry/obfuscation-rules.txt → commans/uicomponents/obfuscation-rules.txt


+ 9 - 0
commans/uicomponents/oh-package.json5

@@ -0,0 +1,9 @@
+{
+  "name": "uicomponents",
+  "version": "1.0.0",
+  "description": "Please describe the basic information.",
+  "main": "Index.ets",
+  "author": "",
+  "license": "Apache-2.0",
+  "dependencies": {}
+}

+ 19 - 0
commans/uicomponents/src/main/ets/components/MainPage.ets

@@ -0,0 +1,19 @@
+@Component
+export struct MainPage {
+  @State message: string = 'Hello World';
+
+  build() {
+    Row() {
+      Column() {
+        Text(this.message)
+          .fontSize($r('app.float.page_text_font_size'))
+          .fontWeight(FontWeight.Bold)
+          .onClick(() => {
+            this.message = 'Welcome';
+          })
+      }
+      .width('100%')
+    }
+    .height('100%')
+  }
+}

+ 12 - 0
commans/uicomponents/src/main/module.json5

@@ -0,0 +1,12 @@
+{
+  "module": {
+    "name": "uicomponents",
+    "type": "har",
+    "deviceTypes": [
+      "default",
+      "tablet",
+      "2in1",
+      "wearable"
+    ]
+  }
+}

+ 8 - 0
commans/uicomponents/src/main/resources/base/element/float.json

@@ -0,0 +1,8 @@
+{
+  "float": [
+    {
+      "name": "page_text_font_size",
+      "value": "50fp"
+    }
+  ]
+}

+ 8 - 0
commans/uicomponents/src/main/resources/base/element/string.json

@@ -0,0 +1,8 @@
+{
+  "string": [
+    {
+      "name": "page_show",
+      "value": "page from package"
+    }
+  ]
+}

entry/src/ohosTest/ets/test/Ability.test.ets → commans/uicomponents/src/ohosTest/ets/test/Ability.test.ets


entry/src/ohosTest/ets/test/List.test.ets → commans/uicomponents/src/ohosTest/ets/test/List.test.ets


+ 14 - 0
commans/uicomponents/src/ohosTest/module.json5

@@ -0,0 +1,14 @@
+{
+  "module": {
+    "name": "uicomponents_test",
+    "type": "feature",
+    "deviceTypes": [
+      "default",
+      "tablet",
+      "2in1",
+      "wearable"
+    ],
+    "deliveryWithInstall": true,
+    "installationFree": false
+  }
+}

entry/src/test/List.test.ets → commans/uicomponents/src/test/List.test.ets


entry/src/test/LocalUnit.test.ets → commans/uicomponents/src/test/LocalUnit.test.ets


+ 6 - 0
commans/utils/.gitignore

@@ -0,0 +1,6 @@
+/node_modules
+/oh_modules
+/.preview
+/build
+/.cxx
+/.test

+ 17 - 0
commans/utils/BuildProfile.ets

@@ -0,0 +1,17 @@
+/**
+ * Use these variables when you tailor your ArkTS code. They must be of the const type.
+ */
+export const HAR_VERSION = '1.0.0';
+export const BUILD_MODE_NAME = 'debug';
+export const DEBUG = true;
+export const TARGET_NAME = 'default';
+
+/**
+ * BuildProfile Class is used only for compatibility purposes.
+ */
+export default class BuildProfile { 
+	static readonly HAR_VERSION = HAR_VERSION;
+	static readonly BUILD_MODE_NAME = BUILD_MODE_NAME;
+	static readonly DEBUG = DEBUG;
+	static readonly TARGET_NAME = TARGET_NAME;
+}

+ 1 - 0
commans/utils/Index.ets

@@ -0,0 +1 @@
+export { MainPage } from './src/main/ets/components/MainPage';

+ 31 - 0
commans/utils/build-profile.json5

@@ -0,0 +1,31 @@
+{
+  "apiType": "stageMode",
+  "buildOption": {
+  },
+  "buildOptionSet": [
+    {
+      "name": "release",
+      "arkOptions": {
+        "obfuscation": {
+          "ruleOptions": {
+            "enable": false,
+            "files": [
+              "./obfuscation-rules.txt"
+            ]
+          },
+          "consumerFiles": [
+            "./consumer-rules.txt"
+          ]
+        }
+      },
+    },
+  ],
+  "targets": [
+    {
+      "name": "default"
+    },
+    {
+      "name": "ohosTest"
+    }
+  ]
+}

+ 0 - 0
commans/utils/consumer-rules.txt


+ 6 - 0
commans/utils/hvigorfile.ts

@@ -0,0 +1,6 @@
+import { harTasks } from '@ohos/hvigor-ohos-plugin';
+
+export default {
+    system: harTasks,  /* Built-in plugin of Hvigor. It cannot be modified. */
+    plugins:[]         /* Custom plugin to extend the functionality of Hvigor. */
+}

+ 23 - 0
commans/utils/obfuscation-rules.txt

@@ -0,0 +1,23 @@
+# Define project specific obfuscation rules here.
+# You can include the obfuscation configuration files in the current module's build-profile.json5.
+#
+# For more details, see
+#   https://developer.huawei.com/consumer/cn/doc/harmonyos-guides-V5/source-obfuscation-V5
+
+# Obfuscation options:
+# -disable-obfuscation: disable all obfuscations
+# -enable-property-obfuscation: obfuscate the property names
+# -enable-toplevel-obfuscation: obfuscate the names in the global scope
+# -compact: remove unnecessary blank spaces and all line feeds
+# -remove-log: remove all console.* statements
+# -print-namecache: print the name cache that contains the mapping from the old names to new names
+# -apply-namecache: reuse the given cache file
+
+# Keep options:
+# -keep-property-name: specifies property names that you want to keep
+# -keep-global-name: specifies names that you want to keep in the global scope
+
+-enable-property-obfuscation
+-enable-toplevel-obfuscation
+-enable-filename-obfuscation
+-enable-export-obfuscation

+ 9 - 0
commans/utils/oh-package.json5

@@ -0,0 +1,9 @@
+{
+  "name": "utils",
+  "version": "1.0.0",
+  "description": "Please describe the basic information.",
+  "main": "Index.ets",
+  "author": "",
+  "license": "Apache-2.0",
+  "dependencies": {}
+}

+ 19 - 0
commans/utils/src/main/ets/components/MainPage.ets

@@ -0,0 +1,19 @@
+@Component
+export struct MainPage {
+  @State message: string = 'Hello World';
+
+  build() {
+    Row() {
+      Column() {
+        Text(this.message)
+          .fontSize($r('app.float.page_text_font_size'))
+          .fontWeight(FontWeight.Bold)
+          .onClick(() => {
+            this.message = 'Welcome';
+          })
+      }
+      .width('100%')
+    }
+    .height('100%')
+  }
+}

+ 12 - 0
commans/utils/src/main/module.json5

@@ -0,0 +1,12 @@
+{
+  "module": {
+    "name": "utils",
+    "type": "har",
+    "deviceTypes": [
+      "default",
+      "tablet",
+      "2in1",
+      "wearable"
+    ]
+  }
+}

+ 8 - 0
commans/utils/src/main/resources/base/element/float.json

@@ -0,0 +1,8 @@
+{
+  "float": [
+    {
+      "name": "page_text_font_size",
+      "value": "50fp"
+    }
+  ]
+}

+ 8 - 0
commans/utils/src/main/resources/base/element/string.json

@@ -0,0 +1,8 @@
+{
+  "string": [
+    {
+      "name": "page_show",
+      "value": "page from package"
+    }
+  ]
+}

+ 35 - 0
commans/utils/src/ohosTest/ets/test/Ability.test.ets

@@ -0,0 +1,35 @@
+import { hilog } from '@kit.PerformanceAnalysisKit';
+import { describe, beforeAll, beforeEach, afterEach, afterAll, it, expect } from '@ohos/hypium';
+
+export default function abilityTest() {
+  describe('ActsAbilityTest', () => {
+    // Defines a test suite. Two parameters are supported: test suite name and test suite function.
+    beforeAll(() => {
+      // Presets an action, which is performed only once before all test cases of the test suite start.
+      // This API supports only one parameter: preset action function.
+    })
+    beforeEach(() => {
+      // Presets an action, which is performed before each unit test case starts.
+      // The number of execution times is the same as the number of test cases defined by **it**.
+      // This API supports only one parameter: preset action function.
+    })
+    afterEach(() => {
+      // Presets a clear action, which is performed after each unit test case ends.
+      // The number of execution times is the same as the number of test cases defined by **it**.
+      // This API supports only one parameter: clear action function.
+    })
+    afterAll(() => {
+      // Presets a clear action, which is performed after all test cases of the test suite end.
+      // This API supports only one parameter: clear action function.
+    })
+    it('assertContain', 0, () => {
+      // Defines a test case. This API supports three parameters: test case name, filter parameter, and test case function.
+      hilog.info(0x0000, 'testTag', '%{public}s', 'it begin');
+      let a = 'abc';
+      let b = 'b';
+      // Defines a variety of assertion methods, which are used to declare expected boolean conditions.
+      expect(a).assertContain(b);
+      expect(a).assertEqual(a);
+    })
+  })
+}

+ 5 - 0
commans/utils/src/ohosTest/ets/test/List.test.ets

@@ -0,0 +1,5 @@
+import abilityTest from './Ability.test';
+
+export default function testsuite() {
+  abilityTest();
+}

+ 14 - 0
commans/utils/src/ohosTest/module.json5

@@ -0,0 +1,14 @@
+{
+  "module": {
+    "name": "utils_test",
+    "type": "feature",
+    "deviceTypes": [
+      "default",
+      "tablet",
+      "2in1",
+      "wearable"
+    ],
+    "deliveryWithInstall": true,
+    "installationFree": false
+  }
+}

+ 5 - 0
commans/utils/src/test/List.test.ets

@@ -0,0 +1,5 @@
+import localUnitTest from './LocalUnit.test';
+
+export default function testsuite() {
+  localUnitTest();
+}

+ 33 - 0
commans/utils/src/test/LocalUnit.test.ets

@@ -0,0 +1,33 @@
+import { describe, beforeAll, beforeEach, afterEach, afterAll, it, expect } from '@ohos/hypium';
+
+export default function localUnitTest() {
+  describe('localUnitTest', () => {
+    // Defines a test suite. Two parameters are supported: test suite name and test suite function.
+    beforeAll(() => {
+      // Presets an action, which is performed only once before all test cases of the test suite start.
+      // This API supports only one parameter: preset action function.
+    });
+    beforeEach(() => {
+      // Presets an action, which is performed before each unit test case starts.
+      // The number of execution times is the same as the number of test cases defined by **it**.
+      // This API supports only one parameter: preset action function.
+    });
+    afterEach(() => {
+      // Presets a clear action, which is performed after each unit test case ends.
+      // The number of execution times is the same as the number of test cases defined by **it**.
+      // This API supports only one parameter: clear action function.
+    });
+    afterAll(() => {
+      // Presets a clear action, which is performed after all test cases of the test suite end.
+      // This API supports only one parameter: clear action function.
+    });
+    it('assertContain', 0, () => {
+      // Defines a test case. This API supports three parameters: test case name, filter parameter, and test case function.
+      let a = 'abc';
+      let b = 'b';
+      // Defines a variety of assertion methods, which are used to declare expected boolean conditions.
+      expect(a).assertContain(b);
+      expect(a).assertEqual(a);
+    });
+  });
+}

+ 6 - 0
features/learning/.gitignore

@@ -0,0 +1,6 @@
+/node_modules
+/oh_modules
+/.preview
+/build
+/.cxx
+/.test

+ 17 - 0
features/learning/BuildProfile.ets

@@ -0,0 +1,17 @@
+/**
+ * Use these variables when you tailor your ArkTS code. They must be of the const type.
+ */
+export const HAR_VERSION = '1.0.0';
+export const BUILD_MODE_NAME = 'debug';
+export const DEBUG = true;
+export const TARGET_NAME = 'default';
+
+/**
+ * BuildProfile Class is used only for compatibility purposes.
+ */
+export default class BuildProfile { 
+	static readonly HAR_VERSION = HAR_VERSION;
+	static readonly BUILD_MODE_NAME = BUILD_MODE_NAME;
+	static readonly DEBUG = DEBUG;
+	static readonly TARGET_NAME = TARGET_NAME;
+}

+ 1 - 0
features/learning/Index.ets

@@ -0,0 +1 @@
+export { CourseLearning } from './src/main/ets/pages/CourseLearning';

+ 31 - 0
features/learning/build-profile.json5

@@ -0,0 +1,31 @@
+{
+  "apiType": "stageMode",
+  "buildOption": {
+  },
+  "buildOptionSet": [
+    {
+      "name": "release",
+      "arkOptions": {
+        "obfuscation": {
+          "ruleOptions": {
+            "enable": false,
+            "files": [
+              "./obfuscation-rules.txt"
+            ]
+          },
+          "consumerFiles": [
+            "./consumer-rules.txt"
+          ]
+        }
+      },
+    },
+  ],
+  "targets": [
+    {
+      "name": "default"
+    },
+    {
+      "name": "ohosTest"
+    }
+  ]
+}

+ 0 - 0
features/learning/consumer-rules.txt


+ 6 - 0
features/learning/hvigorfile.ts

@@ -0,0 +1,6 @@
+import { harTasks } from '@ohos/hvigor-ohos-plugin';
+
+export default {
+    system: harTasks,  /* Built-in plugin of Hvigor. It cannot be modified. */
+    plugins:[]         /* Custom plugin to extend the functionality of Hvigor. */
+}

+ 23 - 0
features/learning/obfuscation-rules.txt

@@ -0,0 +1,23 @@
+# Define project specific obfuscation rules here.
+# You can include the obfuscation configuration files in the current module's build-profile.json5.
+#
+# For more details, see
+#   https://developer.huawei.com/consumer/cn/doc/harmonyos-guides-V5/source-obfuscation-V5
+
+# Obfuscation options:
+# -disable-obfuscation: disable all obfuscations
+# -enable-property-obfuscation: obfuscate the property names
+# -enable-toplevel-obfuscation: obfuscate the names in the global scope
+# -compact: remove unnecessary blank spaces and all line feeds
+# -remove-log: remove all console.* statements
+# -print-namecache: print the name cache that contains the mapping from the old names to new names
+# -apply-namecache: reuse the given cache file
+
+# Keep options:
+# -keep-property-name: specifies property names that you want to keep
+# -keep-global-name: specifies names that you want to keep in the global scope
+
+-enable-property-obfuscation
+-enable-toplevel-obfuscation
+-enable-filename-obfuscation
+-enable-export-obfuscation

+ 9 - 0
features/learning/oh-package.json5

@@ -0,0 +1,9 @@
+{
+  "name": "learning",
+  "version": "1.0.0",
+  "description": "Please describe the basic information.",
+  "main": "Index.ets",
+  "author": "",
+  "license": "Apache-2.0",
+  "dependencies": {}
+}

+ 13 - 0
features/learning/src/main/ets/pages/CourseLearning.ets

@@ -0,0 +1,13 @@
+import { webview } from '@kit.ArkWeb';
+
+@Component
+export struct CourseLearning {
+  private webviewController: webview.WebviewController = new webview.WebviewController();
+
+  build() {
+    Column() {
+      Web({ src: $rawfile('course_learning/index.html'), controller: this.webviewController })
+        .domStorageAccess(true)
+    }
+  }
+}

+ 18 - 0
features/learning/src/main/module.json5

@@ -0,0 +1,18 @@
+{
+  "module": {
+    "name": "learning",
+    "type": "har",
+    "deviceTypes": [
+      "default",
+      "tablet",
+      "2in1",
+      "wearable"
+    ],
+    "requestPermissions": [
+      {
+        "name": "ohos.permission.INTERNET",
+        "reason": "$string:apply_for_network"
+      }
+    ]
+  }
+}

+ 8 - 0
features/learning/src/main/resources/base/element/float.json

@@ -0,0 +1,8 @@
+{
+  "float": [
+    {
+      "name": "page_text_font_size",
+      "value": "50fp"
+    }
+  ]
+}

+ 12 - 0
features/learning/src/main/resources/base/element/string.json

@@ -0,0 +1,12 @@
+{
+  "string": [
+    {
+      "name": "page_show",
+      "value": "page from package"
+    },
+    {
+      "name": "apply_for_network",
+      "value": "Allow the app to access the network"
+    }
+  ]
+}

+ 13 - 0
features/learning/src/main/resources/rawfile/course_learning/asset-manifest.json

@@ -0,0 +1,13 @@
+{
+  "files": {
+    "main.css": "./static/css/main.9a55d7a9.css",
+    "main.js": "./static/js/main.b1cba247.js",
+    "index.html": "./index.html",
+    "main.9a55d7a9.css.map": "./static/css/main.9a55d7a9.css.map",
+    "main.b1cba247.js.map": "./static/js/main.b1cba247.js.map"
+  },
+  "entrypoints": [
+    "static/css/main.9a55d7a9.css",
+    "static/js/main.b1cba247.js"
+  ]
+}

BIN
features/learning/src/main/resources/rawfile/course_learning/assets/banner.png


BIN
features/learning/src/main/resources/rawfile/course_learning/assets/course_cover_1.png


BIN
features/learning/src/main/resources/rawfile/course_learning/assets/course_cover_2.png


BIN
features/learning/src/main/resources/rawfile/course_learning/assets/course_cover_3.png


BIN
features/learning/src/main/resources/rawfile/course_learning/assets/course_cover_4.png


BIN
features/learning/src/main/resources/rawfile/course_learning/assets/course_cover_5.png


BIN
features/learning/src/main/resources/rawfile/course_learning/assets/course_cover_6.png


BIN
features/learning/src/main/resources/rawfile/course_learning/assets/course_cover_7.png


BIN
features/learning/src/main/resources/rawfile/course_learning/assets/course_cover_8.png


+ 19 - 0
features/learning/src/main/resources/rawfile/course_learning/assets/ic_book.svg

@@ -0,0 +1,19 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<svg width="16px" height="16px" viewBox="0 0 16 16" version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
+    <title>ic_DLP_college_kechengmdpi</title>
+    <g id="页面-1" stroke="none" stroke-width="1" fill="none" fill-rule="evenodd">
+        <g id="课程学习phone备份" transform="translate(-28.000000, -565.000000)">
+            <g id="编组-2" transform="translate(16.000000, 332.000000)">
+                <g id="编组-3备份-2" transform="translate(0.000000, 48.000000)">
+                    <g id="ic_DLP_college_kecheng" transform="translate(12.000000, 185.000000)">
+                        <rect id="矩形" x="0" y="0" width="16" height="16"></rect>
+                        <path d="M2,12.6666667 L2,3.33333333 C2,2.22876383 2.8954305,1.33333333 4,1.33333333 L14,1.33333333 L14,1.33333333 L14,14.6666667" id="路径" stroke="#000000" stroke-linejoin="round"></path>
+                        <path d="M4,10.6666667 L14,10.6666667 L14,10.6666667 L14,14.6666667 L4,14.6666667 C2.8954305,14.6666667 2,13.7712361 2,12.6666667 C2,11.5620972 2.8954305,10.6666667 4,10.6666667 Z" id="矩形" stroke="#000000" stroke-linejoin="round"></path>
+                        <line x1="5.33333333" y1="4.66666667" x2="10.6666667" y2="4.66666667" id="路径-13" stroke="#000000" stroke-linecap="round" stroke-linejoin="round"></line>
+                        <line x1="5.33333333" y1="7.33333333" x2="9.33333333" y2="7.33333333" id="路径-13" stroke="#000000" stroke-linecap="round" stroke-linejoin="round"></line>
+                    </g>
+                </g>
+            </g>
+        </g>
+    </g>
+</svg>

+ 17 - 0
features/learning/src/main/resources/rawfile/course_learning/assets/ic_time.svg

@@ -0,0 +1,17 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<svg width="16px" height="16px" viewBox="0 0 16 16" version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
+    <title>ic_DLP_college_timemdpi</title>
+    <g id="页面-1" stroke="none" stroke-width="1" fill="none" fill-rule="evenodd">
+        <g id="课程学习phone备份" transform="translate(-28.000000, -541.000000)">
+            <g id="编组-2" transform="translate(16.000000, 332.000000)">
+                <g id="编组-3备份-2" transform="translate(0.000000, 48.000000)">
+                    <g id="ic_DLP_college_time" transform="translate(12.000000, 161.000000)">
+                        <rect id="矩形" x="0" y="0" width="16" height="16"></rect>
+                        <circle id="椭圆形" stroke="#000000" cx="8" cy="8" r="6.66666667"></circle>
+                        <polyline id="路径-7" stroke="#000000" stroke-linecap="round" stroke-linejoin="round" points="10 10 8 8 8 4"></polyline>
+                    </g>
+                </g>
+            </g>
+        </g>
+    </g>
+</svg>

+ 43 - 0
features/learning/src/main/resources/rawfile/course_learning/css/reset.css

@@ -0,0 +1,43 @@
+html, body, div, span, applet, object, iframe,
+h1, h2, h3, h4, h5, h6, p, blockquote, pre,
+a, abbr, acronym, address, big, cite, code,
+del, dfn, em, img, ins, kbd, q, s, samp,
+small, strike, strong, sub, sup, tt, var,
+b, u, i, center,
+dl, dt, dd, ol, ul, li,
+fieldset, form, label, legend,
+table, caption, tbody, tfoot, thead, tr, th, td,
+article, aside, canvas, details, embed,
+figure, figcaption, footer, header, hgroup,
+menu, nav, output, ruby, section, summary,
+time, mark, audio, video {
+    margin: 0;
+    padding: 0;
+    border: 0;
+    font-size: 100%;
+    font: inherit;
+    vertical-align: baseline;
+}
+/* HTML5 display-role reset for older browsers */
+article, aside, details, figcaption, figure,
+footer, header, hgroup, menu, nav, section {
+    display: block;
+}
+body {
+    line-height: 1;
+}
+ol, ul {
+    list-style: none;
+}
+blockquote, q {
+    quotes: none;
+}
+blockquote:before, blockquote:after,
+q:before, q:after {
+    content: '';
+    content: none;
+}
+table {
+    border-collapse: collapse;
+    border-spacing: 0;
+}

Những thai đổi đã bị hủy bỏ vì nó quá lớn
+ 1 - 0
features/learning/src/main/resources/rawfile/course_learning/index.html


Những thai đổi đã bị hủy bỏ vì nó quá lớn
+ 2 - 0
features/learning/src/main/resources/rawfile/course_learning/static/css/main.9a55d7a9.css


Những thai đổi đã bị hủy bỏ vì nó quá lớn
+ 1 - 0
features/learning/src/main/resources/rawfile/course_learning/static/css/main.9a55d7a9.css.map


Những thai đổi đã bị hủy bỏ vì nó quá lớn
+ 3 - 0
features/learning/src/main/resources/rawfile/course_learning/static/js/main.b1cba247.js


+ 55 - 0
features/learning/src/main/resources/rawfile/course_learning/static/js/main.b1cba247.js.LICENSE.txt

@@ -0,0 +1,55 @@
+/*!
+	Copyright (c) 2018 Jed Watson.
+	Licensed under the MIT License (MIT), see
+	http://jedwatson.github.io/classnames
+*/
+
+/**
+ * @license React
+ * react-dom.production.min.js
+ *
+ * Copyright (c) Facebook, Inc. and its affiliates.
+ *
+ * This source code is licensed under the MIT license found in the
+ * LICENSE file in the root directory of this source tree.
+ */
+
+/**
+ * @license React
+ * react-is.production.min.js
+ *
+ * Copyright (c) Facebook, Inc. and its affiliates.
+ *
+ * This source code is licensed under the MIT license found in the
+ * LICENSE file in the root directory of this source tree.
+ */
+
+/**
+ * @license React
+ * react-jsx-runtime.production.min.js
+ *
+ * Copyright (c) Facebook, Inc. and its affiliates.
+ *
+ * This source code is licensed under the MIT license found in the
+ * LICENSE file in the root directory of this source tree.
+ */
+
+/**
+ * @license React
+ * react.production.min.js
+ *
+ * Copyright (c) Facebook, Inc. and its affiliates.
+ *
+ * This source code is licensed under the MIT license found in the
+ * LICENSE file in the root directory of this source tree.
+ */
+
+/**
+ * @license React
+ * scheduler.production.min.js
+ *
+ * Copyright (c) Facebook, Inc. and its affiliates.
+ *
+ * This source code is licensed under the MIT license found in the
+ * LICENSE file in the root directory of this source tree.
+ */

Những thai đổi đã bị hủy bỏ vì nó quá lớn
+ 1 - 0
features/learning/src/main/resources/rawfile/course_learning/static/js/main.b1cba247.js.map


+ 35 - 0
features/learning/src/ohosTest/ets/test/Ability.test.ets

@@ -0,0 +1,35 @@
+import { hilog } from '@kit.PerformanceAnalysisKit';
+import { describe, beforeAll, beforeEach, afterEach, afterAll, it, expect } from '@ohos/hypium';
+
+export default function abilityTest() {
+  describe('ActsAbilityTest', () => {
+    // Defines a test suite. Two parameters are supported: test suite name and test suite function.
+    beforeAll(() => {
+      // Presets an action, which is performed only once before all test cases of the test suite start.
+      // This API supports only one parameter: preset action function.
+    })
+    beforeEach(() => {
+      // Presets an action, which is performed before each unit test case starts.
+      // The number of execution times is the same as the number of test cases defined by **it**.
+      // This API supports only one parameter: preset action function.
+    })
+    afterEach(() => {
+      // Presets a clear action, which is performed after each unit test case ends.
+      // The number of execution times is the same as the number of test cases defined by **it**.
+      // This API supports only one parameter: clear action function.
+    })
+    afterAll(() => {
+      // Presets a clear action, which is performed after all test cases of the test suite end.
+      // This API supports only one parameter: clear action function.
+    })
+    it('assertContain', 0, () => {
+      // Defines a test case. This API supports three parameters: test case name, filter parameter, and test case function.
+      hilog.info(0x0000, 'testTag', '%{public}s', 'it begin');
+      let a = 'abc';
+      let b = 'b';
+      // Defines a variety of assertion methods, which are used to declare expected boolean conditions.
+      expect(a).assertContain(b);
+      expect(a).assertEqual(a);
+    })
+  })
+}

+ 5 - 0
features/learning/src/ohosTest/ets/test/List.test.ets

@@ -0,0 +1,5 @@
+import abilityTest from './Ability.test';
+
+export default function testsuite() {
+  abilityTest();
+}

+ 14 - 0
features/learning/src/ohosTest/module.json5

@@ -0,0 +1,14 @@
+{
+  "module": {
+    "name": "learning_test",
+    "type": "feature",
+    "deviceTypes": [
+      "default",
+      "tablet",
+      "2in1",
+      "wearable"
+    ],
+    "deliveryWithInstall": true,
+    "installationFree": false
+  }
+}

+ 5 - 0
features/learning/src/test/List.test.ets

@@ -0,0 +1,5 @@
+import localUnitTest from './LocalUnit.test';
+
+export default function testsuite() {
+  localUnitTest();
+}

+ 33 - 0
features/learning/src/test/LocalUnit.test.ets

@@ -0,0 +1,33 @@
+import { describe, beforeAll, beforeEach, afterEach, afterAll, it, expect } from '@ohos/hypium';
+
+export default function localUnitTest() {
+  describe('localUnitTest', () => {
+    // Defines a test suite. Two parameters are supported: test suite name and test suite function.
+    beforeAll(() => {
+      // Presets an action, which is performed only once before all test cases of the test suite start.
+      // This API supports only one parameter: preset action function.
+    });
+    beforeEach(() => {
+      // Presets an action, which is performed before each unit test case starts.
+      // The number of execution times is the same as the number of test cases defined by **it**.
+      // This API supports only one parameter: preset action function.
+    });
+    afterEach(() => {
+      // Presets a clear action, which is performed after each unit test case ends.
+      // The number of execution times is the same as the number of test cases defined by **it**.
+      // This API supports only one parameter: clear action function.
+    });
+    afterAll(() => {
+      // Presets a clear action, which is performed after all test cases of the test suite end.
+      // This API supports only one parameter: clear action function.
+    });
+    it('assertContain', 0, () => {
+      // Defines a test case. This API supports three parameters: test case name, filter parameter, and test case function.
+      let a = 'abc';
+      let b = 'b';
+      // Defines a variety of assertion methods, which are used to declare expected boolean conditions.
+      expect(a).assertContain(b);
+      expect(a).assertEqual(a);
+    });
+  });
+}

+ 6 - 0
features/map/.gitignore

@@ -0,0 +1,6 @@
+/node_modules
+/oh_modules
+/.preview
+/build
+/.cxx
+/.test

+ 17 - 0
features/map/BuildProfile.ets

@@ -0,0 +1,17 @@
+/**
+ * Use these variables when you tailor your ArkTS code. They must be of the const type.
+ */
+export const HAR_VERSION = '1.0.0';
+export const BUILD_MODE_NAME = 'debug';
+export const DEBUG = true;
+export const TARGET_NAME = 'default';
+
+/**
+ * BuildProfile Class is used only for compatibility purposes.
+ */
+export default class BuildProfile { 
+	static readonly HAR_VERSION = HAR_VERSION;
+	static readonly BUILD_MODE_NAME = BUILD_MODE_NAME;
+	static readonly DEBUG = DEBUG;
+	static readonly TARGET_NAME = TARGET_NAME;
+}

+ 1 - 0
features/map/Index.ets

@@ -0,0 +1 @@
+export { MainPage } from './src/main/ets/components/MainPage';

+ 31 - 0
features/map/build-profile.json5

@@ -0,0 +1,31 @@
+{
+  "apiType": "stageMode",
+  "buildOption": {
+  },
+  "buildOptionSet": [
+    {
+      "name": "release",
+      "arkOptions": {
+        "obfuscation": {
+          "ruleOptions": {
+            "enable": false,
+            "files": [
+              "./obfuscation-rules.txt"
+            ]
+          },
+          "consumerFiles": [
+            "./consumer-rules.txt"
+          ]
+        }
+      },
+    },
+  ],
+  "targets": [
+    {
+      "name": "default"
+    },
+    {
+      "name": "ohosTest"
+    }
+  ]
+}

+ 0 - 0
features/map/consumer-rules.txt


+ 6 - 0
features/map/hvigorfile.ts

@@ -0,0 +1,6 @@
+import { harTasks } from '@ohos/hvigor-ohos-plugin';
+
+export default {
+    system: harTasks,  /* Built-in plugin of Hvigor. It cannot be modified. */
+    plugins:[]         /* Custom plugin to extend the functionality of Hvigor. */
+}

+ 23 - 0
features/map/obfuscation-rules.txt

@@ -0,0 +1,23 @@
+# Define project specific obfuscation rules here.
+# You can include the obfuscation configuration files in the current module's build-profile.json5.
+#
+# For more details, see
+#   https://developer.huawei.com/consumer/cn/doc/harmonyos-guides-V5/source-obfuscation-V5
+
+# Obfuscation options:
+# -disable-obfuscation: disable all obfuscations
+# -enable-property-obfuscation: obfuscate the property names
+# -enable-toplevel-obfuscation: obfuscate the names in the global scope
+# -compact: remove unnecessary blank spaces and all line feeds
+# -remove-log: remove all console.* statements
+# -print-namecache: print the name cache that contains the mapping from the old names to new names
+# -apply-namecache: reuse the given cache file
+
+# Keep options:
+# -keep-property-name: specifies property names that you want to keep
+# -keep-global-name: specifies names that you want to keep in the global scope
+
+-enable-property-obfuscation
+-enable-toplevel-obfuscation
+-enable-filename-obfuscation
+-enable-export-obfuscation

+ 3 - 4
entry/oh-package.json5

@@ -1,10 +1,9 @@
 {
-  "name": "entry",
+  "name": "map",
   "version": "1.0.0",
   "description": "Please describe the basic information.",
-  "main": "",
+  "main": "Index.ets",
   "author": "",
-  "license": "",
+  "license": "Apache-2.0",
   "dependencies": {}
 }
-

+ 19 - 0
features/map/src/main/ets/components/MainPage.ets

@@ -0,0 +1,19 @@
+@Component
+export struct MainPage {
+  @State message: string = 'Hello World';
+
+  build() {
+    Row() {
+      Column() {
+        Text(this.message)
+          .fontSize($r('app.float.page_text_font_size'))
+          .fontWeight(FontWeight.Bold)
+          .onClick(() => {
+            this.message = 'Welcome';
+          })
+      }
+      .width('100%')
+    }
+    .height('100%')
+  }
+}

+ 12 - 0
features/map/src/main/module.json5

@@ -0,0 +1,12 @@
+{
+  "module": {
+    "name": "map",
+    "type": "har",
+    "deviceTypes": [
+      "default",
+      "tablet",
+      "2in1",
+      "wearable"
+    ]
+  }
+}

+ 8 - 0
features/map/src/main/resources/base/element/float.json

@@ -0,0 +1,8 @@
+{
+  "float": [
+    {
+      "name": "page_text_font_size",
+      "value": "50fp"
+    }
+  ]
+}

+ 8 - 0
features/map/src/main/resources/base/element/string.json

@@ -0,0 +1,8 @@
+{
+  "string": [
+    {
+      "name": "page_show",
+      "value": "page from package"
+    }
+  ]
+}

+ 35 - 0
features/map/src/ohosTest/ets/test/Ability.test.ets

@@ -0,0 +1,35 @@
+import { hilog } from '@kit.PerformanceAnalysisKit';
+import { describe, beforeAll, beforeEach, afterEach, afterAll, it, expect } from '@ohos/hypium';
+
+export default function abilityTest() {
+  describe('ActsAbilityTest', () => {
+    // Defines a test suite. Two parameters are supported: test suite name and test suite function.
+    beforeAll(() => {
+      // Presets an action, which is performed only once before all test cases of the test suite start.
+      // This API supports only one parameter: preset action function.
+    })
+    beforeEach(() => {
+      // Presets an action, which is performed before each unit test case starts.
+      // The number of execution times is the same as the number of test cases defined by **it**.
+      // This API supports only one parameter: preset action function.
+    })
+    afterEach(() => {
+      // Presets a clear action, which is performed after each unit test case ends.
+      // The number of execution times is the same as the number of test cases defined by **it**.
+      // This API supports only one parameter: clear action function.
+    })
+    afterAll(() => {
+      // Presets a clear action, which is performed after all test cases of the test suite end.
+      // This API supports only one parameter: clear action function.
+    })
+    it('assertContain', 0, () => {
+      // Defines a test case. This API supports three parameters: test case name, filter parameter, and test case function.
+      hilog.info(0x0000, 'testTag', '%{public}s', 'it begin');
+      let a = 'abc';
+      let b = 'b';
+      // Defines a variety of assertion methods, which are used to declare expected boolean conditions.
+      expect(a).assertContain(b);
+      expect(a).assertEqual(a);
+    })
+  })
+}

+ 5 - 0
features/map/src/ohosTest/ets/test/List.test.ets

@@ -0,0 +1,5 @@
+import abilityTest from './Ability.test';
+
+export default function testsuite() {
+  abilityTest();
+}

+ 14 - 0
features/map/src/ohosTest/module.json5

@@ -0,0 +1,14 @@
+{
+  "module": {
+    "name": "map_test",
+    "type": "feature",
+    "deviceTypes": [
+      "default",
+      "tablet",
+      "2in1",
+      "wearable"
+    ],
+    "deliveryWithInstall": true,
+    "installationFree": false
+  }
+}

+ 5 - 0
features/map/src/test/List.test.ets

@@ -0,0 +1,5 @@
+import localUnitTest from './LocalUnit.test';
+
+export default function testsuite() {
+  localUnitTest();
+}

+ 33 - 0
features/map/src/test/LocalUnit.test.ets

@@ -0,0 +1,33 @@
+import { describe, beforeAll, beforeEach, afterEach, afterAll, it, expect } from '@ohos/hypium';
+
+export default function localUnitTest() {
+  describe('localUnitTest', () => {
+    // Defines a test suite. Two parameters are supported: test suite name and test suite function.
+    beforeAll(() => {
+      // Presets an action, which is performed only once before all test cases of the test suite start.
+      // This API supports only one parameter: preset action function.
+    });
+    beforeEach(() => {
+      // Presets an action, which is performed before each unit test case starts.
+      // The number of execution times is the same as the number of test cases defined by **it**.
+      // This API supports only one parameter: preset action function.
+    });
+    afterEach(() => {
+      // Presets a clear action, which is performed after each unit test case ends.
+      // The number of execution times is the same as the number of test cases defined by **it**.
+      // This API supports only one parameter: clear action function.
+    });
+    afterAll(() => {
+      // Presets a clear action, which is performed after all test cases of the test suite end.
+      // This API supports only one parameter: clear action function.
+    });
+    it('assertContain', 0, () => {
+      // Defines a test case. This API supports three parameters: test case name, filter parameter, and test case function.
+      let a = 'abc';
+      let b = 'b';
+      // Defines a variety of assertion methods, which are used to declare expected boolean conditions.
+      expect(a).assertContain(b);
+      expect(a).assertEqual(a);
+    });
+  });
+}

+ 6 - 0
features/quickstart/.gitignore

@@ -0,0 +1,6 @@
+/node_modules
+/oh_modules
+/.preview
+/build
+/.cxx
+/.test

+ 17 - 0
features/quickstart/BuildProfile.ets

@@ -0,0 +1,17 @@
+/**
+ * Use these variables when you tailor your ArkTS code. They must be of the const type.
+ */
+export const HAR_VERSION = '1.0.0';
+export const BUILD_MODE_NAME = 'debug';
+export const DEBUG = true;
+export const TARGET_NAME = 'default';
+
+/**
+ * BuildProfile Class is used only for compatibility purposes.
+ */
+export default class BuildProfile { 
+	static readonly HAR_VERSION = HAR_VERSION;
+	static readonly BUILD_MODE_NAME = BUILD_MODE_NAME;
+	static readonly DEBUG = DEBUG;
+	static readonly TARGET_NAME = TARGET_NAME;
+}

+ 3 - 0
features/quickstart/Index.ets

@@ -0,0 +1,3 @@
+// export { MainPage } from './src/main/ets/components/MainPage';
+
+export { QuickStartPage } from './src/main/ets/pages/QuickStartPage';

+ 31 - 0
features/quickstart/build-profile.json5

@@ -0,0 +1,31 @@
+{
+  "apiType": "stageMode",
+  "buildOption": {
+  },
+  "buildOptionSet": [
+    {
+      "name": "release",
+      "arkOptions": {
+        "obfuscation": {
+          "ruleOptions": {
+            "enable": false,
+            "files": [
+              "./obfuscation-rules.txt"
+            ]
+          },
+          "consumerFiles": [
+            "./consumer-rules.txt"
+          ]
+        }
+      },
+    },
+  ],
+  "targets": [
+    {
+      "name": "default"
+    },
+    {
+      "name": "ohosTest"
+    }
+  ]
+}

+ 0 - 0
features/quickstart/consumer-rules.txt


+ 6 - 0
features/quickstart/hvigorfile.ts

@@ -0,0 +1,6 @@
+import { harTasks } from '@ohos/hvigor-ohos-plugin';
+
+export default {
+    system: harTasks,  /* Built-in plugin of Hvigor. It cannot be modified. */
+    plugins:[]         /* Custom plugin to extend the functionality of Hvigor. */
+}

+ 23 - 0
features/quickstart/obfuscation-rules.txt

@@ -0,0 +1,23 @@
+# Define project specific obfuscation rules here.
+# You can include the obfuscation configuration files in the current module's build-profile.json5.
+#
+# For more details, see
+#   https://developer.huawei.com/consumer/cn/doc/harmonyos-guides-V5/source-obfuscation-V5
+
+# Obfuscation options:
+# -disable-obfuscation: disable all obfuscations
+# -enable-property-obfuscation: obfuscate the property names
+# -enable-toplevel-obfuscation: obfuscate the names in the global scope
+# -compact: remove unnecessary blank spaces and all line feeds
+# -remove-log: remove all console.* statements
+# -print-namecache: print the name cache that contains the mapping from the old names to new names
+# -apply-namecache: reuse the given cache file
+
+# Keep options:
+# -keep-property-name: specifies property names that you want to keep
+# -keep-global-name: specifies names that you want to keep in the global scope
+
+-enable-property-obfuscation
+-enable-toplevel-obfuscation
+-enable-filename-obfuscation
+-enable-export-obfuscation

+ 9 - 0
features/quickstart/oh-package.json5

@@ -0,0 +1,9 @@
+{
+  "name": "quickstart",
+  "version": "1.0.0",
+  "description": "Please describe the basic information.",
+  "main": "Index.ets",
+  "author": "",
+  "license": "Apache-2.0",
+  "dependencies": {}
+}

entry/src/main/ets/model/ArticleClass.ets → features/quickstart/src/main/ets/model/ArticleClass.ets


entry/src/main/ets/model/BannerClass.ets → features/quickstart/src/main/ets/model/BannerClass.ets


+ 0 - 0
entry/src/main/ets/pages/Index.ets


Một số tệp đã không được hiển thị bởi vì quá nhiều tập tin thay đổi trong này khác