创建HarmonyOS应用工程
新建工程
前提条件
- 您已完成开发准备工作。
- 您已使用已实名认证、且注册地为中国境内(香港特别行政区、澳门特别行政区、中国台湾除外)的华为开发者账号登录DevEco Studio。
- 请确保您的华为开发者账号无欠款,账户欠费将导致云存储服务开通失败。
选择模板
-
选择以下任一种方式,打开工程创建向导界面。
- 如果当前未打开任何工程,可以在DevEco Studio的欢迎页点击“Create Project”开始创建一个新工程。
- 如果已经打开了工程,可以在菜单栏选择“File > New > Create Project”来创建一个新工程。
-
在“Application”页签,选择合适的云开发模板,然后点击“Next”。
当前仅支持通用云开发模板([CloudDev]Empty Ability)。

配置工程信息
-
在工程配置界面,配置工程的基本信息。
其中,Device type和Enable CloudDev参数不可更改,其他参数请参考创建一个新的工程内对应的指导进行配置。
参数 说明 Device type 该工程模板支持的设备类型,目前仅支持手机设备。 Enable CloudDev 是否启用云开发。云开发模板默认启用且无法更改。 
-
点击“Next”,开始关联云开发资源。
关联云开发资源
为工程关联云开发所需的资源,即将您账号团队在AGC创建的同包名应用关联到当前工程。具体操作如下:
-
(可选)如您尚未登录DevEco Studio,点击“Sign In”,在弹出的账号登录页面,使用已实名认证的华为开发者账号完成登录。

登录成功后,界面将展示账号昵称。
-
点击“Team”下拉框,选择开发团队。
-
关联应用。
选中团队后,系统根据工程Bundle name在该团队中自动查询AGC上的同包名应用。
-
如查询到应用,选中该应用,点击“Finish”即可。

-
如查询到的应用尚未关联任何项目(即为游离应用),则无法选中。请先将游离应用添加到AGC项目下。

-
如果查询到的应用所属项目尚未启用数据处理位置,请点击界面提示内的“AppGallery Connect”设置数据处理位置。设置完成后返回DevEco Studio界面,点击Bundle name后的
刷新当前APP ID列表,即可看到设置的数据处理位置。
- 由于云开发目前仅支持中国境内(香港特别行政区、澳门特别行政区、中国台湾除外),请确保项目启用的数据处理位置包含“中国”。
- 无论项目启用的默认数据处理位置为哪个站点,后续开发的云服务资源都将部署在“中国”站点。

-
如查询到应用但出现如下提示,表明查询到的应用类型为元服务,与当前工程类型不一致。请修改以确保当前工程与AGC上同包名应用均为HarmonyOS应用类型。

-
如在当前团队中未查询到同包名应用,请先确认填写的包名是否有误。
- 如包名有误,点击界面提示中的“go back”返回工程信息配置界面进行修改。
- 如包名无误,则表明当前团队尚未在AGC控制台创建与当前工程包名相同的应用。您可点击界面提示中的“AppGallery Connect”,前往AGC控制台进行补充创建。

完成以上操作后,DevEco Studio即可获取到同包名应用信息。选中应用后,点击“Finish”。

-
-
如您所属的团队尚未签署云开发相关协议,点击协议链接仔细阅读协议内容后,勾选同意协议,点击“Finish”。
只有账号持有者和法务角色才有权限签署协议。

-
进入主开发界面,DevEco Studio执行工程同步操作,端侧工程会自动执行“ohpm install”,云侧工程会自动执行“npm install”,以分别下载端侧和云侧依赖。
若云侧执行“npm install”失败,请排查是否尚未配置NPM代理。

-
在主开发界面,可查看刚刚新建的工程。关于工程的详细目录结构介绍,请参见端云一体化开发工程目录结构。

工程初始化配置
当您成功创建工程并关联云开发资源后,DevEco Studio会为您的工程自动执行一些初始化配置。
自动开通云开发服务
DevEco Studio为工程关联的项目自动开通云函数、云数据库、云存储等云开发服务,您可在“Notifications”窗口查看服务开通状态。
- 如服务开通失败,您可通过CloudDev云开发管理面板快捷进入AGC控制台进行手动开通。
- 如云存储服务自动开通与手动开通均失败,可能是账户欠费导致。请您检查账户是否余额不足,补齐欠款后再前往AGC控制台进行手动开通。
端云一体化开发工程目录结构
端云一体化开发工程主要包含端开发工程(Application)与云开发工程(CloudProgram)。
端开发工程(Application)
端开发工程主要用于开发应用端侧的业务代码,使用通用云开发模板创建的端开发工程目录结构如下图所示。“Application/cloud_objects”模块用于存放云对象的端侧调用接口类,“src/main/ets/pages”目录下包含了云存储、云数据库和云函数页面,其他目录文件介绍请参见工程目录结构。

云开发工程(CloudProgram)
在云开发工程中,您可为您的应用开发云端代码,包括云函数和云数据库服务代码。使用通用云开发模板创建的云开发工程目录结构如下图所示。

-
clouddb:云数据库目录,包含数据条目目录(dataentry)和对象类型目录(objecttype)。
-
dataentry:用于存放数据条目文件。
该目录下一般会根据您选择的云开发模板预置数据条目示例文件。在通用云开发模板工程中,该目录下会预置名为“d_Post.json”的数据条目示例文件,内含两条示例数据。您可按需使用、修改或删除。

-
objecttype:用于存放对象类型文件。
该目录下一般会根据您选择的云开发模板预置对象类型示例文件。在通用云开发模板工程中,该目录下会预置名为“Post.json”的对象类型示例文件,内含对象类型“Post”的权限、索引、字段名称和字段值等。您可按需使用、修改或删除。

-
db-config.json:模块配置文件,主要包含云数据库工程的配置信息,如默认存储区名称、默认数据处理位置。
-
-
cloudfunctions:云函数目录,包含各个云函数/云对象子目录。每个子目录下包含了云函数/云对象的配置文件、入口文件、依赖文件等。
该目录下一般会根据您选择的云开发模板预置示例函数。通用云开发模板工程下预置了一个用于生成UUID的示例云对象“id-generator”,您可按需使用、修改或删除。

-
node_modules:工程同步时执行“npm install”生成,包含“typescript”和“@types/node”公共依赖。
-
cloud-config.json:云开发工程配置文件,包含应用名称与ID、项目名称与ID、启用的数据处理位置、支持的设备类型等。
-
package.json:定义了“typescript”和“@types/node”公共依赖。
-
package-lock.json:工程同步时执行“npm install”生成,记录当前状态下实际安装的各个npm package的具体来源和版本号。
(可选)AGC应用管理
从DevEco Studio补充创建同包名应用
如创建工程时,发现尚未在AGC控制台创建与工程包名相同的应用,可进行补充创建。
-
点击界面提示内的“AppGallery Connect”,浏览器打开AGC控制台页面。

-
在“应用开发基础信息”页面,填写待创建的应用信息,完成后点击“下一步”。

参数 说明 应用类型 创建的HarmonyOS应用形态,默认与您本地工程类型保持一致,不可更改。 应用名称 应用在华为应用市场详情页展示的名称。 应用包名 从DevEco Studio中带入自动填充,且不可更改。 应用分类 请选择普通应用或游戏类应用。 说明: 应用分类设置后不支持修改,请谨慎选择。 -
进入“所属项目信息”页面,为应用选择所属的项目后点击“下一步”。
- 如需将应用添加到已有项目,点击下拉框进行选择。
- 如需将应用添加到新项目,直接在框中填写新项目名称。

-
进入“云开发数据处理位置”页面,设置或管理项目的数据处理位置。
-
如项目尚未设置数据处理位置:
-
点击“启用”。

-
仔细阅读提示框的文字说明后,在“启用”栏为您的项目勾选一个或多个数据处理位置,并在“设为默认”栏将其中一个设置为默认数据处理位置。
启用的数据处理位置必须包含中国站点。

-
-
如项目已设置过数据处理位置,可点击“管理”启用新的数据处理位置、取消已启用的数据处理位置,或修改默认数据处理位置。

-
-
点击“确认”,应用创建完成。
-
返回DevEco Studio,可看到界面已获取并展示了刚刚创建的应用信息。若不展示,可点击Bundle name后的
刷新。

将游离应用添加到AGC项目下
游离应用指未关联任何AGC项目的应用。创建工程时,如需要关联的AGC应用为游离应用,则您需要将该应用添加到您的AGC项目下。
应用与项目的关联关系一旦创建则无法再修改,请谨慎操作。
-
点击“Not associated yet”,或点击界面下方提示内的“AppGallery Connect”,可打开AGC控制台“开发与服务”页面。

-
点击选择希望为应用关联的项目,或者点击“添加项目”新建一个项目。

-
如选择了新建一个项目,设置项目名称,点击“确认”。
如选择了已有项目,则忽略此步骤。
-
设置或管理项目的数据处理位置。
-
如项目尚未设置数据处理位置:
-
点击“启用”。
-
仔细阅读提示框的文字说明后,在“启用”栏为您的项目勾选一个或多个数据处理位置,并在“设为默认”栏将其中一个设置为默认数据处理位置。
启用的数据处理位置必须包含中国站点。

-
-
如项目已设置过数据处理位置,可点击“管理”启用新的数据处理位置、取消已启用的数据处理位置,或修改默认数据处理位置。
-
-
点击“确认”,应用成功关联项目。

-
返回DevEco Studio,可看到应用已关联上了项目。
