From e056d2724601dc7f367cad6b22fa2291cdb46de1 Mon Sep 17 00:00:00 2001 From: unknown Date: Thu, 13 Jan 2022 18:39:29 +0800 Subject: [PATCH 1/3] =?UTF-8?q?=E6=96=B0=E5=90=88=E5=85=A5sample?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: unknown --- common/eTSBaseCodec/README.md | 15 +++ common/eTSBaseCodec/build.gradle | 34 ++++++ common/eTSBaseCodec/entry/build.gradle | 21 ++++ .../eTSBaseCodec/entry/src/main/config.json | 67 ++++++++++++ .../entry/src/main/ets/MainAbility/app.ets | 22 ++++ .../src/main/ets/MainAbility/pages/index.ets | 102 ++++++++++++++++++ .../main/resources/base/element/string.json | 24 +++++ .../src/main/resources/base/media/icon.png | Bin 0 -> 6790 bytes .../eTSBaseCodec/screenshots/device/base.png | Bin 0 -> 60889 bytes common/eTSBaseCodec/settings.gradle | 1 + 10 files changed, 286 insertions(+) create mode 100644 common/eTSBaseCodec/README.md create mode 100644 common/eTSBaseCodec/build.gradle create mode 100644 common/eTSBaseCodec/entry/build.gradle create mode 100644 common/eTSBaseCodec/entry/src/main/config.json create mode 100644 common/eTSBaseCodec/entry/src/main/ets/MainAbility/app.ets create mode 100644 common/eTSBaseCodec/entry/src/main/ets/MainAbility/pages/index.ets create mode 100644 common/eTSBaseCodec/entry/src/main/resources/base/element/string.json create mode 100644 common/eTSBaseCodec/entry/src/main/resources/base/media/icon.png create mode 100644 common/eTSBaseCodec/screenshots/device/base.png create mode 100644 common/eTSBaseCodec/settings.gradle diff --git a/common/eTSBaseCodec/README.md b/common/eTSBaseCodec/README.md new file mode 100644 index 0000000000..31917ba081 --- /dev/null +++ b/common/eTSBaseCodec/README.md @@ -0,0 +1,15 @@ +# base64编解码 + +### 简介 + +Base64是一种基于64个可打印字符来表示[二进制](https://baike.baidu.com/item/二进制/361457)数据的方法,本示例展示了Base64编码及解码的结果输出 + +### 使用说明 + +1:点击编码,将会把字符串转换为ASCII码,然后对ASCII码进行编码,并在文本框输出编码后的结果。 + +2:点击解码,将会把编码后输出的结果作为解码器的入参,解码后得到ASCII码数组,然后将ASCII码数组转换为字符串在文本框输出。 + +### 约束与限制 + +本示例仅支持在标准系统上运行。 \ No newline at end of file diff --git a/common/eTSBaseCodec/build.gradle b/common/eTSBaseCodec/build.gradle new file mode 100644 index 0000000000..93b3ff8289 --- /dev/null +++ b/common/eTSBaseCodec/build.gradle @@ -0,0 +1,34 @@ +// Top-level build file where you can add configuration options common to all sub-projects/modules. +apply plugin: 'com.huawei.ohos.app' + +//For instructions on signature configuration, see https://developer.harmonyos.com/cn/docs/documentation/doc-guides/ide_debug_device-0000001053822404#section1112183053510 +ohos { + eSdkVersion 8 + supportSystem "standard" +} + +buildscript { + repositories { + maven { + url 'https://repo.huaweicloud.com/repository/maven/' + } + maven { + url 'https://developer.huawei.com/repo/' + } + } + dependencies { + classpath 'com.huawei.ohos:hap:3.0.5.2' + classpath 'com.huawei.ohos:decctest:1.2.7.2' + } +} + +allprojects { + repositories { + maven { + url 'https://repo.huaweicloud.com/repository/maven/' + } + maven { + url 'https://developer.huawei.com/repo/' + } + } +} diff --git a/common/eTSBaseCodec/entry/build.gradle b/common/eTSBaseCodec/entry/build.gradle new file mode 100644 index 0000000000..cef7b37de8 --- /dev/null +++ b/common/eTSBaseCodec/entry/build.gradle @@ -0,0 +1,21 @@ +apply plugin: 'com.huawei.ohos.hap' +//For instructions on signature configuration, see https://developer.harmonyos.com/cn/docs/documentation/doc-guides/ide_debug_device-0000001053822404#section1112183053510 +ohos { + compileSdkVersion 8 + defaultConfig { + compatibleSdkVersion 7 + } + buildTypes { + release { + proguardOpt { + proguardEnabled false + rulesFiles 'proguard-rules.pro' + } + } + } +} + +dependencies { + implementation fileTree(dir: 'libs', include: ['*.jar', '*.har']) + testImplementation 'junit:junit:4.13.1' +} diff --git a/common/eTSBaseCodec/entry/src/main/config.json b/common/eTSBaseCodec/entry/src/main/config.json new file mode 100644 index 0000000000..95b63a1a08 --- /dev/null +++ b/common/eTSBaseCodec/entry/src/main/config.json @@ -0,0 +1,67 @@ +{ + "app": { + "bundleName": "com.example.etsbasecodec", + "vendor": "example", + "version": { + "code": 1000000, + "name": "1.0.0" + } + }, + "deviceConfig": {}, + "module": { + "package": "com.example.etsbasecodec", + "name": ".MyApplication", + "mainAbility": ".MainAbility", + "srcPath": "", + "deviceType": [ + "phone" + ], + "distro": { + "deliveryWithInstall": true, + "moduleName": "entry", + "moduleType": "entry", + "installationFree": false + }, + "abilities": [ + { + "skills": [ + { + "entities": [ + "entity.system.home" + ], + "actions": [ + "action.system.home" + ] + } + ], + "orientation": "unspecified", + "visible": true, + "srcPath": "MainAbility", + "name": ".MainAbility", + "srcLanguage": "ets", + "icon": "$media:icon", + "description": "$string:description_mainability", + "formsEnabled": false, + "label": "$string:entry_MainAbility", + "type": "page", + "launchType": "standard" + } + ], + "js": [ + { + "mode": { + "syntax": "ets", + "type": "pageAbility" + }, + "pages": [ + "pages/index" + ], + "name": ".MainAbility", + "window": { + "designWidth": 720, + "autoDesignWidth": false + } + } + ] + } +} \ No newline at end of file diff --git a/common/eTSBaseCodec/entry/src/main/ets/MainAbility/app.ets b/common/eTSBaseCodec/entry/src/main/ets/MainAbility/app.ets new file mode 100644 index 0000000000..cfb9635413 --- /dev/null +++ b/common/eTSBaseCodec/entry/src/main/ets/MainAbility/app.ets @@ -0,0 +1,22 @@ +/* + * Copyright (c) 2021 Huawei Device Co., Ltd. + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +export default { + onCreate() { + console.info('Application onCreate') + }, + onDestroy() { + console.info('Application onDestroy') + }, +} \ No newline at end of file diff --git a/common/eTSBaseCodec/entry/src/main/ets/MainAbility/pages/index.ets b/common/eTSBaseCodec/entry/src/main/ets/MainAbility/pages/index.ets new file mode 100644 index 0000000000..6f11d98c77 --- /dev/null +++ b/common/eTSBaseCodec/entry/src/main/ets/MainAbility/pages/index.ets @@ -0,0 +1,102 @@ +/* + * Copyright (c) 2021 Huawei Device Co., Ltd. + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +import util from '@ohos.util'; + +@Entry +@Component +struct Index { + @State windows_en: string = '' + @State windows_de: string = '' + @State input: string = 'harmony' + private StrToAscii: number[] = [] + private AsciiToStr: string = '' + + build() { + Scroll() { + Column() { + Text($r("app.string.change_str") + this.input) + .width('90%') + .height(70) + .textAlign(TextAlign.Center) + .fontSize(20) + .fontWeight(FontWeight.Bold) + + Text(this.windows_en) + .width('90%') + .height(70) + .margin({ top: 20 }) + .padding({left:10}) + .fontSize(20) + .fontWeight(FontWeight.Bold) + .border({ width: 2, radius: 10, color: Color.Black }) + + Button() { + Text($r("app.string.encode")) + .fontSize(25) + .fontWeight(FontWeight.Bold) + } + .width(300) + .height(70) + .type(ButtonType.Capsule) + .margin({ + top: 20 + }) + .backgroundColor('#0D9FFB') + .onClick(() => { + for (let i = 0;i < this.input.length; i++) { + this.StrToAscii.push(this.input.charCodeAt(i)) + } + var that = new util.Base64(); + var encodeNum = new Uint8Array(this.StrToAscii); + this.windows_en = that.encodeToStringSync(encodeNum) + }) + + Text(this.windows_de) + .width('90%') + .height(70) + .fontSize(20) + .padding({left:10}) + .fontWeight(FontWeight.Bold) + .border({ width: 2, radius: 10, color: Color.Black }) + .margin({ top: 50 }) + + Button() { + Text($r("app.string.decode")) + .fontSize(25) + .fontWeight(FontWeight.Bold) + } + .width(300) + .height(70) + .type(ButtonType.Capsule) + .margin({ + top: 20 + }) + .backgroundColor('#0D9FFB') + .onClick(() => { + var that = new util.Base64(); + var decodeNum = that.decodeSync(this.windows_en); + for (let i = 0; i < decodeNum.length; i++) { + this.AsciiToStr += String.fromCharCode(decodeNum[i]) + } + this.windows_de = this.AsciiToStr + }) + } + } + .scrollBar(BarState.Off) + .width('100%') + .height('100%') + } +} \ No newline at end of file diff --git a/common/eTSBaseCodec/entry/src/main/resources/base/element/string.json b/common/eTSBaseCodec/entry/src/main/resources/base/element/string.json new file mode 100644 index 0000000000..26d507690b --- /dev/null +++ b/common/eTSBaseCodec/entry/src/main/resources/base/element/string.json @@ -0,0 +1,24 @@ +{ + "string": [ + { + "name": "entry_MainAbility", + "value": "entry_MainAbility" + }, + { + "name": "description_mainability", + "value": "eTS_Empty Ability" + }, + { + "name": "change_str", + "value": "要转换的字符串:" + }, + { + "name": "encode", + "value": "编码" + }, + { + "name": "decode", + "value": "解码" + } + ] +} \ No newline at end of file diff --git a/common/eTSBaseCodec/entry/src/main/resources/base/media/icon.png b/common/eTSBaseCodec/entry/src/main/resources/base/media/icon.png new file mode 100644 index 0000000000000000000000000000000000000000..ce307a8827bd75456441ceb57d530e4c8d45d36c GIT binary patch literal 6790 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 literal 0 HcmV?d00001 diff --git a/common/eTSBaseCodec/settings.gradle b/common/eTSBaseCodec/settings.gradle new file mode 100644 index 0000000000..4773db7323 --- /dev/null +++ b/common/eTSBaseCodec/settings.gradle @@ -0,0 +1 @@ +include ':entry' -- Gitee From c378f1f61a9cd2cf1a4a4ae415c094acaf5ba44c Mon Sep 17 00:00:00 2001 From: unknown Date: Thu, 13 Jan 2022 18:49:46 +0800 Subject: [PATCH 2/3] =?UTF-8?q?readme=E4=BF=AE=E6=94=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: unknown --- common/eTSBaseCodec/README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/common/eTSBaseCodec/README.md b/common/eTSBaseCodec/README.md index 31917ba081..985a035f32 100644 --- a/common/eTSBaseCodec/README.md +++ b/common/eTSBaseCodec/README.md @@ -2,7 +2,7 @@ ### 简介 -Base64是一种基于64个可打印字符来表示[二进制](https://baike.baidu.com/item/二进制/361457)数据的方法,本示例展示了Base64编码及解码的结果输出 +Base64是一种基于64个可打印字符来表示二进制数据的方法,本示例展示了Base64编码及解码的结果输出 ### 使用说明 -- Gitee From 798192602034b1f86f3321e0d85830b24c33889a Mon Sep 17 00:00:00 2001 From: unknown Date: Fri, 14 Jan 2022 09:25:51 +0800 Subject: [PATCH 3/3] =?UTF-8?q?=E6=96=B0=E5=A2=9Esample?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: unknown --- .../{eTSBaseCodec => eTSUtilBase64Codec}/README.md | 4 ++-- .../build.gradle | 4 ++-- .../entry/build.gradle | 2 +- .../entry/src/main/config.json | 4 ++-- .../entry/src/main/ets/MainAbility/app.ets | 1 + .../entry/src/main/ets/MainAbility/pages/index.ets | 10 +++++----- .../src/main/resources/base/element/string.json | 0 .../entry/src/main/resources/base/media/icon.png | Bin .../screenshots/device/base.png | Bin .../settings.gradle | 0 10 files changed, 13 insertions(+), 12 deletions(-) rename common/{eTSBaseCodec => eTSUtilBase64Codec}/README.md (43%) rename common/{eTSBaseCodec => eTSUtilBase64Codec}/build.gradle (97%) rename common/{eTSBaseCodec => eTSUtilBase64Codec}/entry/build.gradle (94%) rename common/{eTSBaseCodec => eTSUtilBase64Codec}/entry/src/main/config.json (92%) rename common/{eTSBaseCodec => eTSUtilBase64Codec}/entry/src/main/ets/MainAbility/app.ets (99%) rename common/{eTSBaseCodec => eTSUtilBase64Codec}/entry/src/main/ets/MainAbility/pages/index.ets (95%) rename common/{eTSBaseCodec => eTSUtilBase64Codec}/entry/src/main/resources/base/element/string.json (100%) rename common/{eTSBaseCodec => eTSUtilBase64Codec}/entry/src/main/resources/base/media/icon.png (100%) rename common/{eTSBaseCodec => eTSUtilBase64Codec}/screenshots/device/base.png (100%) rename common/{eTSBaseCodec => eTSUtilBase64Codec}/settings.gradle (100%) diff --git a/common/eTSBaseCodec/README.md b/common/eTSUtilBase64Codec/README.md similarity index 43% rename from common/eTSBaseCodec/README.md rename to common/eTSUtilBase64Codec/README.md index 985a035f32..4b2021aeeb 100644 --- a/common/eTSBaseCodec/README.md +++ b/common/eTSUtilBase64Codec/README.md @@ -6,9 +6,9 @@ Base64是一种基于64个可打印字符来表示二进制数据的方法,本 ### 使用说明 -1:点击编码,将会把字符串转换为ASCII码,然后对ASCII码进行编码,并在文本框输出编码后的结果。 +1:点击**编码**按钮,将会把字符串转换为ASCII码,然后对ASCII码进行编码,并在文本框输出编码后的结果。 -2:点击解码,将会把编码后输出的结果作为解码器的入参,解码后得到ASCII码数组,然后将ASCII码数组转换为字符串在文本框输出。 +2:点击**解码**按钮,将会把编码后输出的结果作为解码器的入参,解码后得到ASCII码数组,然后将ASCII码数组转换为字符串在文本框输出。 ### 约束与限制 diff --git a/common/eTSBaseCodec/build.gradle b/common/eTSUtilBase64Codec/build.gradle similarity index 97% rename from common/eTSBaseCodec/build.gradle rename to common/eTSUtilBase64Codec/build.gradle index 93b3ff8289..f350f30a90 100644 --- a/common/eTSBaseCodec/build.gradle +++ b/common/eTSUtilBase64Codec/build.gradle @@ -3,10 +3,10 @@ apply plugin: 'com.huawei.ohos.app' //For instructions on signature configuration, see https://developer.harmonyos.com/cn/docs/documentation/doc-guides/ide_debug_device-0000001053822404#section1112183053510 ohos { - eSdkVersion 8 + compileSdkVersion 8 supportSystem "standard" } - + buildscript { repositories { maven { diff --git a/common/eTSBaseCodec/entry/build.gradle b/common/eTSUtilBase64Codec/entry/build.gradle similarity index 94% rename from common/eTSBaseCodec/entry/build.gradle rename to common/eTSUtilBase64Codec/entry/build.gradle index cef7b37de8..05a33cd3ad 100644 --- a/common/eTSBaseCodec/entry/build.gradle +++ b/common/eTSUtilBase64Codec/entry/build.gradle @@ -3,7 +3,7 @@ apply plugin: 'com.huawei.ohos.hap' ohos { compileSdkVersion 8 defaultConfig { - compatibleSdkVersion 7 + compatibleSdkVersion 8 } buildTypes { release { diff --git a/common/eTSBaseCodec/entry/src/main/config.json b/common/eTSUtilBase64Codec/entry/src/main/config.json similarity index 92% rename from common/eTSBaseCodec/entry/src/main/config.json rename to common/eTSUtilBase64Codec/entry/src/main/config.json index 95b63a1a08..1848fa7934 100644 --- a/common/eTSBaseCodec/entry/src/main/config.json +++ b/common/eTSUtilBase64Codec/entry/src/main/config.json @@ -1,6 +1,6 @@ { "app": { - "bundleName": "com.example.etsbasecodec", + "bundleName": "ohos.samples.etsutilbase64codec", "vendor": "example", "version": { "code": 1000000, @@ -9,7 +9,7 @@ }, "deviceConfig": {}, "module": { - "package": "com.example.etsbasecodec", + "package": "ohos.samples.etsutilbase64codec", "name": ".MyApplication", "mainAbility": ".MainAbility", "srcPath": "", diff --git a/common/eTSBaseCodec/entry/src/main/ets/MainAbility/app.ets b/common/eTSUtilBase64Codec/entry/src/main/ets/MainAbility/app.ets similarity index 99% rename from common/eTSBaseCodec/entry/src/main/ets/MainAbility/app.ets rename to common/eTSUtilBase64Codec/entry/src/main/ets/MainAbility/app.ets index cfb9635413..bf28e58b36 100644 --- a/common/eTSBaseCodec/entry/src/main/ets/MainAbility/app.ets +++ b/common/eTSUtilBase64Codec/entry/src/main/ets/MainAbility/app.ets @@ -12,6 +12,7 @@ * See the License for the specific language governing permissions and * limitations under the License. */ + export default { onCreate() { console.info('Application onCreate') diff --git a/common/eTSBaseCodec/entry/src/main/ets/MainAbility/pages/index.ets b/common/eTSUtilBase64Codec/entry/src/main/ets/MainAbility/pages/index.ets similarity index 95% rename from common/eTSBaseCodec/entry/src/main/ets/MainAbility/pages/index.ets rename to common/eTSUtilBase64Codec/entry/src/main/ets/MainAbility/pages/index.ets index 6f11d98c77..cf03e3cd55 100644 --- a/common/eTSBaseCodec/entry/src/main/ets/MainAbility/pages/index.ets +++ b/common/eTSUtilBase64Codec/entry/src/main/ets/MainAbility/pages/index.ets @@ -29,14 +29,14 @@ struct Index { Column() { Text($r("app.string.change_str") + this.input) .width('90%') - .height(70) + .height('10%') .textAlign(TextAlign.Center) .fontSize(20) .fontWeight(FontWeight.Bold) Text(this.windows_en) .width('90%') - .height(70) + .height('10%') .margin({ top: 20 }) .padding({left:10}) .fontSize(20) @@ -49,7 +49,7 @@ struct Index { .fontWeight(FontWeight.Bold) } .width(300) - .height(70) + .height('10%') .type(ButtonType.Capsule) .margin({ top: 20 @@ -66,7 +66,7 @@ struct Index { Text(this.windows_de) .width('90%') - .height(70) + .height('10%') .fontSize(20) .padding({left:10}) .fontWeight(FontWeight.Bold) @@ -79,7 +79,7 @@ struct Index { .fontWeight(FontWeight.Bold) } .width(300) - .height(70) + .height('10%') .type(ButtonType.Capsule) .margin({ top: 20 diff --git a/common/eTSBaseCodec/entry/src/main/resources/base/element/string.json b/common/eTSUtilBase64Codec/entry/src/main/resources/base/element/string.json similarity index 100% rename from common/eTSBaseCodec/entry/src/main/resources/base/element/string.json rename to common/eTSUtilBase64Codec/entry/src/main/resources/base/element/string.json diff --git a/common/eTSBaseCodec/entry/src/main/resources/base/media/icon.png b/common/eTSUtilBase64Codec/entry/src/main/resources/base/media/icon.png similarity index 100% rename from common/eTSBaseCodec/entry/src/main/resources/base/media/icon.png rename to common/eTSUtilBase64Codec/entry/src/main/resources/base/media/icon.png diff --git a/common/eTSBaseCodec/screenshots/device/base.png b/common/eTSUtilBase64Codec/screenshots/device/base.png similarity index 100% rename from common/eTSBaseCodec/screenshots/device/base.png rename to common/eTSUtilBase64Codec/screenshots/device/base.png diff --git a/common/eTSBaseCodec/settings.gradle b/common/eTSUtilBase64Codec/settings.gradle similarity index 100% rename from common/eTSBaseCodec/settings.gradle rename to common/eTSUtilBase64Codec/settings.gradle -- Gitee