鸿蒙OS应用开发之——新建Ability没有Empty

博客主要讲述项目中新建Ability时出现的异常现象,即只有部分选项。原因是不同设备模板类别不同。还给出当deviceType同时设置phone和tablet时的解决办法,可先设置一个如或的选项。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

一 现象

当在项目的bundleName上右键,新建Ability时,只有Empty Data AbilityEmpty Service Ability,没有:Empty Feature Ability(JS)Empty Feature Ability(Java)List Feature Ability(JS)

二 原因分析

2.1 设备模板不同

不同设备下,模板类别不同

2.2 不同设备下的模板

设备模板
phoneEmpty Data Ability
Empty Page Ability(JS)
Empty Page Ability(Java)
Empty Service Ability
tabletEmpty Data Ability
Empty Page Ability(JS)
Empty Page Ability(Java)
Empty Service Ability
tvEmpty Data Ability
Empty Page Ability(JS)
Empty Page Ability(Java)
Empty Service Ability
List Feature Ability(JS)
carEmpty Data Ability
Empty Page Ability(Java)
Empty Service Ability
wearableEmpty Data Ability
Empty Page Ability(JS)
Empty Page Ability(Java)
Empty Service Ability
List Feature Ability(JS)

三 deviceType同时设置了phone和tablet如何解决

deviceType同时设置了phone和table时,新建Ability时,只有Empty Data AbilityEmpty Service Ability,此时可先设置一个如phonetablet

### Deveco Studio 中 C 库的开发教程 #### 工具准备与环境搭建 在开始 HarmonyOS 的 C 库开发前,需确保已按照官方文档完成 DevEco Studio 的安装和配置工作[^1]。这一步骤包括下载并安装最新版本的 DevEco Studio,并设置好所需的 SDK 和 NDK。 #### 创建项目支持 C/C++ 编程 为了在 DevEco Studio 上进行 C 库的开发,可以创建一个新的 Native 类型工程或者向现有 Java/Kotlin 项目中添加 Native 支持。以下是具体操作: 1. **新建项目** 打开 DevEco Studio 后,在启动界面选择 “New Project”,然后选择适合的应用模板(如 Empty Ability)。在此过程中可以选择启用 C/C++ 支持选项。 2. **配置 CMakeLists.txt 文件** 如果选择了 Native 支持,则会在项目的 `app` 或者模块目录下自动生成一个名为 `CMakeLists.txt` 的文件。此文件用于定义编译规则以及指定要构建的目标库。例如: ```cmake cmake_minimum_required(VERSION 3.10) add_library( native-lib SHARED src/main/cpp/native-lib.cpp ) find_library( log-lib log ) target_link_libraries( native-lib ${log-lib} ) ``` 上述脚本片段展示了如何通过 CMake 构建共享库 (`SHARED`) 并链接到 Android 系统日志库 `${log-lib}`[^2]。 #### 调试功能集成 当涉及到复杂逻辑处理时,可能需要借助于硬件设备来进行实际测试。为此,DevEco Studio 提供了针对 OpenHarmony 设备的强大远程调试机制。可以通过 USB 连接目标板卡或其他兼容终端来验证所编写代码的行为表现是否符合预期。 #### 发布与分发 一旦完成了 C 库的功能实现及其关联应用程序的整体设计之后,就可以利用内置打包工具生成最终产物——APK/APL 文件形式发布给用户群体体验或部署至相应市场平台之上。 ```python def build_native_lib(): """ A simple function demonstrating how to call a compiled C library from Python. This is just an illustrative example and not directly related to HarmonyOS development. """ import ctypes lib = ctypes.CDLL('./libnative-lib.so') # Load the shared object file result = lib.add_two_numbers(5, 7) # Call its method with arguments return result # Return computed value back to caller context ``` 以上是一个简单的例子用来展示怎样加载由 C 制作而成动态连接库(.so),并通过它调用其中的方法计算两个整数相加的结果返回给调用方知道。 ---
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值