android 进程间通信之SOCKET通信,androidsocket
分享于 点击 28923 次 点评:173
android 进程间通信之SOCKET通信,androidsocket
java 和C 之间进 行socket通信
java
//连接服务器
private static finale String SOCKET_NAME = "mySocket";
public boolean connect(){
if(mSocket!=null)
return true;
try{
mSocket = new LocalSocket();
LocalSocketAddress address = new LocalSocketAddress(SOCKET_NAME,LocalSocketAddress.Namespace.RESERVED);
mSocket.connect(address);//连接
mIn = mSocket.getInputStream();//输入
mOut = mSocket.getOutputStream();//输出
}catch(IOException ex){
disconnect();
return false;
}
}
#include <sys/socket.h>
#include <cutils/sockets.h>
</pre><pre code_snippet_id="415828" snippet_file_name="blog_20140703_14_1287721" name="code" class="cpp" >#define SOCKET_NAME "mySocket" //同java
int lsocket;
struct socketaddr addr;
socklen_t alen;
</pre><pre code_snippet_id="415828" snippet_file_name="blog_20140703_19_951030" name="code" class="cpp" >lsocket = android_get_control_socket(SOCKET_NAME);</span>
if(lsocket<0)
exit(1);
if(listen(lsocket,5))
<span > </span>exit(1);
fcntl(lsocket,F_SETFD,FD_CLOEXEC);
for(;;){
<span > </span>alen = size(addr);
<span > </span>s = accept(lsocket,&addr,&alen);
<span > </span>if(s<0)
<span > </span>continune;
<span > </span>fcntl(s,F_SETFE,FD_CLOEXEC);
<span > </span>for(;;){
<span > </span>read //
<span > </span>write...
<span > </span>}
}
相关文章
- 暂无相关文章
用户点评