鸿蒙OS AbilityInfo
AbilityInfo
java.lang.Object
|---ohos.bundle.AbilityInfo
public class AbilityInfo
extends Object
implements Sequenceable
获取ability的配置信息
嵌套类摘要
修饰符和类型 | 类 | 描述 |
---|---|---|
static class | AbilityInfo.AbilitySubType | 枚举可由ability使用的模板的子类型。 |
static class | AbilityInfo.AbilityType | 枚举ability可以使用的模板类型。 |
static class | AbilityInfo.DisplayOrientation | 枚举ability显示方向。 |
static class | AbilityInfo.LaunchMode | 枚举ability启动模式。 |
从接口 ohos.utils.Sequenceable 继承的嵌套类/接口 |
---|
Sequenceable.ProducerT |
字段摘要
修饰符和类型 | 字段 | 描述 |
---|---|---|
String | bundleName | 指示包含该ability的捆绑包的名称。 |
String | className | 表示ability的类名。 |
boolean | enabled | 指示是否可以实例化此ability。 |
String | label | 表示ability的标签 |
static Sequenceable.ProducerAbilityInfo | PRODUCER | 从 Parcel 创建 AbilityInfo 实例。 |
构造函数摘要
构造函数 | 描述 |
---|---|
AbilityInfo() | 用于创建 AbilityInfo 实例的默认构造函数。 |
AbilityInfo(AbilityInfo source) | 用于通过从现有参数复制参数来创建 AbilityInfo 实例的构造函数。 |
方法总结
修饰符和类型 | 方法 | 描述 |
---|---|---|
void | dump(String prefix, PrintWriter writer) | 将ability信息打印到指定目标。 |
ApplicationInfo | getApplicationInfo() | 获取有关当前应用程序的信息。 |
int | getBackgroundModes() | 获取ability的 backgroundModes 标签。 |
String | getBundleName() | 获取包含该ability的捆绑包的名称。 |
String | getClassName() | 获取ability的类名。 |
int | getDefaultFormHeight() | 获取 AbilityForm 的默认高度。 |
int | getDefaultFormWidth() | 获取 AbilityForm 的默认宽度。 |
String | getDescription() | 获取ability的描述。 |
ListString | getDeviceCapabilities() | 获取运行ability所需的设备ability。 |
ListString | getDeviceTypes() | 获取ability可以运行的设备类型。 |
boolean | getFormEnabled() | 获取ability的formEnabled标签。 |
int | getFormEntity() | 获取AbilityForm可以显示的区域。 |
String | getIconPath() | 获取ability图标资源文件的保存路径。 |
String | getLabel() | 获取用户可见的ability名称或ability名称的资源索引。 |
AbilityInfo.LaunchMode | getLaunchMode() | 获取ability的启动模式,单例或标准。 |
int | getMinFormHeight() | 获取 AbilityForm 的最小高度。 |
int | getMinFormWidth() | 获取 AbilityForm 的最小宽度。 |
String | getModuleName() | 获取ability的模块名称标签。 |
AbilityInfo.DisplayOrientation | getOrientation() | 获取ability的显示方向。 |
String | getOriginalClassName() | 获取ability的原始类名。 |
ListString | getPermissions() | 获取其他ability调用当前ability所需的权限。 |
String | getProcess() | 获取应运行此ability的进程的名称。 |
String | getReadPermission() | 获得读取数据ability所需的权限。 |
String | getTargetAbility() | 获得该ability指向的目标ability。 |
AbilityInfo.AbilityType | getType() | 获取ability使用的模板类型。 |
String | getURI() | 获取ability的统一资源标识符 (URI)。 |
String | getWritePermission() | 获得写入数据ability所需的权限。 |
boolean | isDifferentName() | 判断ability是否处于和谐过渡阶段。 |
boolean | isVisible() | 检查一个ability是否可以被其他ability调用。 |
boolean | marshalling(Parcel out) | 将此 Sequenceable 对象编组为 Parcel。 |
String | toString() | 提供abilityInfo 的名称和hashCode。 |
boolean | unmarshalling(Parcel in) | 从 Parcel 中解组此 Sequenceable 对象。 |
从类 java.lang.Object 继承的方法 |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait |
从接口 ohos.utils.Sequenceable 继承的方法 |
---|
hasFileDescriptor |
字段详细信息
PRODUCER
public static final Sequenceable.ProducerAbilityInfo PRODUCER
从 Parcel 创建 AbilityInfo 实例。
bundleName
public String bundleName
指示包含该ability的捆绑包的名称。
className
public String className
表示ability的类名。
类名由捆绑名称和ability名称标签的值组合而成。
enabled
public boolean enabled
指示是否可以实例化此ability。
label
public String label
表示ability的标签
构造函数详细信息
AbilityInfo
public AbilityInfo()
用于创建 AbilityInfo 实例的默认构造函数。
AbilityInfo
public AbilityInfo(AbilityInfo source)
用于通过从现有参数复制参数来创建 AbilityInfo 实例的构造函数。
参数:
参数名称 | 参数描述 |
---|---|
source | 表示 AbilityInfo 对象。 |
Method Detail
getLabel
public String getLabel()
获取用户可见的ability名称或ability名称的资源索引。
您可以在配置文件中配置标签标签。 默认值为名称标签的值,您可以保留默认值。
返回:
返回对用户可见的ability名称。
getDescription
public String getDescription()
获取ability的描述。
ability的描述可以是字符串,也可以是描述的资源索引。 您可以在配置文件中配置描述。 默认值为空字符串,您可以保留默认值。
返回:
返回ability的描述。
Since:
1
getIconPath
public String getIconPath()
获取ability图标资源文件的保存路径。
您可以在配置文件中配置图标标签。 默认值为空字符串,您可以保留默认值。
返回:
返回存储ability图标资源文件的路径。
isVisible
public boolean isVisible()
检查一个ability是否可以被其他ability调用。
您可以在配置文件中配置可见标签。 默认值为 false,您可以保留默认值。
返回:
如果该ability可以被其他ability调用,则返回 true; 否则返回 false。
getType
public AbilityInfo.AbilityType getType()
获取ability使用的模板类型。
Ability有3种模板:有UI的AbilityType#PAGE、没有UI的AbilityType#SERVICE、提供数据访问服务的AbilityType#DATA。 必须指定类型标签。 您必须在配置文件中配置它。
返回:
返回ability使用的模板类型。
getOrientation
public AbilityInfo.DisplayOrientation getOrientation()
获取ability的显示方向。
方向仅对使用页面模板的ability有效。 它可以是以下任何值:
- DisplayOrientation#UNSPECIFIED: 系统自动确定ability的显示方向。
- DisplayOrientation#LANDSCAPE: ability横向显示。
- DisplayOrientation#PORTRAIT: ability以纵向显示。
- DisplayOrientation#FOLLOWRECENT: ability的显示方向与堆栈中最近的ability相同。
您可以在配置文件中配置此标签。 默认值未指定,您可以保留默认值。
返回:
返回ability的显示方向。
getLaunchMode
public AbilityInfo.LaunchMode getLaunchMode()
获取能力的启动模式,单例或标准。
在 LaunchMode#STANDARD 模式中,一个技能可以有多个实例,而在 LaunchMode#SINGLETON 模式中,一个技能只有一个实例。 您可以在配置文件中配置启动模式标签。 默认值为单例,您可以保留默认值。
返回:
返回ability的启动模式。
getBundleName
public String getBundleName()
获取包含该ability的捆绑包的名称。
返回:
返回包含该ability的捆绑包的名称。
getClassName
public String getClassName()
获取ability的类名。
类名由捆绑名称和ability名称标签的值组合而成。
返回:
返回ability的类名。
getOriginalClassName
public String getOriginalClassName()
获取ability的原始类名。
shell类名由shell包名和shell能力的name标签的值组合而成。
返回:
返回ability的类名。
getPermissions
public ListString getPermissions()
获取其他ability调用当前ability所需的权限。
每个权限必须是一个字符串,通常是一个反向域名。 您可以指定预定义的权限或应用程序自定义的权限。 此标签中指定的自定义权限名称必须与def-permissions标签中定义的权限名称的值相同。 您可以在配置文件中配置权限标签。 默认值为空列表,您可以保留默认值。
返回:
返回其他ability调用当前ability所需的权限列表。
getDeviceTypes
public ListString getDeviceTypes()
获取ability可以运行的设备类型。
device-type 指定运行ability的设备类型。 预定义的类型是 tv、pc、car 和 watch。 您可以在配置文件中配置此标签。
返回:
返回可以运行该ability的设备类型列表。
getDeviceCapabilities
public ListString getDeviceCapabilities()
获取运行ability所需的设备ability。
device-capability 表示设备运行ability所应具备的ability。 功能必须与设备配置文件中描述的ability一致。 您可以在配置文件中配置此标签。 默认值为空列表,表示运行ability不需要设备ability,可以保留默认值。
返回:
返回运行ability所需的设备ability。
getURI
public String getURI()
获取ability的统一资源标识符 (URI)。
返回:
返回ability的URI; 如果未配置 URI,则返回空字符串。
isDifferentName
public boolean isDifferentName()
判断ability是否处于和谐过渡阶段。
返回:
如果ability处于和谐过渡阶段,则返回真; 否则返回 false。
getModuleName
public String getModuleName()
获取ability的模块名称标签。
module-name 表示ability所属的 HAP 文件的名称。 此标记由 IDE 自动生成。
返回:
返回 HAP 文件的名称。
getProcess
public String getProcess()
获取应运行此ability的进程的名称。
进程名称在 config.json 文件中该ability的进程属性中设置。 如果未设置,则默认使用为应用程序设置的进程属性。
返回:
返回进程名称。
getTargetAbility
public String getTargetAbility()
获得该ability指向的目标ability。
如果你在config.json中为这个ability设置了targetAbility属性,那么这个ability只是一个ability别名,targetAbility指定的ability就是它所指向的真正ability。 如果在当前bundle中找不到指定的目标ability,config.json会解析失败。
返回:
返回目标ability的类名。
getFormEnabled
public boolean getFormEnabled()
获取ability的formEnabled标签。
formEnabled 指定是否为使用页面模板的ability启用 AbilityForm。 对于使用任何其他模板的ability,请勿将此标签设置为 true。 默认值为 false,您可以保留默认值。
返回:
如果为ability启用了 AbilityForm,则返回 true; 否则返回 false。
getBackgroundModes
public int getBackgroundModes()
获取ability的 backgroundModes 标签。
backgroundModes 专用于使用服务模板的ability。 您可以使用此标签将一个或多个后台服务模式分配给ability。 可用的后台模式及其各自的标签值如下:
- data-transfer: 用于从网络或对等设备下载、备份、共享或传输数据的服务。 标签值为 0b00000001。
- audio-playback: 音频输出服务。 标签值为 0b00000010。
- audio-recording: 音频输入服务。 标签值为 0b00000010。
- picture-in-picture: 画中画和小窗口视频播放服务。 标签值为 0b00000010。
- voip: 语音/视频通话和 VoIP 服务。 标签值为 0b00000100。
- Location: 定位和导航服务。 标签值为 0b00001000。
- bluetooth-interaction: 基于蓝牙的扫描、连接和传输服务(适用于可穿戴设备)。 标签值为 0b00010000。
- wifi-interaction: 基于 WLAN 的扫描、连接和传输服务。 标签值为 0b00010000。
- screen-fetch:屏幕录制和屏幕截图服务。 标签值为 0b00100000。
最终标签值可以是多个先前值的总和。 您需要在此标记中使用单个值(例如 0b00000010 或 0b00010000)一次,以便您的应用程序具有与该值对应的所有背景模式。
返回:
返回一个整数,作为为ability设置的所有值的总和。
getApplicationInfo
public ApplicationInfo getApplicationInfo()
获取有关当前应用程序的信息。
返回:
返回当前应用程序的 ApplicationInfo 对象。
getFormEntity
public int getFormEntity()
获取AbilityForm可以显示的区域。
返回:
如果 AbilityForm 可以显示在主屏幕上,则返回 1; 如果可以在搜索界面显示,则返回 2; 如果可以在两个区域上显示,则返回 3。
getMinFormHeight
public int getMinFormHeight()
获取 AbilityForm 的最小高度。
初始值为0。如果formEnabled设置为false,则该方法无效。
返回:
返回 AbilityForm 的最小高度(以像素为单位)。
getDefaultFormHeight
public int getDefaultFormHeight()
获取 AbilityForm 的默认高度。
初始值为0。如果formEnabled设置为false,则该方法无效。
返回:
返回 AbilityForm 的默认高度(以像素为单位)。
getMinFormWidth
public int getMinFormWidth()
获取 AbilityForm 的最小宽度。
初始值为0。如果formEnabled设置为false,则该方法无效。
返回:
返回 AbilityForm 的最小宽度(以像素为单位)。
getDefaultFormWidth
public int getDefaultFormWidth()
获取 AbilityForm 的默认宽度。
初始值为0。如果formEnabled设置为false,则该方法无效。
返回:
返回 AbilityForm 的默认宽度(以像素为单位)。
getReadPermission
public String getReadPermission()
获得读取数据ability所需的权限。
返回:
返回读取权限的值。
getWritePermission
public String getWritePermission()
获得写入数据ability所需的权限。
返回:
返回写权限。
marshalling
public boolean marshalling(Parcel out)
从接口复制的描述:Sequenceable
将此 Sequenceable 对象编组为 Parcel。
指定者:
接口 Sequenceable 中的编组
参数:
参数名称 | 参数描述 |
---|---|
out | 指示将 Sequenceable 对象编组到的 Parcel 对象。 |
返回:
如果编组成功,则返回 true; 否则返回 false。
unmarshalling
public boolean unmarshalling(Parcel in)
从接口复制的描述:Sequenceable
从 Parcel 中解组此 Sequenceable 对象。
指定者:
在接口 Sequenceable 中解组
参数:
参数名称 | 参数描述 |
---|---|
in | 指示已将 Sequenceable 对象编组到的 Parcel 对象。 |
返回:
如果解组成功,则返回 true; 否则返回 false。
dump
public void dump(String prefix, PrintWriter writer) throws IllegalArgumentException
将ability信息打印到指定目标。
参数:
参数名称 | 参数描述 |
---|---|
prefix | 表示打印信息中包含的属性名称的前缀。 |
writer | 指示信息将被打印到的目标。 |
Throws:
Throw名称 | Throw描述 |
---|---|
IllegalArgumentException | 如果输入参数非法,则抛出此异常。 |
toString
public String toString()
提供abilityInfo 的名称和hashCode。
覆盖:
类 Object 中的 toString
返回:
字符串格式的信息。