c 服务器和android客户端,通过TCP与c + +(套接字服务器)conect android(套接字客户端)...
我有一个实现在大学项目中做,我不知道如何avchive它!我的问题就像标题所说的那样,通过套接字将C++与android连接起来。通过TCP与c + +(套接字服务器)conect android(套接字客户端)
C++必须管理至少一对套接字客户端(android设备)或更多。 所以我尽量...
#include
#include
#include
#include
#include
#include
#include
#include
using namespace std;
int main()
{
int client, server;
int portnum = 1500;
bool isExit = false;
int bufsize = 1024;
char buffer[bufsize];
struct sockaddr_in server_addr;
socklen_t size;
//init socekt
client = socket(AF_INET, SOCK_STREAM, 0);
if(client < 0){
cout << "Error Estableciendo la conexion" << endl;
}
cout <
server_addr.sin_family = AF_INET;
server_addr.sin_addr.s_addr = htons(INADDR_ANY);
server_addr.sin_port = htons(portnum);
//biding soket
if(bind(client,(struct sockaddr*)&server_addr,sizeof(server_addr)) < 0){
cout << "Error Biding Socket" << endl;
exit(1);
}
size= sizeof(server_addr);
cout << "buscando clientes" << endl;
//escuchando sokets
listen(client,1);
//accept client
server = accept(client, (struct sockaddr*)&server_addr, &size);
if(server < 0){
cout<< "Error al Aceptar" << endl;
exit(1);
}
while(server >0){
strcpy(buffer,"server conectado---\n");
send(server,buffer,bufsize,0);
cout <
cout << "Ingresad # paara terminar la conexion" << endl;
cout <
do{
recv(server,buffer,bufsize,0);
cout << "buffer" << " ";
if(*buffer == '#'){
*buffer = '*';
isExit=true;
}
}while(*buffer != '*');
do{
cout << "\n server: ";
do{
cin >> buffer;
send(server,buffer,bufsize,0);
if(*buffer == '#'){
send(server,buffer,bufsize,0);
*buffer = '*';
isExit=true;
}
}while(*buffer != '*');
cout << "Client: ";
do{
recv(server,buffer,bufsize,0);
cout << buffer << " ";
if(*buffer == '#'){
*buffer = '*';
isExit = true;
}
}while(*buffer != '*');
}while(isExit);
cout << "Conection Terminated..." << endl;
cout << "Goodbye..." << endl;
isExit =false;
exit(1);
}
close(client);
return 0;
}
听每一个连接如(请如果你看到我的代码不好逻辑让我知道,我需要做什么来解决它)
和Android的我做这样的事情的,其仅用于测试的活动称为类...
import java.net.Socket;
import java.io.BufferedReader;
import java.io.InputStreamReader;
public class Socktest {
public void prueba() {
try {
Socket sock = new Socket("127.0.0.1",1234);
// Your Java Code Verbatim:
BufferedReader br = new BufferedReader(new InputStreamReader(sock.getInputStream()));
String test = br.readLine();
System.out.println(test);
sock.close();
} catch (Exception ex) {
System.out.println(ex.getCause().toString());
}
}
}
(请如果你看到不好的逻辑让我knowit因为我想学习更多的从自己的失败)
和服务器进展良好,当我编译时,它的站立,以recive新的连接,但是当一个luch的android活动,我运行“连接类”它说访问被拒绝,我正在对linux mint工作,如果那..
我将与你coments,建议和意见gratfull。
+0
它看起来像在服务器上将portnum设置为1500,但客户端正试图连接到端口1234.另外,客户端正尝试连接到本地主机(127.0.0.1),因此除非在相同的代码上运行Java代码机器作为服务器,它不会工作 –
+0
'套接字袜子=新的套接字(“127.0.0.1”,1234);'这条线是你的问题在这里,'127 .0.0。1'是本地环路IP,它实际上是映射到它正在运行的设备的IP地址 –
+0
您的监听套接字称为“客户端”。它不是客户。您正在监听一个端口并尝试连接另一个端口。 –
c 服务器和android客户端,通过TCP与c + +(套接字服务器)conect android(套接字客户端)...相关推荐
- 基于TCP/IP协议的Java服务端与Android客户端的Socket通信及数据交互
基于TCP/IP协议的Java服务端与Android客户端的Socket通信及数据交互 一.前言 1.Java服务端程序代码的项目名为TcpSocketServerOfJava,包名为com.exam ...
- tcp和udp多线程的epoll服务器+客户端源代码 - brucema的个人空间 - 开源中国社区
tcp和udp多线程的epoll服务器+客户端源代码 - brucema的个人空间 - 开源中国社区 tcp和udp多线程的epoll服务器+客户端源代码
- qt客户端连接服务器不响应,qt判断tcp客户端是否连接服务器
qt判断tcp客户端是否连接服务器 内容精选 换一换 本章节指导您使用MongoDB客户端,通过弹性云服务器内网方式连接GaussDB(for Mongo)集群实例.操作系统使用场景:弹性云服务器的操 ...
- python服务器qt客户端_python3+PyQt5 创建多线程网络应用-TCP客户端和TCP服务器实例...
本文在上文的基础上重新实现支持多线程的服务器. 以下为TCP客户端的程序代码: #!/usr/bin/env python3 import sys from PyQt5.QtCore import ( ...
- 服务器主动发送fin信号,tcp 服务器向客户端发送FIN
tcp 服务器向客户端发送FIN 内容精选 换一换 ELB的常见异常返回码有400.403.502.504等.若遇到这些返回码建议您先直接访问后端云服务器,查看是否是后端云服务器的异常.若后端云服务器 ...
- 服务器与客户端的TCP连接
TCP通讯之服务器与客户端的连接 相关的网站: 一.第一个案例 二.Node.js使用TCP通讯 (一).创建TCP Server (二).创建 TCP Client 三.Node.js 搭建TCP服 ...
- 网闸虚拟服务器,tcp客户端和tcp服务器端 网闸
tcp客户端和tcp服务器端 网闸 内容精选 换一换 负载均衡器是指您创建的承载业务的负载均衡服务实体.创建负载均衡器后,您还需要在负载均衡器中添加监听器和后端服务器,然后才能使用负载均衡服务提供的功 ...
- Qt TCP/IP(多客户端连接服务器)多个客户端同时登陆的聊天室示例
一.TCP和UDP的区别 这里我会用一个表格来显示这两者的区别 比较项 TCP UDP 是否连接 面向连接 无连接 传输是否可靠 可靠 不可靠 流量控制 提供 不提供 工作方式 全双工 可以是全双工 ...
- tcp服务器维护接入客户端mac,tcp服务器怎么获取客户端mac
tcp服务器怎么获取客户端mac 内容精选 换一换 本章节中介绍的初始配置操作只需在每台终端设备上配置一次.初始配置需要的数据及其详细配置步骤,由管理员根据实际情况定制.客户端支持中标麒麟桌面操作系统 ...
最新文章
- 你们是不是也是开一堆shell. » 社区 | Ruby China
- lamda list 分组_java8lambda表达式对集合分组并且排序(记一次性能优化案例)
- 初一模拟赛总结(3.16)
- 注解动态赋值_Java注解是如何玩转的,面试官和我聊了半个小时
- linux java 查找进程中的线程
- php隐藏路径ngnix,thinkphp框架在nginx环境下去掉index.php路径显示
- plsql无监听程序_详细!看看顶级互联网公司都在研究的无服务器架构!
- 怎么赚美金_我16岁时如何赚到200,000美元
- 自定义view圆环的改变
- LOJ2542 随机游走 Min-Max容斥+树上期望DP
- 电脑wifi距离测试软件,wifi测速工具
- 实用的chrome插件
- 2021-01-13事件对象
- iphone测试内存读取速度软件,iPhone7内存不同读写速度有差? 实测差距惊人!
- CSS自定义字体,在线字体格式转换
- 猜拳php代码,使用JavaScript如何实现猜拳游戏(详细教程)
- 百度地图动态添加marker的图片显示问题
- 最强蜗牛服务器维护祷告攻略,最强蜗牛维护补偿在哪里领取 最强蜗牛维护补偿领取攻略_游戏堡...
- Latex 大括号错位显示
- Android toolchain - develop for Android devices
热门文章
- 域名该怎么玩?域名玩法介绍
- poj2367——拓扑排序
- 【转】MFC隐藏进程自身(任务管理器不可见,wSysCheck等工具可见)
- C#将数字自动翻译为中文,使用循环迭代的方式
- 工业机器人(4)-- Matlab Robot Toolbox运动学正、逆解
- ld: symbol(s) not found for architecture i386 只在iPad模拟器上报错,其它模拟器上正常显示
- 深空天体数据库 天文编程用
- 建筑空间温度分布预测模型与温度曲线图绘制毕业论文
- 微博周记(2011-03-21---2011-03-25)
- Unity项目在亚马逊KindleFire设备上旋转不正确的解决方案