2013-01-08 107 views
2

我用C做了一個Unix套接字和我一起NDK編譯它,並通過亞行我推在/數據/從我的SD卡本地。我將該文件的權限更改爲777並使用./執行。現在我可以在/ dev/socket中看到自己的套接字了。無法連接到UNIX插座,Android的

我現在想這個插座通過下面的Java代碼連接:

  mSocket = new LocalSocket(); 

      mSockAddr = new LocalSocketAddress("rilproxy" ); 
      mSocket.connect(mSockAddr); 

我收到以下錯誤:

產生java.io.IOException:連接被拒絕

我努力解決這個問題,但沒有運氣。任何在這方面的幫助將不勝感激。

+0

查詢: 1你試圖打開從安德烈的套接字連接oid應用到同一個Android設備。 2.您是在設備上還是在仿真器上測試? – RDX

+0

後全堆棧跟蹤 – njzk2

+0

1 - 是2 - 在設備上。 我無法得到充分的堆棧跟蹤,剛開提到的錯誤。 – ARDaniyal

回答

0

。你有Internet權限在Android清單文件?如果沒有,那麼你的第一個套接字連接本身就會失敗。(一個正確編碼的Android應用程序聲明其清單中的網絡許可可以接受未驅動端口上的連接,因爲設備上沒有防火牆。)

添加下面一行到AndroidManifest.xml

如果模擬器進行測試,然後使用使用10.0.2.2代替本地主機(10.0.2.2是,如果運行的應用程序你會用「神奇」的IP地址仿真器)

+0

感謝您的回覆,因爲我沒有使用IP套接字與IP和端口號。我正在使用unix套接字,它僅用於執行ipc並僅需要路徑。 – ARDaniyal

+0

您確定該流程在嘗試連接時已開始收聽嗎?你可能會在它之前跑步。 – RDX