• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1# RPC错误码
2
3> **说明:**
4>
5> 以下仅介绍本模块特有错误码,通用错误码请参考[通用错误码说明文档](errorcode-universal.md)。
6
7从API version 9起,IPC支持异常返回功能。错误码对应数值及含义如下。
8
9## 1900001 系统调用mmap失败
10
11**错误信息**
12
13Call mmap function failed.
14
15**错误描述**
16
17执行系统调用mmap失败。
18
19**可能原因**
20
211. 映射区域过大。
222. 系统内存压力大,没有足够内存可以用来进行映射。
23
24**处理步骤**
25
261. 请检查调用Ashmem::create()时是否指定了超大内存;
272. 请检查执行映射时系统是否有足够的内存可用。
28
29## 1900002 系统调用ioctl失败
30
31**错误信息**
32
33Call os ioctl function failed.
34
35**错误描述**
36
37在共享内存文件描述符上执行系统调用ioctl失败。
38
39**可能原因**
40
411. 设置的参数为内核非法参数;
422. 设置的类型超过了共享内存映射时指定的类型。
43
44**处理步骤**
45
461. 请检查调用指定的参数是否来自Ashmem类的PROT_EXEC、PROT_READ和PROT_WRITE;
472. 请检查指定的参数是否为映射共享内存时所指类型的子集。
48
49## 1900003 共享内存写数据失败
50
51**错误信息**
52
53Write to ashmem failed.
54
55**错误描述**
56
57向共享内存写数据失败。
58
59**可能原因**
60
611. 单次写或者连续写的总内容超过了映射的共享内存大小;
622. 没有对共享内存设置PROT_WRITE模式。
63
64**处理步骤**
65
661. 请检查当前向共享内存所写内容是否已经超过了映射的总大小;
672. 请检查是否设置了PROT_WRITE保护权限。
68
69## 1900004 共享内存读数据失败
70
71**错误信息**
72
73Read from ashmem failed.
74
75**错误描述**
76
77从共享内存读数据失败。
78
79**可能原因**
80
811. 单次写或者连续写的总内容超过了映射的共享内存大小;
822. 没有对共享内存设置PROT_READ模式。
83
84**处理步骤**
85
861. 请检查当前向共享内存所写内容是否已经超过了映射的总大小;
872. 请检查是否设置了PROT_READ保护权限。
88
89## 1900005 ipc对象权限错误
90
91**错误信息**
92
93Only proxy object permitted.
94
95**错误描述**
96
97只有proxy对象允许该操作。
98
99**可能原因**
100
101在RemoteObject对象上调用了只有RemoteProxy对象支持的方法。
102
103**处理步骤**
104
105请检查是否在RemoteObject对象上调用了只有RemoteProxy对象支持的方法。
106
107## 1900006 ipc对象权限错误
108
109**错误信息**
110
111Only remote object permitted.
112
113**错误描述**
114
115只有remote对象允许该操作。
116
117**可能原因**
118
119在RemoteProxy对象上调用了只有RemoteObject对象支持的方法。
120
121**处理步骤**
122
123请检查是否在RemoteProxy对象上调用了只有RemoteObject对象支持的方法。
124
125## 1900007 远端对象通信失败
126
127**错误信息**
128
129Communication failed.
130
131**错误描述**
132
133和远端对象进行进程间通信失败。
134
135**可能原因**
136
1371. 远端对象已经销毁;
1382. 远端对象发生了销毁然后重新创建,本端持有的代理对象已经过期。
139
140**处理步骤**
141
1421. 请检查远端对象是否已经销毁;
1432. 请检查是否注册了死亡监听,并且远端对象发生析构又重新创建。
144
145## 1900008 非法的ipc对象
146
147**错误信息**
148
149Proxy or remote object is invalid.
150
151**错误描述**
152
153非法的代理对象或者远端对象。
154
155**可能原因**
156
1571. 代理对象已经失效;
1582. 远端对象已经销毁。
159
160**处理步骤**
161
1621. 请检查proxy对象获取过程是否有异常;
1632. 请检查远端对象是否已经析构。
164
165## 1900009 向MessageSequence写入数据失败
166
167**错误信息**
168
169Write data to message sequence failed.
170
171**错误描述**
172
173向MessageSequence写数据失败。
174
175**可能原因**
176
177sequence默认空间已满。
178
179**处理步骤**
180
181请使用MessageSequence提供的获取缓冲区空间相关方法确认是否还有剩余空间。
182
183## 1900010 读取MessageSequence数据失败
184
185**错误信息**
186
187Read data from message sequence failed.
188
189**错误描述**
190
191读取MessageSequence数据失败。
192
193**可能原因**
194
195读取和写入顺序不一致。
196
197**处理步骤**
198
199请检查读取的顺序和写入的顺序保持严格一致。
200
201## 1900011 内存分配失败
202
203**错误信息**
204
205Sequence memory alloc failed.
206
207**错误描述**
208
209序列化过程中内存分配失败。
210
211**可能原因**
212
213写入的数据过大。
214
215**处理步骤**
216
217请检查写入的数据或者设置的参数是否过大。
218
219## 1900012 JS方法失败
220
221**错误信息**
222
223Call JS callback function failed.
224
225**错误描述**
226
227执行JS回调方法失败。
228
229**可能原因**
230
231业务的JS方法返回失败。
232
233**处理步骤**
234
235请检查业务JS方法是否执行成功。
236
237## 1900013 系统调用dup失败
238
239**错误信息**
240
241Call os dup function failed.
242
243**错误描述**
244
245执行系统调用dup失败。
246
247**可能原因**
248
2491. 进程的文件句柄资源已经耗尽;
2502. 入参fd已经被关闭。
251
252**处理步骤**
253
2541. 请检查入参fd是否依然有效;
2552. 请排查进程是否已经耗尽了fd资源。