diff --git a/Demo3/README.md b/Demo3/README.md new file mode 100644 index 0000000000000000000000000000000000000000..6dd4486565dd31374274f617b08bf172623a08b2 --- /dev/null +++ b/Demo3/README.md @@ -0,0 +1,2 @@ +# 相对应的微信小程序项目源码。实现的是相同功能,为了和鸿蒙JS项目作对比的。 + diff --git a/Demo3/app.js b/Demo3/app.js new file mode 100644 index 0000000000000000000000000000000000000000..bf2addcc813351a973cf6bafb95e0c2a94dc4bc4 --- /dev/null +++ b/Demo3/app.js @@ -0,0 +1,6 @@ +//app.js +App({ + onLaunch: function () { + console.info("Application onLaunch"); + } +}) \ No newline at end of file diff --git a/Demo3/app.json b/Demo3/app.json new file mode 100644 index 0000000000000000000000000000000000000000..fc4b66d79619a90736aba3b32d1b2d93622c9c94 --- /dev/null +++ b/Demo3/app.json @@ -0,0 +1,13 @@ +{ + "pages":[ + "pages/index/index" + ], + "window":{ + "backgroundTextStyle":"light", + "navigationBarBackgroundColor": "#fff", + "navigationBarTitleText": "Weixin", + "navigationBarTextStyle":"black" + }, + "style": "v2", + "sitemapLocation": "sitemap.json" +} diff --git a/Demo3/app.wxss b/Demo3/app.wxss new file mode 100644 index 0000000000000000000000000000000000000000..06c6fc9ce35b7d02e031b1e8f4636147321dedc1 --- /dev/null +++ b/Demo3/app.wxss @@ -0,0 +1,10 @@ +/**app.wxss**/ +.container { + height: 100%; + display: flex; + flex-direction: column; + align-items: center; + justify-content: space-between; + padding: 200rpx 0; + box-sizing: border-box; +} diff --git a/Demo3/pages/index/index.js b/Demo3/pages/index/index.js new file mode 100644 index 0000000000000000000000000000000000000000..c451b695a64006624d8a680dbc8da928dd4e10f6 --- /dev/null +++ b/Demo3/pages/index/index.js @@ -0,0 +1,14 @@ +//index.js +//获取应用实例 +const app = getApp() + +Page({ + data: { + dataArr: ['Monday', 'Tuesday', 'Wednesday', 'Thursday', 'Friday', 'Saturday', 'Sunday'] + }, + onLoad: function () { + wx.setNavigationBarTitle({ + title: '微信小程序Demo3' + }) + } +}) diff --git a/Demo3/pages/index/index.json b/Demo3/pages/index/index.json new file mode 100644 index 0000000000000000000000000000000000000000..8835af0699ccec004cbe685ef938cd2d63ea7037 --- /dev/null +++ b/Demo3/pages/index/index.json @@ -0,0 +1,3 @@ +{ + "usingComponents": {} +} \ No newline at end of file diff --git a/Demo3/pages/index/index.wxml b/Demo3/pages/index/index.wxml new file mode 100644 index 0000000000000000000000000000000000000000..9bc4a47f59e86b5b3248e9d6328e5cddd4a6829c --- /dev/null +++ b/Demo3/pages/index/index.wxml @@ -0,0 +1,6 @@ + + + + {{item}} + + \ No newline at end of file diff --git a/Demo3/pages/index/index.wxss b/Demo3/pages/index/index.wxss new file mode 100644 index 0000000000000000000000000000000000000000..221596046c730755bf7df35073972e50a441c222 --- /dev/null +++ b/Demo3/pages/index/index.wxss @@ -0,0 +1,27 @@ +/**index.wxss**/ + +/**整个页面高度**/ +page{ + height: 100%; +} +.container { + flex-direction: column; + justify-content: center; + align-items: center; + left: 0px; + top: 0px; + height: 100%; + background-color: black; +} +.showList { + flex-direction: column; + height: 100%; +} +.showListItem { + flex-direction: column; + align-items: center; + margin-top: 0px; + margin-bottom: 15px; + font-size: large; + color: white; +} \ No newline at end of file diff --git a/Demo3/project.config.json b/Demo3/project.config.json new file mode 100644 index 0000000000000000000000000000000000000000..0cb092a61e00aee5044df7b0ed098ba8be254bff --- /dev/null +++ b/Demo3/project.config.json @@ -0,0 +1,61 @@ +{ + "description": "项目配置文件", + "packOptions": { + "ignore": [] + }, + "setting": { + "urlCheck": true, + "es6": true, + "postcss": true, + "preloadBackgroundData": false, + "minified": true, + "newFeature": true, + "coverView": true, + "autoAudits": false, + "showShadowRootInWxmlPanel": true, + "scopeDataCheck": false, + "checkInvalidKey": true, + "checkSiteMap": true, + "uploadWithSourceMap": true, + "useMultiFrameRuntime": false, + "useApiHook": false, + "babelSetting": { + "ignore": [], + "disablePlugins": [], + "outputPath": "" + }, + "useIsolateContext": true, + "useCompilerModule": true, + "userConfirmedUseCompilerModuleSwitch": false, + "packNpmManually": false, + "packNpmRelationList": [] + }, + "compileType": "miniprogram", + "libVersion": "2.13.0", + "appid": "wxcefb9c2cb6bcec21", + "projectname": "Demo3", + "debugOptions": { + "hidedInDevtools": [] + }, + "isGameTourist": false, + "simulatorType": "wechat", + "simulatorPluginLibVersion": {}, + "condition": { + "search": { + "current": -1, + "list": [] + }, + "conversation": { + "current": -1, + "list": [] + }, + "game": { + "currentL": -1, + "list": [] + }, + "miniprogram": { + "current": -1, + "list": [] + } + } +} \ No newline at end of file diff --git a/Demo3/sitemap.json b/Demo3/sitemap.json new file mode 100644 index 0000000000000000000000000000000000000000..ca02add20b581be471b8d17f887b8e8337070546 --- /dev/null +++ b/Demo3/sitemap.json @@ -0,0 +1,7 @@ +{ + "desc": "关于本文件的更多信息,请参考文档 https://developers.weixin.qq.com/miniprogram/dev/framework/sitemap.html", + "rules": [{ + "action": "allow", + "page": "*" + }] +} \ No newline at end of file diff --git a/HarmonyOSDemo/.gitignore b/HarmonyOSDemo/.gitignore new file mode 100644 index 0000000000000000000000000000000000000000..603b14077394cd2294ac6922fe619669630ef3ab --- /dev/null +++ b/HarmonyOSDemo/.gitignore @@ -0,0 +1,14 @@ +*.iml +.gradle +/local.properties +/.idea/caches +/.idea/libraries +/.idea/modules.xml +/.idea/workspace.xml +/.idea/navEditor.xml +/.idea/assetWizardSettings.xml +.DS_Store +/build +/captures +.externalNativeBuild +.cxx diff --git a/HarmonyOSDemo/README.md b/HarmonyOSDemo/README.md new file mode 100644 index 0000000000000000000000000000000000000000..9f0af831b5c1758f00890c29bfa54e425f5ec4f0 --- /dev/null +++ b/HarmonyOSDemo/README.md @@ -0,0 +1 @@ +使用Java开发鸿蒙项目代码。这里选择的模拟器是TV类型,仅作为演示。 diff --git a/HarmonyOSDemo/build.gradle b/HarmonyOSDemo/build.gradle new file mode 100644 index 0000000000000000000000000000000000000000..1ac035e6a21dc7fd8ae73f0e465dc6ef2bbc9c04 --- /dev/null +++ b/HarmonyOSDemo/build.gradle @@ -0,0 +1,37 @@ +// Top-level build file where you can add configuration options common to all sub-projects/modules. +apply plugin: 'com.huawei.ohos.app' + +ohos { + compileSdkVersion 3 + defaultConfig { + compatibleSdkVersion 3 + } +} + +buildscript { + repositories { + maven { + url 'https://mirrors.huaweicloud.com/repository/maven/' + } + maven { + url 'https://developer.huawei.com/repo/' + } + jcenter() + } + dependencies { + classpath 'com.huawei.ohos:hap:2.0.0.6' + + } +} + +allprojects { + repositories { + maven { + url 'https://mirrors.huaweicloud.com/repository/maven/' + } + maven { + url 'https://developer.huawei.com/repo/' + } + jcenter() + } +} diff --git a/HarmonyOSDemo/entry/.gitignore b/HarmonyOSDemo/entry/.gitignore new file mode 100644 index 0000000000000000000000000000000000000000..796b96d1c402326528b4ba3c12ee9d92d0e212e9 --- /dev/null +++ b/HarmonyOSDemo/entry/.gitignore @@ -0,0 +1 @@ +/build diff --git a/HarmonyOSDemo/entry/build.gradle b/HarmonyOSDemo/entry/build.gradle new file mode 100644 index 0000000000000000000000000000000000000000..19f66ae9242947fe7389a69439cc427ceeebf3fb --- /dev/null +++ b/HarmonyOSDemo/entry/build.gradle @@ -0,0 +1,13 @@ +apply plugin: 'com.huawei.ohos.hap' +ohos { + compileSdkVersion 3 + defaultConfig { + compatibleSdkVersion 3 + } + +} + +dependencies { + implementation fileTree(dir: 'libs', include: ['*.jar']) + testCompile'junit:junit:4.12' +} diff --git a/HarmonyOSDemo/entry/src/main/config.json b/HarmonyOSDemo/entry/src/main/config.json new file mode 100644 index 0000000000000000000000000000000000000000..88fb8b9fb4a6f42cd271d9944d342cd75c888534 --- /dev/null +++ b/HarmonyOSDemo/entry/src/main/config.json @@ -0,0 +1,53 @@ +{ + "app": { + "bundleName": "com.lzw.harmonyosdemo", + "vendor": "lzw", + "version": { + "code": 1, + "name": "1.0" + }, + "apiVersion": { + "compatible": 3, + "target": 3 + } + }, + "deviceConfig": {}, + "module": { + "package": "com.lzw.harmonyosdemo", + "name": ".HarmonyOSDemo", + "reqCapabilities": [ + "video_support" + ], + "deviceType": [ + "tv" + ], + "distro": { + "deliveryWithInstall": true, + "moduleName": "entry", + "moduleType": "entry" + }, + "abilities": [ + { + "skills": [ + { + "entities": [ + "entity.system.home" + ], + "actions": [ + "action.system.home" + ] + } + ], + "orientation": "landscape", + "formEnabled": false, + "permissions": [], + "name": "com.lzw.harmonyosdemo.MainAbility", + "icon": "$media:icon", + "description": "$string:mainability_description", + "label": "HarmonyOSDemo", + "type": "page", + "launchType": "standard" + } + ] + } +} \ No newline at end of file diff --git a/HarmonyOSDemo/entry/src/main/java/com/lzw/harmonyosdemo/HarmonyOSDemo.java b/HarmonyOSDemo/entry/src/main/java/com/lzw/harmonyosdemo/HarmonyOSDemo.java new file mode 100644 index 0000000000000000000000000000000000000000..c8e7071b361db1c5e25fd03bf76333a3a8a2f26c --- /dev/null +++ b/HarmonyOSDemo/entry/src/main/java/com/lzw/harmonyosdemo/HarmonyOSDemo.java @@ -0,0 +1,10 @@ +package com.lzw.harmonyosdemo; + +import ohos.aafwk.ability.AbilityPackage; + +public class HarmonyOSDemo extends AbilityPackage { + @Override + public void onInitialize() { + super.onInitialize(); + } +} diff --git a/HarmonyOSDemo/entry/src/main/java/com/lzw/harmonyosdemo/MainAbility.java b/HarmonyOSDemo/entry/src/main/java/com/lzw/harmonyosdemo/MainAbility.java new file mode 100644 index 0000000000000000000000000000000000000000..3ceba8af099f107400537e6dfbe88eabb05e5dad --- /dev/null +++ b/HarmonyOSDemo/entry/src/main/java/com/lzw/harmonyosdemo/MainAbility.java @@ -0,0 +1,13 @@ +package com.lzw.harmonyosdemo; + +import com.lzw.harmonyosdemo.slice.MainAbilitySlice; +import ohos.aafwk.ability.Ability; +import ohos.aafwk.content.Intent; + +public class MainAbility extends Ability { + @Override + public void onStart(Intent intent) { + super.onStart(intent); + super.setMainRoute(MainAbilitySlice.class.getName()); + } +} diff --git a/HarmonyOSDemo/entry/src/main/java/com/lzw/harmonyosdemo/data/ListHolder.java b/HarmonyOSDemo/entry/src/main/java/com/lzw/harmonyosdemo/data/ListHolder.java new file mode 100644 index 0000000000000000000000000000000000000000..8a9aa9651c84c19296577779efa39d04dd54dd11 --- /dev/null +++ b/HarmonyOSDemo/entry/src/main/java/com/lzw/harmonyosdemo/data/ListHolder.java @@ -0,0 +1,37 @@ +package com.lzw.harmonyosdemo.data; + +import com.lzw.harmonyosdemo.ResourceTable; + +import ohos.aafwk.ability.AbilitySlice; +import ohos.agp.components.Component; +import ohos.agp.components.ComponentContainer; +import ohos.agp.components.LayoutScatter; +import ohos.agp.components.ListContainer; + +public class ListHolder { + private static final String TAG = "ListHolder"; + + private AbilitySlice mSlice; + + private ComponentContainer mRootLayout; + + private ListContainer listContainer; + + private ListItemProvider listItemProvider; + + public ListHolder(AbilitySlice abilitySlice) { + mSlice = abilitySlice; + listItemProvider = new ListItemProvider(abilitySlice); + } + + public ComponentContainer createComponent() { + Component mainComponent = LayoutScatter.getInstance(mSlice).parse(ResourceTable.Layout_ability_main, null, false); + if (!(mainComponent instanceof ComponentContainer)) { + return null; + } + mRootLayout = (ComponentContainer) mainComponent; + listContainer = (ListContainer) mRootLayout.findComponentById(ResourceTable.Id_list); + listContainer.setItemProvider(listItemProvider); + return mRootLayout; + } +} diff --git a/HarmonyOSDemo/entry/src/main/java/com/lzw/harmonyosdemo/data/ListItemProvider.java b/HarmonyOSDemo/entry/src/main/java/com/lzw/harmonyosdemo/data/ListItemProvider.java new file mode 100644 index 0000000000000000000000000000000000000000..1234bdcf356f7ceaf630715afdcc7c07ea66ff69 --- /dev/null +++ b/HarmonyOSDemo/entry/src/main/java/com/lzw/harmonyosdemo/data/ListItemProvider.java @@ -0,0 +1,49 @@ +package com.lzw.harmonyosdemo.data; + +import com.lzw.harmonyosdemo.ResourceTable; + +import ohos.aafwk.ability.AbilitySlice; +import ohos.agp.components.Component; +import ohos.agp.components.ComponentContainer; +import ohos.agp.components.LayoutScatter; +import ohos.agp.components.RecycleItemProvider; +import ohos.agp.components.Text; + +import java.util.ArrayList; + +public class ListItemProvider extends RecycleItemProvider { + private ArrayList data = new ArrayList<>(); + private AbilitySlice mSlice; + + ListItemProvider(AbilitySlice abilitySlice) { + mSlice = abilitySlice; + // 修改成100个item + for (int i = 0; i < 100; ++i) { + data.add("test" + i); + } + } + + @Override + public long getItemId(int i) { + return 0; + } + + @Override + public int getCount() { + return data.size(); + } + + @Override + public Component getComponent(int position, Component convertView, ComponentContainer parent) { + Component component = LayoutScatter.getInstance(mSlice).parse(ResourceTable.Layout_list_item, null, false); + if (!(component instanceof ComponentContainer)) { + return null; + } + ComponentContainer rootLayout = (ComponentContainer) component; + Text leftText = (Text) rootLayout.findComponentById(ResourceTable.Id_left_content); + leftText.setText(String.valueOf(position)); + Text rightText = (Text) rootLayout.findComponentById(ResourceTable.Id_right_content); + rightText.setText(data.get(position)); + return component; + } +} diff --git a/HarmonyOSDemo/entry/src/main/java/com/lzw/harmonyosdemo/slice/MainAbilitySlice.java b/HarmonyOSDemo/entry/src/main/java/com/lzw/harmonyosdemo/slice/MainAbilitySlice.java new file mode 100644 index 0000000000000000000000000000000000000000..6b02f8846bc1349dfb734336de5be2bbad778fd3 --- /dev/null +++ b/HarmonyOSDemo/entry/src/main/java/com/lzw/harmonyosdemo/slice/MainAbilitySlice.java @@ -0,0 +1,25 @@ +package com.lzw.harmonyosdemo.slice; + +import com.lzw.harmonyosdemo.data.ListHolder; +import ohos.aafwk.ability.AbilitySlice; +import ohos.aafwk.content.Intent; + +public class MainAbilitySlice extends AbilitySlice { + private ListHolder listHolder; + + @Override + public void onStart(Intent intent) { + listHolder = new ListHolder(this); + setUIContent(listHolder.createComponent()); + } + + @Override + public void onActive() { + super.onActive(); + } + + @Override + public void onForeground(Intent intent) { + super.onForeground(intent); + } +} diff --git a/HarmonyOSDemo/entry/src/main/resources/base/animation/zoom_in.xml b/HarmonyOSDemo/entry/src/main/resources/base/animation/zoom_in.xml new file mode 100644 index 0000000000000000000000000000000000000000..3297f54c55de44eb556dea3013aa758e654f2ec3 --- /dev/null +++ b/HarmonyOSDemo/entry/src/main/resources/base/animation/zoom_in.xml @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/HarmonyOSDemo/entry/src/main/resources/base/element/boolean.json b/HarmonyOSDemo/entry/src/main/resources/base/element/boolean.json new file mode 100644 index 0000000000000000000000000000000000000000..1c97ed3ccc0d43d91be620fe7e2fb19fdd6d0803 --- /dev/null +++ b/HarmonyOSDemo/entry/src/main/resources/base/element/boolean.json @@ -0,0 +1,12 @@ +{ + "boolean":[ + { + "name":"config", + "value":true + }, + { + "name":"boolean_use", + "value":"$boolean:config" + } + ] +} \ No newline at end of file diff --git a/HarmonyOSDemo/entry/src/main/resources/base/element/color.json b/HarmonyOSDemo/entry/src/main/resources/base/element/color.json new file mode 100644 index 0000000000000000000000000000000000000000..f4c666e57dafa310d53aa843769d935381a27a7e --- /dev/null +++ b/HarmonyOSDemo/entry/src/main/resources/base/element/color.json @@ -0,0 +1,12 @@ +{ + "color":[ + { + "name":"hot", + "value":"#ff0000" + }, + { + "name":"red_use", + "value":"$color:hot" + } + ] +} \ No newline at end of file diff --git a/HarmonyOSDemo/entry/src/main/resources/base/element/float.json b/HarmonyOSDemo/entry/src/main/resources/base/element/float.json new file mode 100644 index 0000000000000000000000000000000000000000..b42bf18844c0e6be9aea063b9849314aaf5eb563 --- /dev/null +++ b/HarmonyOSDemo/entry/src/main/resources/base/element/float.json @@ -0,0 +1,20 @@ +{ + "float":[ + { + "name":"font_size", + "value":"30.6" + }, + { + "name":"float_use", + "value":"$float:font_size" + }, + { + "name":"pixel_size", + "value":"100px" + }, + { + "name":"float_use2", + "value":"$float:pixel_size" + } + ] +} \ No newline at end of file diff --git a/HarmonyOSDemo/entry/src/main/resources/base/element/intarray.json b/HarmonyOSDemo/entry/src/main/resources/base/element/intarray.json new file mode 100644 index 0000000000000000000000000000000000000000..53ffa343f309990736083adc3a15493cb9caf014 --- /dev/null +++ b/HarmonyOSDemo/entry/src/main/resources/base/element/intarray.json @@ -0,0 +1,12 @@ +{ + "intarray":[ + { + "name":"int_numbers", + "value":[ + 100, + 200, + "$integer:integer_numbers" + ] + } + ] +} \ No newline at end of file diff --git a/HarmonyOSDemo/entry/src/main/resources/base/element/integer.json b/HarmonyOSDemo/entry/src/main/resources/base/element/integer.json new file mode 100644 index 0000000000000000000000000000000000000000..2302df03fe901931825f2642d9f2d8cb410f26ce --- /dev/null +++ b/HarmonyOSDemo/entry/src/main/resources/base/element/integer.json @@ -0,0 +1,12 @@ +{ + "integer":[ + { + "name":"integer_numbers", + "value":100 + }, + { + "name":"integer_use", + "value":"$integer:integer_numbers" + } + ] +} \ No newline at end of file diff --git a/HarmonyOSDemo/entry/src/main/resources/base/element/pattern.json b/HarmonyOSDemo/entry/src/main/resources/base/element/pattern.json new file mode 100644 index 0000000000000000000000000000000000000000..30135a3653f2ba505f76a519b176a9d98039fc1c --- /dev/null +++ b/HarmonyOSDemo/entry/src/main/resources/base/element/pattern.json @@ -0,0 +1,31 @@ +{ + "pattern":[ + { + "name":"base", + "value":[ + { + "name":"width", + "value":"100vp" + }, + { + "name":"height", + "value":"100vp" + }, + { + "name":"size", + "value":"25px" + } + ] + }, + { + "name":"child", + "parent":"base", + "value":[ + { + "name":"noTitile", + "value":"Yes" + } + ] + } + ] +} \ No newline at end of file diff --git a/HarmonyOSDemo/entry/src/main/resources/base/element/plural.json b/HarmonyOSDemo/entry/src/main/resources/base/element/plural.json new file mode 100644 index 0000000000000000000000000000000000000000..f99482baa7e735018747d5a164fb615b7b1d2442 --- /dev/null +++ b/HarmonyOSDemo/entry/src/main/resources/base/element/plural.json @@ -0,0 +1,17 @@ +{ + "plural":[ + { + "name":"eat_apple", + "value":[ + { + "quantity":"one", + "value":"%d apple" + }, + { + "quantity":"other", + "value":"%d apples" + } + ] + } + ] +} \ No newline at end of file diff --git a/HarmonyOSDemo/entry/src/main/resources/base/element/strarray.json b/HarmonyOSDemo/entry/src/main/resources/base/element/strarray.json new file mode 100644 index 0000000000000000000000000000000000000000..e83f96f6f0be34f126577be82ddf08c6972922b7 --- /dev/null +++ b/HarmonyOSDemo/entry/src/main/resources/base/element/strarray.json @@ -0,0 +1,21 @@ +{ + "strarray":[ + { + "name":"size", + "value":[ + { + "value":"small" + }, + { + "value":"$string:hello" + }, + { + "value":"large" + }, + { + "value":"extra large" + } + ] + } + ] +} \ No newline at end of file diff --git a/HarmonyOSDemo/entry/src/main/resources/base/element/string.json b/HarmonyOSDemo/entry/src/main/resources/base/element/string.json new file mode 100644 index 0000000000000000000000000000000000000000..00597b919b1634aa06ba02a7555af11021f997d2 --- /dev/null +++ b/HarmonyOSDemo/entry/src/main/resources/base/element/string.json @@ -0,0 +1,12 @@ +{ + "string": [ + { + "name": "app_name", + "value": "HarmonyOSDemo" + }, + { + "name": "mainability_description", + "value": "hap sample empty page" + } + ] +} \ No newline at end of file diff --git a/HarmonyOSDemo/entry/src/main/resources/base/graphic/notifications_dark.xml b/HarmonyOSDemo/entry/src/main/resources/base/graphic/notifications_dark.xml new file mode 100644 index 0000000000000000000000000000000000000000..3297f54c55de44eb556dea3013aa758e654f2ec3 --- /dev/null +++ b/HarmonyOSDemo/entry/src/main/resources/base/graphic/notifications_dark.xml @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/HarmonyOSDemo/entry/src/main/resources/base/layout/ability_main.xml b/HarmonyOSDemo/entry/src/main/resources/base/layout/ability_main.xml new file mode 100644 index 0000000000000000000000000000000000000000..edf7d3e6ab0b7bd5817e4f267f42247323f08019 --- /dev/null +++ b/HarmonyOSDemo/entry/src/main/resources/base/layout/ability_main.xml @@ -0,0 +1,10 @@ + + + + \ No newline at end of file diff --git a/HarmonyOSDemo/entry/src/main/resources/base/layout/list_item.xml b/HarmonyOSDemo/entry/src/main/resources/base/layout/list_item.xml new file mode 100644 index 0000000000000000000000000000000000000000..15e78bc5541f30880809ad0543d2f4c8e5380de5 --- /dev/null +++ b/HarmonyOSDemo/entry/src/main/resources/base/layout/list_item.xml @@ -0,0 +1,26 @@ + + + + + + + \ No newline at end of file diff --git a/HarmonyOSDemo/entry/src/main/resources/base/media/icon.png b/HarmonyOSDemo/entry/src/main/resources/base/media/icon.png new file mode 100644 index 0000000000000000000000000000000000000000..ce307a8827bd75456441ceb57d530e4c8d45d36c Binary files /dev/null and b/HarmonyOSDemo/entry/src/main/resources/base/media/icon.png differ diff --git a/HarmonyOSDemo/entry/src/main/resources/en_GB-vertical-tv-ldpi/animation/zoom_in.xml b/HarmonyOSDemo/entry/src/main/resources/en_GB-vertical-tv-ldpi/animation/zoom_in.xml new file mode 100644 index 0000000000000000000000000000000000000000..3297f54c55de44eb556dea3013aa758e654f2ec3 --- /dev/null +++ b/HarmonyOSDemo/entry/src/main/resources/en_GB-vertical-tv-ldpi/animation/zoom_in.xml @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/HarmonyOSDemo/entry/src/main/resources/en_GB-vertical-tv-ldpi/element/boolean.json b/HarmonyOSDemo/entry/src/main/resources/en_GB-vertical-tv-ldpi/element/boolean.json new file mode 100644 index 0000000000000000000000000000000000000000..1c97ed3ccc0d43d91be620fe7e2fb19fdd6d0803 --- /dev/null +++ b/HarmonyOSDemo/entry/src/main/resources/en_GB-vertical-tv-ldpi/element/boolean.json @@ -0,0 +1,12 @@ +{ + "boolean":[ + { + "name":"config", + "value":true + }, + { + "name":"boolean_use", + "value":"$boolean:config" + } + ] +} \ No newline at end of file diff --git a/HarmonyOSDemo/entry/src/main/resources/en_GB-vertical-tv-ldpi/element/color.json b/HarmonyOSDemo/entry/src/main/resources/en_GB-vertical-tv-ldpi/element/color.json new file mode 100644 index 0000000000000000000000000000000000000000..f4c666e57dafa310d53aa843769d935381a27a7e --- /dev/null +++ b/HarmonyOSDemo/entry/src/main/resources/en_GB-vertical-tv-ldpi/element/color.json @@ -0,0 +1,12 @@ +{ + "color":[ + { + "name":"hot", + "value":"#ff0000" + }, + { + "name":"red_use", + "value":"$color:hot" + } + ] +} \ No newline at end of file diff --git a/HarmonyOSDemo/entry/src/main/resources/en_GB-vertical-tv-ldpi/element/float.json b/HarmonyOSDemo/entry/src/main/resources/en_GB-vertical-tv-ldpi/element/float.json new file mode 100644 index 0000000000000000000000000000000000000000..b42bf18844c0e6be9aea063b9849314aaf5eb563 --- /dev/null +++ b/HarmonyOSDemo/entry/src/main/resources/en_GB-vertical-tv-ldpi/element/float.json @@ -0,0 +1,20 @@ +{ + "float":[ + { + "name":"font_size", + "value":"30.6" + }, + { + "name":"float_use", + "value":"$float:font_size" + }, + { + "name":"pixel_size", + "value":"100px" + }, + { + "name":"float_use2", + "value":"$float:pixel_size" + } + ] +} \ No newline at end of file diff --git a/HarmonyOSDemo/entry/src/main/resources/en_GB-vertical-tv-ldpi/element/intarray.json b/HarmonyOSDemo/entry/src/main/resources/en_GB-vertical-tv-ldpi/element/intarray.json new file mode 100644 index 0000000000000000000000000000000000000000..53ffa343f309990736083adc3a15493cb9caf014 --- /dev/null +++ b/HarmonyOSDemo/entry/src/main/resources/en_GB-vertical-tv-ldpi/element/intarray.json @@ -0,0 +1,12 @@ +{ + "intarray":[ + { + "name":"int_numbers", + "value":[ + 100, + 200, + "$integer:integer_numbers" + ] + } + ] +} \ No newline at end of file diff --git a/HarmonyOSDemo/entry/src/main/resources/en_GB-vertical-tv-ldpi/element/integer.json b/HarmonyOSDemo/entry/src/main/resources/en_GB-vertical-tv-ldpi/element/integer.json new file mode 100644 index 0000000000000000000000000000000000000000..2302df03fe901931825f2642d9f2d8cb410f26ce --- /dev/null +++ b/HarmonyOSDemo/entry/src/main/resources/en_GB-vertical-tv-ldpi/element/integer.json @@ -0,0 +1,12 @@ +{ + "integer":[ + { + "name":"integer_numbers", + "value":100 + }, + { + "name":"integer_use", + "value":"$integer:integer_numbers" + } + ] +} \ No newline at end of file diff --git a/HarmonyOSDemo/entry/src/main/resources/en_GB-vertical-tv-ldpi/element/pattern.json b/HarmonyOSDemo/entry/src/main/resources/en_GB-vertical-tv-ldpi/element/pattern.json new file mode 100644 index 0000000000000000000000000000000000000000..30135a3653f2ba505f76a519b176a9d98039fc1c --- /dev/null +++ b/HarmonyOSDemo/entry/src/main/resources/en_GB-vertical-tv-ldpi/element/pattern.json @@ -0,0 +1,31 @@ +{ + "pattern":[ + { + "name":"base", + "value":[ + { + "name":"width", + "value":"100vp" + }, + { + "name":"height", + "value":"100vp" + }, + { + "name":"size", + "value":"25px" + } + ] + }, + { + "name":"child", + "parent":"base", + "value":[ + { + "name":"noTitile", + "value":"Yes" + } + ] + } + ] +} \ No newline at end of file diff --git a/HarmonyOSDemo/entry/src/main/resources/en_GB-vertical-tv-ldpi/element/plural.json b/HarmonyOSDemo/entry/src/main/resources/en_GB-vertical-tv-ldpi/element/plural.json new file mode 100644 index 0000000000000000000000000000000000000000..f99482baa7e735018747d5a164fb615b7b1d2442 --- /dev/null +++ b/HarmonyOSDemo/entry/src/main/resources/en_GB-vertical-tv-ldpi/element/plural.json @@ -0,0 +1,17 @@ +{ + "plural":[ + { + "name":"eat_apple", + "value":[ + { + "quantity":"one", + "value":"%d apple" + }, + { + "quantity":"other", + "value":"%d apples" + } + ] + } + ] +} \ No newline at end of file diff --git a/HarmonyOSDemo/entry/src/main/resources/en_GB-vertical-tv-ldpi/element/strarray.json b/HarmonyOSDemo/entry/src/main/resources/en_GB-vertical-tv-ldpi/element/strarray.json new file mode 100644 index 0000000000000000000000000000000000000000..e83f96f6f0be34f126577be82ddf08c6972922b7 --- /dev/null +++ b/HarmonyOSDemo/entry/src/main/resources/en_GB-vertical-tv-ldpi/element/strarray.json @@ -0,0 +1,21 @@ +{ + "strarray":[ + { + "name":"size", + "value":[ + { + "value":"small" + }, + { + "value":"$string:hello" + }, + { + "value":"large" + }, + { + "value":"extra large" + } + ] + } + ] +} \ No newline at end of file diff --git a/HarmonyOSDemo/entry/src/main/resources/en_GB-vertical-tv-ldpi/element/string.json b/HarmonyOSDemo/entry/src/main/resources/en_GB-vertical-tv-ldpi/element/string.json new file mode 100644 index 0000000000000000000000000000000000000000..00597b919b1634aa06ba02a7555af11021f997d2 --- /dev/null +++ b/HarmonyOSDemo/entry/src/main/resources/en_GB-vertical-tv-ldpi/element/string.json @@ -0,0 +1,12 @@ +{ + "string": [ + { + "name": "app_name", + "value": "HarmonyOSDemo" + }, + { + "name": "mainability_description", + "value": "hap sample empty page" + } + ] +} \ No newline at end of file diff --git a/HarmonyOSDemo/entry/src/main/resources/en_GB-vertical-tv-ldpi/graphic/notifications_dark.xml b/HarmonyOSDemo/entry/src/main/resources/en_GB-vertical-tv-ldpi/graphic/notifications_dark.xml new file mode 100644 index 0000000000000000000000000000000000000000..3297f54c55de44eb556dea3013aa758e654f2ec3 --- /dev/null +++ b/HarmonyOSDemo/entry/src/main/resources/en_GB-vertical-tv-ldpi/graphic/notifications_dark.xml @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/HarmonyOSDemo/entry/src/main/resources/en_GB-vertical-tv-ldpi/layout/ability_main.xml b/HarmonyOSDemo/entry/src/main/resources/en_GB-vertical-tv-ldpi/layout/ability_main.xml new file mode 100644 index 0000000000000000000000000000000000000000..edf7d3e6ab0b7bd5817e4f267f42247323f08019 --- /dev/null +++ b/HarmonyOSDemo/entry/src/main/resources/en_GB-vertical-tv-ldpi/layout/ability_main.xml @@ -0,0 +1,10 @@ + + + + \ No newline at end of file diff --git a/HarmonyOSDemo/entry/src/main/resources/en_GB-vertical-tv-ldpi/layout/list_item.xml b/HarmonyOSDemo/entry/src/main/resources/en_GB-vertical-tv-ldpi/layout/list_item.xml new file mode 100644 index 0000000000000000000000000000000000000000..15e78bc5541f30880809ad0543d2f4c8e5380de5 --- /dev/null +++ b/HarmonyOSDemo/entry/src/main/resources/en_GB-vertical-tv-ldpi/layout/list_item.xml @@ -0,0 +1,26 @@ + + + + + + + \ No newline at end of file diff --git a/HarmonyOSDemo/entry/src/main/resources/en_GB-vertical-tv-ldpi/media/icon.png b/HarmonyOSDemo/entry/src/main/resources/en_GB-vertical-tv-ldpi/media/icon.png new file mode 100644 index 0000000000000000000000000000000000000000..ce307a8827bd75456441ceb57d530e4c8d45d36c Binary files /dev/null and b/HarmonyOSDemo/entry/src/main/resources/en_GB-vertical-tv-ldpi/media/icon.png differ diff --git a/HarmonyOSDemo/entry/src/test/java/com/lzw/harmonyosdemo/MainAbilityTest.java b/HarmonyOSDemo/entry/src/test/java/com/lzw/harmonyosdemo/MainAbilityTest.java new file mode 100644 index 0000000000000000000000000000000000000000..511c491c4fd77178643a48f4d85bcfb493bb178a --- /dev/null +++ b/HarmonyOSDemo/entry/src/test/java/com/lzw/harmonyosdemo/MainAbilityTest.java @@ -0,0 +1,9 @@ +package com.lzw.harmonyosdemo; + +import org.junit.Test; + +public class MainAbilityTest { + @Test + public void onStart() { + } +} diff --git a/HarmonyOSDemo/gradle.properties b/HarmonyOSDemo/gradle.properties new file mode 100644 index 0000000000000000000000000000000000000000..0daf1830fbdef07e50a44d74210c8c82f1b66278 --- /dev/null +++ b/HarmonyOSDemo/gradle.properties @@ -0,0 +1,10 @@ +# Project-wide Gradle settings. +# IDE (e.g. DevEco Studio) users: +# Gradle settings configured through the IDE *will override* +# any settings specified in this file. +# For more details on how to configure your build environment visit +# http://www.gradle.org/docs/current/userguide/build_environment.html +# Specifies the JVM arguments used for the daemon process. +# The setting is particularly useful for tweaking memory settings. +# If the Chinese output is garbled, please configure the following parameter. +# org.gradle.jvmargs=-Dfile.encoding=GBK diff --git a/HarmonyOSDemo/gradle/wrapper/gradle-wrapper.jar b/HarmonyOSDemo/gradle/wrapper/gradle-wrapper.jar new file mode 100644 index 0000000000000000000000000000000000000000..f6b961fd5a86aa5fbfe90f707c3138408be7c718 Binary files /dev/null and b/HarmonyOSDemo/gradle/wrapper/gradle-wrapper.jar differ diff --git a/HarmonyOSDemo/gradle/wrapper/gradle-wrapper.properties b/HarmonyOSDemo/gradle/wrapper/gradle-wrapper.properties new file mode 100644 index 0000000000000000000000000000000000000000..ee69dd68d1a6b0abf4e5592f8896420c2df03903 --- /dev/null +++ b/HarmonyOSDemo/gradle/wrapper/gradle-wrapper.properties @@ -0,0 +1,5 @@ +distributionBase=GRADLE_USER_HOME +distributionPath=wrapper/dists +distributionUrl=https\://services.gradle.org/distributions/gradle-5.4.1-all.zip +zipStoreBase=GRADLE_USER_HOME +zipStorePath=wrapper/dists diff --git a/HarmonyOSDemo/gradlew b/HarmonyOSDemo/gradlew new file mode 100644 index 0000000000000000000000000000000000000000..cccdd3d517fc5249beaefa600691cf150f2fa3e6 --- /dev/null +++ b/HarmonyOSDemo/gradlew @@ -0,0 +1,172 @@ +#!/usr/bin/env sh + +############################################################################## +## +## Gradle start up script for UN*X +## +############################################################################## + +# Attempt to set APP_HOME +# Resolve links: $0 may be a link +PRG="$0" +# Need this for relative symlinks. +while [ -h "$PRG" ] ; do + ls=`ls -ld "$PRG"` + link=`expr "$ls" : '.*-> \(.*\)$'` + if expr "$link" : '/.*' > /dev/null; then + PRG="$link" + else + PRG=`dirname "$PRG"`"/$link" + fi +done +SAVED="`pwd`" +cd "`dirname \"$PRG\"`/" >/dev/null +APP_HOME="`pwd -P`" +cd "$SAVED" >/dev/null + +APP_NAME="Gradle" +APP_BASE_NAME=`basename "$0"` + +# Add default JVM options here. You can also use JAVA_OPTS and GRADLE_OPTS to pass JVM options to this script. +DEFAULT_JVM_OPTS="" + +# Use the maximum available, or set MAX_FD != -1 to use that value. +MAX_FD="maximum" + +warn () { + echo "$*" +} + +die () { + echo + echo "$*" + echo + exit 1 +} + +# OS specific support (must be 'true' or 'false'). +cygwin=false +msys=false +darwin=false +nonstop=false +case "`uname`" in + CYGWIN* ) + cygwin=true + ;; + Darwin* ) + darwin=true + ;; + MINGW* ) + msys=true + ;; + NONSTOP* ) + nonstop=true + ;; +esac + +CLASSPATH=$APP_HOME/gradle/wrapper/gradle-wrapper.jar + +# Determine the Java command to use to start the JVM. +if [ -n "$JAVA_HOME" ] ; then + if [ -x "$JAVA_HOME/jre/sh/java" ] ; then + # IBM's JDK on AIX uses strange locations for the executables + JAVACMD="$JAVA_HOME/jre/sh/java" + else + JAVACMD="$JAVA_HOME/bin/java" + fi + if [ ! -x "$JAVACMD" ] ; then + die "ERROR: JAVA_HOME is set to an invalid directory: $JAVA_HOME + +Please set the JAVA_HOME variable in your environment to match the +location of your Java installation." + fi +else + JAVACMD="java" + which java >/dev/null 2>&1 || die "ERROR: JAVA_HOME is not set and no 'java' command could be found in your PATH. + +Please set the JAVA_HOME variable in your environment to match the +location of your Java installation." +fi + +# Increase the maximum file descriptors if we can. +if [ "$cygwin" = "false" -a "$darwin" = "false" -a "$nonstop" = "false" ] ; then + MAX_FD_LIMIT=`ulimit -H -n` + if [ $? -eq 0 ] ; then + if [ "$MAX_FD" = "maximum" -o "$MAX_FD" = "max" ] ; then + MAX_FD="$MAX_FD_LIMIT" + fi + ulimit -n $MAX_FD + if [ $? -ne 0 ] ; then + warn "Could not set maximum file descriptor limit: $MAX_FD" + fi + else + warn "Could not query maximum file descriptor limit: $MAX_FD_LIMIT" + fi +fi + +# For Darwin, add options to specify how the application appears in the dock +if $darwin; then + GRADLE_OPTS="$GRADLE_OPTS \"-Xdock:name=$APP_NAME\" \"-Xdock:icon=$APP_HOME/media/gradle.icns\"" +fi + +# For Cygwin, switch paths to Windows format before running java +if $cygwin ; then + APP_HOME=`cygpath --path --mixed "$APP_HOME"` + CLASSPATH=`cygpath --path --mixed "$CLASSPATH"` + JAVACMD=`cygpath --unix "$JAVACMD"` + + # We build the pattern for arguments to be converted via cygpath + ROOTDIRSRAW=`find -L / -maxdepth 1 -mindepth 1 -type d 2>/dev/null` + SEP="" + for dir in $ROOTDIRSRAW ; do + ROOTDIRS="$ROOTDIRS$SEP$dir" + SEP="|" + done + OURCYGPATTERN="(^($ROOTDIRS))" + # Add a user-defined pattern to the cygpath arguments + if [ "$GRADLE_CYGPATTERN" != "" ] ; then + OURCYGPATTERN="$OURCYGPATTERN|($GRADLE_CYGPATTERN)" + fi + # Now convert the arguments - kludge to limit ourselves to /bin/sh + i=0 + for arg in "$@" ; do + CHECK=`echo "$arg"|egrep -c "$OURCYGPATTERN" -` + CHECK2=`echo "$arg"|egrep -c "^-"` ### Determine if an option + + if [ $CHECK -ne 0 ] && [ $CHECK2 -eq 0 ] ; then ### Added a condition + eval `echo args$i`=`cygpath --path --ignore --mixed "$arg"` + else + eval `echo args$i`="\"$arg\"" + fi + i=$((i+1)) + done + case $i in + (0) set -- ;; + (1) set -- "$args0" ;; + (2) set -- "$args0" "$args1" ;; + (3) set -- "$args0" "$args1" "$args2" ;; + (4) set -- "$args0" "$args1" "$args2" "$args3" ;; + (5) set -- "$args0" "$args1" "$args2" "$args3" "$args4" ;; + (6) set -- "$args0" "$args1" "$args2" "$args3" "$args4" "$args5" ;; + (7) set -- "$args0" "$args1" "$args2" "$args3" "$args4" "$args5" "$args6" ;; + (8) set -- "$args0" "$args1" "$args2" "$args3" "$args4" "$args5" "$args6" "$args7" ;; + (9) set -- "$args0" "$args1" "$args2" "$args3" "$args4" "$args5" "$args6" "$args7" "$args8" ;; + esac +fi + +# Escape application args +save () { + for i do printf %s\\n "$i" | sed "s/'/'\\\\''/g;1s/^/'/;\$s/\$/' \\\\/" ; done + echo " " +} +APP_ARGS=$(save "$@") + +# Collect all arguments for the java command, following the shell quoting and substitution rules +eval set -- $DEFAULT_JVM_OPTS $JAVA_OPTS $GRADLE_OPTS "\"-Dorg.gradle.appname=$APP_BASE_NAME\"" -classpath "\"$CLASSPATH\"" org.gradle.wrapper.GradleWrapperMain "$APP_ARGS" + +# by default we should be in the correct project dir, but when run from Finder on Mac, the cwd is wrong +if [ "$(uname)" = "Darwin" ] && [ "$HOME" = "$PWD" ]; then + cd "$(dirname "$0")" +fi + +exec "$JAVACMD" "$@" diff --git a/HarmonyOSDemo/gradlew.bat b/HarmonyOSDemo/gradlew.bat new file mode 100644 index 0000000000000000000000000000000000000000..f9553162f122c71b34635112e717c3e733b5b212 --- /dev/null +++ b/HarmonyOSDemo/gradlew.bat @@ -0,0 +1,84 @@ +@if "%DEBUG%" == "" @echo off +@rem ########################################################################## +@rem +@rem Gradle startup script for Windows +@rem +@rem ########################################################################## + +@rem Set local scope for the variables with windows NT shell +if "%OS%"=="Windows_NT" setlocal + +set DIRNAME=%~dp0 +if "%DIRNAME%" == "" set DIRNAME=. +set APP_BASE_NAME=%~n0 +set APP_HOME=%DIRNAME% + +@rem Add default JVM options here. You can also use JAVA_OPTS and GRADLE_OPTS to pass JVM options to this script. +set DEFAULT_JVM_OPTS= + +@rem Find java.exe +if defined JAVA_HOME goto findJavaFromJavaHome + +set JAVA_EXE=java.exe +%JAVA_EXE% -version >NUL 2>&1 +if "%ERRORLEVEL%" == "0" goto init + +echo. +echo ERROR: JAVA_HOME is not set and no 'java' command could be found in your PATH. +echo. +echo Please set the JAVA_HOME variable in your environment to match the +echo location of your Java installation. + +goto fail + +:findJavaFromJavaHome +set JAVA_HOME=%JAVA_HOME:"=% +set JAVA_EXE=%JAVA_HOME%/bin/java.exe + +if exist "%JAVA_EXE%" goto init + +echo. +echo ERROR: JAVA_HOME is set to an invalid directory: %JAVA_HOME% +echo. +echo Please set the JAVA_HOME variable in your environment to match the +echo location of your Java installation. + +goto fail + +:init +@rem Get command-line arguments, handling Windows variants + +if not "%OS%" == "Windows_NT" goto win9xME_args + +:win9xME_args +@rem Slurp the command line arguments. +set CMD_LINE_ARGS= +set _SKIP=2 + +:win9xME_args_slurp +if "x%~1" == "x" goto execute + +set CMD_LINE_ARGS=%* + +:execute +@rem Setup the command line + +set CLASSPATH=%APP_HOME%\gradle\wrapper\gradle-wrapper.jar + +@rem Execute Gradle +"%JAVA_EXE%" %DEFAULT_JVM_OPTS% %JAVA_OPTS% %GRADLE_OPTS% "-Dorg.gradle.appname=%APP_BASE_NAME%" -classpath "%CLASSPATH%" org.gradle.wrapper.GradleWrapperMain %CMD_LINE_ARGS% + +:end +@rem End local scope for the variables with windows NT shell +if "%ERRORLEVEL%"=="0" goto mainEnd + +:fail +rem Set variable GRADLE_EXIT_CONSOLE if you need the _script_ return code instead of +rem the _cmd.exe /c_ return code! +if not "" == "%GRADLE_EXIT_CONSOLE%" exit 1 +exit /b 1 + +:mainEnd +if "%OS%"=="Windows_NT" endlocal + +:omega diff --git a/HarmonyOSDemo/settings.gradle b/HarmonyOSDemo/settings.gradle new file mode 100644 index 0000000000000000000000000000000000000000..4773db73233a570c2d0c01a22e75321acfbf7a07 --- /dev/null +++ b/HarmonyOSDemo/settings.gradle @@ -0,0 +1 @@ +include ':entry'