注册 登录
主题 : 让quick-cocos2dx接入scut sdk
级别: *
UID: 250074
精华: *
发帖: *
可可豆: * CB
威望: * 点
在线时间: (时)
注册时间: *
最后登录: *
0 楼:  发表于: 2013-12-26 17:41    发自: Web Page

让quick-cocos2dx接入scut sdk   

管理提醒: 本帖被 scut 执行置顶操作(2013-12-26)
windows平台:
1. player需要加入对scutsdk的引用,具体办法是,让player增加静态链接库ScutSDK_2012.lib(由vs2012的scutsdk工程生成),并且在AppDelegate.cpp中初始化scutsdk关于网络方面的内容,我是这样做的,引用ScutExt.h,然后为player工程添加ScutExt.h的引用目录,在applicationDidFinishLaunching函数中 string env = "__LUA_STARTUP_FILE__=\"";之前添加代码:

//load scut sdk
string script_dir = path.substr(0, path.find_last_of("/"));
string root_dir = script_dir.substr(0, script_dir.find_last_of("/"));
ScutExt::Init(root_dir+"/");


2. 在lua代码中按照scutsdk的文档说明来使用网络相关的接口,(scutscene和网络处理那个manager不一定要按照文档的写,可以自己写,要清楚几个节点必须有,就是传入处理的scene必须有scutscene的几个回调接口,然后manager里面必须有对网络消息的循环处理,最重要的就是nethelper里面需要将目标服务器地址修改为自己的服务器地址和端口)

android平台:
引入过程稍微麻烦一些,引入后使用和windows中一样,这里只列举详细的引入步骤
(根目录默认为quick生成工程中的proj.android目录):
1. 将../sources/AppDelegate.cpp替换为windows平台1条目中修改完成后的AppDelegate.cpp(或者自己加上scutext.h的引用)
2. 在build_native.bat中的NDK_MODULE_PATH参数中添加对scutsdk的引用,我使用了自己注册的环境变量SCUT_SDK,这个环境变量上面windowst条目1中引用scut的头文件时也有用,建议自己注册个。我的环境变量是SCUT_SDK = D:\scut\SDK\ScutSDK
3. 修改\jni\Android.mk文件,添加NDK编译时对ScutExt.h的引用,在LOCAL_C_INCLUDES中添加D:\scut\SDK\ScutSDK(自己的目录自己修改,如果之前已经定义了LOCAL_C_INCLUDES,那么使用 \D:\scut\SDK\ScutSDK来增加配置)
4. \jni\Android.mk中LOCAL_WHOLE_STATIC_LIBRARIES中添加一行LOCAL_WHOLE_STATIC_LIBRARIES += scutsdk_static
5. \jni\Android.mk中最后加入$(call import-module,proj.android),目的是为了引用scutsdk的库,因为NDK编译的时候,NDK_MODULE_PATH已经添加了scutsdk的目录,所以引用的路径只是proj.android就好。
6. 修改D:\scut\SDK\ScutSDK\proj.android\Android.mk文件(如果你的目录是完全按照scutsdk的方式来放置,那么可以跳过这一步,但是大多数人估计都想自己放置目录),在第二行添加COCOS2DX_PATH := D:\quick-cocos2d-x\lib\cocos2d-x(qucik的路径自己做修改哈,我是放在D盘的),然后把该目录中所有$(LOCAL_PATH)/../../../cocos2d-x这个串替换为$(COCOS2DX_PATH)就好了。
7.至此环境配置都改好了,然后就可以使用quick自带的build_native.bat通过NDK编译来生成安卓的库了,发布了apk包就可以测试是否能够连上服务器了。
图片:quick简单模板.jpg
描述:quick简单模板
附件: quick-template.rar (15 K) 下载次数:161
清空我的评分动态本帖最近评分记录: 共1条评分记录
scut 可可豆 +1 2013-12-26 感谢
隐藏评分记录
级别: 版主
UID: 264973
精华: 0
发帖: 275
可可豆: 671 CB
威望: 671 点
在线时间: 87(时)
注册时间: 2013-10-10
最后登录: 2016-01-04
1 楼:  发表于: 2013-12-26 17:43    发自: Web Page
感谢!!!!!!!
级别: *
UID: 250074
精华: *
发帖: *
可可豆: * CB
威望: * 点
在线时间: (时)
注册时间: *
最后登录: *
2 楼:  发表于: 2013-12-26 17:43    发自: Web Page
后面的截图就是用quick的player跑quick简单模板的截图,简单模板包中还有文中提到的安卓发布的相关配置。
级别: 新手上路
UID: 308443
精华: 0
发帖: 1
可可豆: 1 CB
威望: 1 点
在线时间: 13(时)
注册时间: 2014-04-16
最后登录: 2017-07-22
3 楼:  发表于: 2014-04-20 17:00    发自: Web Page
回 楼主(米糕集训) 的帖子
在windows平台顺利通过
在android平台build-native时 会报找不到lua.h文件,不知道是怎么回事??
级别: *
UID: 250074
精华: *
发帖: *
可可豆: * CB
威望: * 点
在线时间: (时)
注册时间: *
最后登录: *
4 楼:  发表于: 2014-04-22 21:18    发自: Web Page
回 3楼(lambp) 的帖子
lua.h文件位于quick引擎的目录中,你报错没有找到这个文件应该是相关的关联路径没有正确设置,build_native.bat中的关联目录都检查一下,全部正确设置了,安卓跑起来的是没有问题的
[ 此帖被米糕集训在2014-04-23 13:27重新编辑 ]

级别: 新手上路
状态: 连续签到 - [8天]
UID: 312909
精华: 0
发帖: 23
可可豆: 93 CB
威望: 76 点
在线时间: 35(时)
注册时间: 2014-05-05
最后登录: 2016-06-20
5 楼:  发表于: 2014-09-02 09:56    发自: Web Page
我配置了 怎么提示这个错误, 请分析
图片:QQ图片20140902100039.jpg
开心小可乐
级别: 新手上路
状态: 连续签到 - [8天]
UID: 312909
精华: 0
发帖: 23
可可豆: 93 CB
威望: 76 点
在线时间: 35(时)
注册时间: 2014-05-05
最后登录: 2016-06-20
6 楼:  发表于: 2014-09-02 11:42    发自: Web Page
回 3楼(lambp) 的帖子
你的lua.h找到了吗
开心小可乐
级别: 新手上路

状态: 连续签到 - [1天]
UID: 259934
精华: 0
发帖: 27
可可豆: 126 CB
威望: 104 点
在线时间: 198(时)
注册时间: 2013-05-20
最后登录: 2017-11-14
7 楼:  发表于: 2014-09-26 17:12    发自: Web Page
使用你的脚本运行之后:提示attempt to index global 'ScutDataLogic' (a nil value) 请问这是怎么回事?

级别: 侠客
UID: 282473
精华: 0
发帖: 116
可可豆: 287 CB
威望: 287 点
在线时间: 132(时)
注册时间: 2013-12-18
最后登录: 2017-10-26
8 楼:  发表于: 2015-06-05 11:06    发自: Web Page
为啥要接sdk啊,烦啊,,如果只是发网络消息过来,这边自己实现协议不就好了么,,,接各种sdk好烦啊,,,哎,,,就没一个好点的服务器引擎
级别: 新手上路
UID: 10
精华: 0
发帖: 2
可可豆: 2 CB
威望: 2 点
在线时间: 2(时)
注册时间: 2008-04-02
最后登录: 2016-03-27
9 楼:  发表于: 2016-03-26 22:22    发自: Web Page
不错不错,楼主辛苦了!

描述
快速回复

关注本帖(如果有新回复会站内信通知您)

发帖、回帖都会得到可观的积分奖励。查看论坛积分规则

按"Ctrl+Enter"直接提交
    顶部