• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1# native_interface_bundle.h
2<!--Kit: Ability Kit-->
3<!--Subsystem: BundleManager-->
4<!--Owner: @wanghang904-->
5<!--Designer: @hanfeng6-->
6<!--Tester: @kongjing2-->
7<!--Adviser: @Brilliantry_Rui-->
8
9## 概述
10
11提供查询应用包信息的功能,获取的信息包括应用包名和指纹信息。
12
13**引用文件:** <bundle/native_interface_bundle.h>
14
15**库:** libbundle_ndk.z.so
16
17**系统能力:** SystemCapability.BundleManager.BundleFramework.Core
18
19**起始版本:** 9
20
21**相关模块:** [Native_Bundle](capi-native-bundle.md)
22
23## 汇总
24
25### 结构体
26
27| 名称 | typedef关键字 | 描述 |
28| -- | -- | -- |
29| [OH_NativeBundle_ApplicationInfo](capi-native-bundle-oh-nativebundle-applicationinfo.md) | OH_NativeBundle_ApplicationInfo | 应用包信息数据结构,包含应用包名和应用指纹信息。 |
30| [OH_NativeBundle_ElementName](capi-native-bundle-oh-nativebundle-elementname.md) | OH_NativeBundle_ElementName | elementName信息。 |
31| [OH_NativeBundle_Metadata](capi-native-bundle-oh-nativebundle-metadata.md) | OH_NativeBundle_Metadata | 元数据信息。 |
32| [OH_NativeBundle_ModuleMetadata](capi-native-bundle-oh-nativebundle-modulemetadata.md) | OH_NativeBundle_ModuleMetadata | 模块元数据的信息。 |
33
34### 函数
35
36| 名称 | 描述 |
37| -- | -- |
38| [OH_NativeBundle_ApplicationInfo OH_NativeBundle_GetCurrentApplicationInfo()](#oh_nativebundle_getcurrentapplicationinfo) | 获取当前应用信息,包含应用包名和应用指纹信息。 |
39| [char* OH_NativeBundle_GetAppId()](#oh_nativebundle_getappid) | 获取当前应用的appId。appId是应用的唯一标识,由应用包名和签名信息决定。在使用此接口后,为了避免内存泄漏,需要手动释放接口返回的指针。 |
40| [char* OH_NativeBundle_GetAppIdentifier()](#oh_nativebundle_getappidentifier)| 获取当前应用的应用程序标识符。该应用程序标识符在应用的整个生命周期中不会发生变化,包括版本更新、证书更改、公钥和私钥更改以及应用程序迁移。在使用此接口后,为了避免内存泄漏,需要手动释放接口返回的指针。 |
41| [OH_NativeBundle_ElementName_OH_NativeBundle_GetMainElementName()](#oh_nativebundle_getmainelementname) | 获取当前应用入口元素mainElement的信息,包括包名、模块名和组件名。在使用此接口后,为了避免内存泄漏,需要手动释放接口返回的指针。 |
42| [char* OH_NativeBundle_GetCompatibleDeviceType()](#oh_nativebundle_getcompatibledevicetype) | 获取当前应用适用的设备类型。在使用此接口后,为了避免内存泄漏,需要手动释放接口返回的指针。 |
43| [bool OH_NativeBundle_IsDebugMode(bool* isDebugMode)](#oh_nativebundle_isdebugmode) | 查询当前应用的调试模式。 |
44| [OH_NativeBundle_ModuleMetadata* OH_NativeBundle_GetModuleMetadata(size_t* size)](#oh_nativebundle_getmodulemetadata) | 获取当前应用程序的模块元数据数组。在使用此接口后,为了避免内存泄漏,需要手动释放接口返回的指针。 |
45
46## 函数说明
47
48### OH_NativeBundle_GetCurrentApplicationInfo()
49
50```
51OH_NativeBundle_ApplicationInfo OH_NativeBundle_GetCurrentApplicationInfo()
52```
53
54**描述**
55
56获取当前应用信息,包含应用包名和应用指纹信息。
57
58**起始版本:** 9
59
60**返回:**
61
62| 类型 | 说明 |
63| -- | -- |
64| [OH_NativeBundle_ApplicationInfo](capi-native-bundle-oh-nativebundle-applicationinfo.md) | 返回新创建的OH_NativeBundle_ApplicationInfo对象。如果返回的对象为NULL,则表示创建失败。<br> 失败的可能原因是应用程序地址空间已满,导致空间分配失败。 |
65
66### OH_NativeBundle_GetAppId()
67
68```
69char* OH_NativeBundle_GetAppId()
70```
71
72**描述**
73
74获取当前应用的appId。appId是应用的唯一标识,由应用包名和签名信息决定。在使用此接口后,为了避免内存泄漏,需要手动释放接口返回的指针。
75
76**起始版本:** 11
77
78**返回:**
79
80| 类型 | 说明 |
81| -- | -- |
82| char* | 返回一个新创建的字符串,用于指示appID信息。如果返回的对象为NULL,则表示创建失败。<br> 失败的可能原因是应用程序地址空间已满,导致空间分配失败。 |
83
84### OH_NativeBundle_GetAppIdentifier()
85
86```
87char* OH_NativeBundle_GetAppIdentifier()
88```
89
90**描述**
91
92获取当前应用的应用程序标识符。该应用程序标识符在应用的整个生命周期中不会发生变化,包括版本更新、证书更改、公钥和私钥更改以及应用程序迁移。在使用此接口后,为了避免内存泄漏,需要手动释放接口返回的指针。
93
94**起始版本:** 11
95
96**返回:**
97| 类型 | 说明 |
98| -- | -- |
99| char* | 返回一个新创建的字符串,用于指示应用程序标识符信息。如果返回的对象为NULL,则表示创建失败。<br> 失败的可能原因是应用程序地址空间已满,导致空间分配失败。 |
100
101### OH_NativeBundle_GetMainElementName()
102
103```
104OH_NativeBundle_ElementName OH_NativeBundle_GetMainElementName()
105```
106
107**描述**
108
109获取当前应用入口元素mainElement的信息,包括包名、模块名和组件名,在使用此接口后,为了避免内存泄漏,需要手动释放接口返回的指针。
110
111**起始版本:** 13
112
113**返回:**
114| 类型 | 说明 |
115| -- | -- |
116| [OH_NativeBundle_ElementName](capi-native-bundle-oh-nativebundle-elementname.md) | 返回新创建的OH_NativeBundle_ElementName对象。如果返回的对象为NULL,则表示创建失败。<br> 失败的可能原因是应用程序地址空间已满,导致空间分配失败。 |
117
118
119### OH_NativeBundle_GetCompatibleDeviceType()
120
121```
122char* OH_NativeBundle_GetCompatibleDeviceType()
123```
124
125**描述**
126
127获取当前应用适用的设备类型。用于将手机应用分发到平板/2in1设备时,合理适配布局和字体大小。在使用此接口后,为了避免内存泄漏,需要手动释放接口返回的指针。
128
129**起始版本:** 14
130
131**返回:**
132
133| 类型 | 说明 |
134| -- | -- |
135| char* | 返回一个新创建的字符串,用于指示兼容设备类型。如果返回的对象为NULL,则表示创建失败。<br> 失败的可能原因是应用程序地址空间已满,导致空间分配失败。 |
136
137### OH_NativeBundle_IsDebugMode()
138
139```
140bool OH_NativeBundle_IsDebugMode(bool* isDebugMode)
141```
142
143**描述**
144
145查询当前应用是否处于调试模式。
146
147**起始版本:** 20
148
149**参数:**
150
151| 参数项 | 描述 |
152| -- | -- |
153| bool* isDebugMode | 表示应用是否处于调试模式,取值为true表示可调试模式,取值为false表示不可调试模式。 |
154
155**返回:**
156
157| 类型 | 说明 |
158| -- | -- |
159| bool | 如果调用成功,则返回true,否则返回false。 |
160
161### OH_NativeBundle_GetModuleMetadata()
162
163```
164OH_NativeBundle_ModuleMetadata* OH_NativeBundle_GetModuleMetadata(size_t* size)
165```
166
167**描述**
168
169获取当前应用程序的模块元数据数组。在使用该接口之后,为了防止内存泄漏,需要手动释放接口返回的指针。
170
171**起始版本:** 20
172
173**参数:**
174
175| 参数项 | 描述 |
176| -- | -- |
177| size_t* size | 表示模块元数据数组大小。 |
178
179**返回:**
180
181| 类型 | 说明 |
182| -- | -- |
183| [OH_NativeBundle_ModuleMetadata*](capi-native-bundle-oh-nativebundle-modulemetadata.md) | 返回模块元数据数组,如果返回的对象为NULL,则表示获取失败。<br> 失败的可能原因是应用程序地址空间已满,导致空间分配失败。 |
184