Android 与PC之间的同步有关问题
发布时间:2010-05-30 10:52:44 文章来源:www.iduyao.cn 采编人员:星星草
Android 与PC之间的同步问题
Android手机做Server,PC做Client,现在程序在模拟器上调试没有问题,然后在真机上Server没有反应,另外可能要用到adb forward tcp:localport tcp:deviceport,但是也还是不能成功.
请大侠们帮我想想办法:
PC(Server)c++:
WORD wVersion;
WSADATA wsdata;
int err;
wVersion = MAKEWORD(1,1);
err = WSAStartup(wVersion,&wsdata);
if (err != 0)
{
MessageBox(NULL,L"Load Socket error!",L"",NULL);
return;
}
if (LOBYTE (wsdata.wVersion )!= 1 || HIBYTE(wsdata.wVersion) != 1)
{
MessageBox(NULL,L"Load Socket version error!",L"",NULL);
WSACleanup();
return;
}
SOCKET sockSrv = socket(AF_INET,SOCK_STREAM,0);
if (sockSrv == INVALID_SOCKET )
{
MessageBox(NULL,L"Create socket object error!",NULL,NULL);
}
SOCKADDR_IN addrsrv;
addrsrv.sin_addr.S_un.S_addr = htonl(INADDR_ANY);
addrsrv.sin_family = AF_INET;
addrsrv.sin_port = htons(8000);
bind(sockSrv,(SOCKADDR*)&addrsrv,sizeof(SOCKADDR));
listen(sockSrv,5);
SOCKADDR_IN addrclient;
int len = sizeof(SOCKADDR);
while (1)
{
SOCKET sockConn = accept(sockSrv,(SOCKADDR*)&addrclient,&len);
#if 1
MessageBox(NULL,L"Server4000 received a message!",NULL,NULL);
#endif
char szdata[100] = {0};
char newszdata[200] = {0};
recv(sockConn,szdata,100,0);
sprintf(newszdata,"the server 4000 received data is:%s",szdata);
#if 1
MessageBoxA(NULL,newszdata,NULL,NULL);
#endif
// send(sockConn,"how are you!",strlen("how are you"),0);
//after use the socket,must release the socket object
closesocket(sockConn);
}
smartphone:client(java)
String message = mEditText.getText().toString() + "rn";
Log.v("TAG", message);
Socket socket = null;
try
{
socket = new Socket("10.129.85.93",8000);
PrintWriter out = new PrintWriter( new BufferedWriter( new OutputStreamWriter(socket.getOutputStream())),true);
out.println(message);
out.close();
socket.close();
}
catch (Exception e)
{
Log.e(DEBUG_TAG, e.toString());
}
}
------解决方案--------------------
没有看你的代码,但是给你一个建议,看懂android的adb通信方式,然后用socket的方式去做同步,数据通过adb来传输就好。
这个100%可以做出来的。
另外手机端的server一定要有root权限,我想你是用会将server编译到source code中的,所以这个不是问题。
------解决方案--------------------
没问题的,手机端作为server,通过adb forward映射某个端口,server监听端口就可以了,我就是这么做的
友情提示:
信息收集于互联网,如果您发现错误或造成侵权,请及时通知本站更正或删除,具体联系方式见页面底部联系我们,谢谢。
其他相似内容:
-
Android版块严惩倒分行为,希望大家配合维持正当的技术交流 - 移动平台 / 非技术区
近期发现Android版块一些帐号在进行倒专家分操...
-
Java应用程序调用系统中任意一个so文件的方法 大家看看是否可行?
如果我想编写一个apk程序,而这个apk程序要调用系统中的非JNI的so...
-
关于ListView中CheckBox 用程序全选的问题
LisetView中view布局
XML code
<?xml version="1.0" encoding="UTF-8"?>
<RelativeLay...
-
请教一个关于广播接收器优先级的问题,为什么我无论如何都不能超越QQ,360,GO等手机助手,管家?
android官方好像说最高1000,我试过...
-
Android 布局framelayout到底怎么用
简单demo就不要说了哈,知道framelayout的简单实例,感觉没有收获,看了源码,也没有什么感觉。我想...
-
如果调用系统剪裁功能
首先调用系统图库,获取图片,然后对该图片进行剪裁,大家帮忙看下我的代码哪里有问题
Java code
Uri uri = data...
-
求4.0的framework.jar包
如题。哪位朋友有编好的4.0的framework.jar,给个下载地址,或发我邮箱heixue888@qq.com
3Q~
------解决方案...
-
关于读取手机通讯录的问题
使用Android1.5的读取方法:
Cursor cur = context.getContentResolver().query(Contacts.Peop...
-
请教如何用android画图
我想利用android写一个画图程序,请问我应该重点看android的哪些部分,请大家给点建议,还有大家是否有相关的工...
-
分享HTC手机Android源代码下载地址
http://developer.htc.com/
------解决方案--------------------
不错,可惜只有kernel的~~...