2011-12-19 58 views
0

中的寫入c代碼訪問rild套接字。我寫這樣的代碼:是否有可能在標題中使用Android

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無線電」沒有什麼信息可以顯示。 似乎rild已阻止套接字連接。

有沒有什麼決議?謝謝

+0

我無法解析您的問題標題。 –

回答

0

rild套接字由電話應用「擁有」,因此只要該套接字處於運行狀態,您將無法連接套接字。您可以嘗試連接到rild-debug套接字。

相關問題