printf("create socket\r\n");
fd = socket_local_client(SOCKET_NAME_RIL,
ANDROID_SOCKET_NAMESPACE_RESERVED,
SOCK_STREAM);
if (fd < 0) {
perror ("opening radio socket error");
exit(-1);
}
printf("fd = %d\r\n",fd);
int length = 12;
char datalength[5]={0};
datalength[0] = 0;
datalength[1] = 0;
datalength[2] = (length >>8) & 0xff;
datalength[3] = (length & 0xff);
int ret = send(fd, datalength, 4, 0);
if(ret != sizeof(int)) {
perror ("Socket write error when sending length");
close(fd);
exit(-1);
}
我可以成功获得fd值,并成功发送数据。 但是从“logcat -b radio”可以看到没有任何信息可以显示。 似乎rild阻止了套接字连接。
有没有决议?感谢
答案 0 :(得分:0)
rild 套接字由手机应用程序“拥有”,因此只要正在运行,您将无法连接到该套接字。您可以尝试连接到 rild-debug 套接字。