接上篇文章:
我在建立的工程中的HelloWorldScene.ccp文件里添加了如下代码:
注意标红的地方:
pc_client_t *client = pc_client_new();
// 注意这里,因为我是用android的真机测试.在最开始的时候ip地址填写的是127.0.0.1.
结果怎么测试都不能通过 int re = pc_client_connect(client, &address);这句始终返回-1
结果在网上看到其他朋友用修改ip地址的方法解决了这个问题.果不其然.注意一定不要用
127.0.0.1.具体原因有待查明. 在最下面我还会粘贴出服务端的配置代码.问题也是一样.
// const char *ip = "127.0.0.1";
const char *ip = "192.168.1.102";
struct sockaddr_in address;
memset(&address, 0, sizeof(struct sockaddr_in));
address.sin_family = AF_INET;
address.sin_port = htons(3010);
address.sin_addr.s_addr = inet_addr(ip);
int re = pc_client_connect(client, &address);
if(re) {
auto layer2 = LayerColor::create(Color4B(0,100,0,100), 400, 400);
this->addChild(layer2, 0);
CCLOG("fail to connect server.\n");
CCLOG( " haha %d a ", re );
pc_client_destroy(client);
} else {
auto layer2 = LayerColor::create(Color4B(255,0,0,200), 400, 400);
this->addChild(layer2, 0);
}
// 这里是game-server中servers.json的配置
注意下面有ip地址的地方也不要用127.0.0.1
{
"development":{
"connector": [
{"id": "connector-server-1", "host": "192.168.1.102", "port": 3150, "clientPort": 3010, "frontend": true}
]
},
"production":{
"connector": [
{"id": "connector-server-1", "host": "192.168.1.102", "port": 3150, "clientPort": 3010, "frontend": true}
]
}
}
至此成功连接.:D