赞
踩
对应用开发者而言,HarmonyOS采用了一次开发,多端部署的技术,使得应用程序的开发实现与不同终端设备的形态差异无关。手机应用开发,是整个分布式能力的核心。
很多家长反馈,孩子上网课将家里的手机、电脑、iPad、投影仪全都用上了,电脑用来上课,iPad用来回答问题,手机用来拍照上传作业,多个设备使用起来常常会手忙脚乱。“小鸿网课”应用致力于解决这一痛点。
主要特性:
开始开发HarmonyOS应用前,应首先搭建开发环境。HarmonyOS应用开发环境搭建主要包含以下步骤:
setUIContent(ResourceTable.Layout_ability_main)
; 相当于安卓的setContentView(R.layout.activity_main);
使用布局和控件构建UI界面(如下方左图),并通过XML代码实现(如下方代码,部分参数省略)。最终运行结果如下图所示:
每个页面都有生命周期,在页面的生命周期的onStart()方法中可以使用如下是所示代码加载使用XML构建的UI布局文件。
一个HarmonyOS应用包结构主要包含APP (Application Package)和HAP (HarmonyOS Ability Package)。如下图所示:
ohos.global.resource.ResourceManager resManager = getAbilityContext().getResourceManager();
String result = resManager.getElement(ResourceTable.String_app_name).getString();
<?xml version="1.0" encoding="utf-8"?>
<DirectionalLayout xmlns:ohos="http://schemas.huawei.com/res/ohos"
ohos:width="match_parent"
ohos:height="match_parent"
ohos:orientation="vertical">
<Text ohos:text="$string:app_name"
ohos:height="match_parent"
ohos:width="match_parent"/>
</DirectionalLayout>
ohos.global.resource.ResourceManager resManager = getAbilityContext().getResourceManager();
ohos.global.resource.RawFileEntry rawFileEntry = resManager.getRawFileEntry("resources/rawfile/example.js");
敏感权限基于用户可知可控的原则,需要应用在运行时主动调用系统动态申请权限的接口,系统弹框由用户授权。
if (canRequestPermission("ohos.permission.LOCATION")) {
// 是否可以申请弹框授权(首次申请或者用户未选择禁止且不再提示)
requestPermissionsFromUser(new String[]{"ohos.permission.LOCATION"}, 666);
} else {
// 显示应用需要权限的理由,提示用户进入设置授权
HiLog.info(LABEL_LOG, "显示应用需要权限的理由,提示用户进入设置授权");
}
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。