【H5+ Quick-cocos2dx整合】之iOS 三 集成Quick-Cocos2dx SDK
添加Quick-cocos的依赖项目
依赖项目位于下载的Quick-Cocos2dx目录下
/build/cocos2d_libs.xcodeproj
/cocos/scripting/lua-bindings/proj.ios_mac/ cocos2d_lua_bindings.xcodeproj
拖动这两个文件添加到项目下
Target à BuildPhases à Target Dependencies
单击“+”添加libcocos2d 和 libluacocos2d
添加Lib文件libcocos2d.a和libluacocos.a
添加头文件引用
/quick/lib/quick-src
注:需要手动移除在/ extra/platform中与ios不相关的引用(待写。。。)
添加引用包路径
引入Frameworks:
CoreMotion.framework
StoreKit.framework
GameController.framework
OpenAL.framework
设置Header Search Paths
$(inherited)
$(QUICK_V3_ROOT)/cocos
$(QUICK_V3_ROOT)/cocos
$(QUICK_V3_ROOT)/cocos/base
$(QUICK_V3_ROOT)/cocos/physics"$(QUICK_V3_ROOT)/cocos/math/kazmath""$(QUICK_V3_ROOT)/cocos/2d"
"$(QUICK_V3_ROOT)/cocos/ui"
"$(QUICK_V3_ROOT)/cocos/network""$(QUICK_V3_ROOT)/cocos/audio/include""$(QUICK_V3_ROOT)/cocos/editor-support""$(QUICK_V3_ROOT)/extensions"
"$(QUICK_V3_ROOT)/external""$(QUICK_V3_ROOT)/external/chipmunk/include/chipmunk""$(QUICK_V3_ROOT)/external/lua/luajit/include""$(QUICK_V3_ROOT)/external/lua/tolua""$(QUICK_V3_ROOT)/external/glfw3/include/mac""$(QUICK_V3_ROOT)/external/lua/luajit/include""$(QUICK_V3_ROOT)/cocos/scripting/lua-bindings/manual""$(QUICK_V3_ROOT)/cocos/scripting/lua-bindings/auto""$(QUICK_V3_ROOT)/cocos/scripting/lua-bindings/manual"$(QUICK_V3_ROOT)/quick/lib/quick-src"$(QUICK_V3_ROOT)/quick/lib/quick-src/extra""$(QUICK_V3_ROOT)/external/protobuf-lite/src"
设置User Header Search Paths:
$(inherited)
"$(QUICK_V3_ROOT)/cocos/platform/ios""$(QUICK_V3_ROOT)/external/curl/include/ios"
设置Framework Search Paths
CCLibs(该目录自行创建,只包含一个opengl.framework,该文件在cocos2dx中能找到)
编译参数配置:
Objective-CAutomatic Reference Counting à No
Always SearchUser Paths à Yes
PrecompilePrefix Header à Yes
Prefix Header à H5_Cocos_Integrate/Prefix.pch
Prefix.pch
#ifdef __OBJC__
#import <Foundation/Foundation.h>
#import <UIKit/UIKit.h>
#endif
设置宏变量(Preprocessor Macros)
Debug:
$(inherited)
COCOS2D_DEBUG=1
USE_FILE32API
CC_LUA_ENGINE_ENABLED=1
CC_ENABLE_CHIPMUNK_INTEGRATION=1
CC_TARGET_OS_IPHONE
Release:
CC_TARGET_OS_IPHONE
$(inherited)
CC_ENABLE_CHIPMUNK_INTEGRATION=1
CC_LUA_ENGINE_ENABLED=1
USE_FILE32API
集成cocos2dx代码
代码生成
可以通过quick-cocos2dx创建一个工程,找到下图中四个类文件,引用到项目中。
注:AppDelegate.cpp改为AppDelegate.mm,一是为了OC和C++混编引用自己定义的app管理类,便于h5和cocos2dx之间的协调工作。
添加Demo资源
同样通过Quick-Cocos2dx创建一个demo工程,拷贝其中res和src目录到项目中,并引用。
可以通过Copy Bundle Resources添加引用。
错误示例
错误:oc编译参数错误
quick-src/extra/platform/ios/json/SBJSON.m:46:17:error: 'release' is unavailable: not available in automatic reference countingmode
[jsonWriter release];
解决方法:Objective-C Automatic Reference Counting à No
错误:设置宏变量
/Users/katichar/H5Plus_QuickCocos2dx_Integrate/frameworks/CCLibs/OpenGL.framework/Versions/A/Headers/glext.h:2289:49:Unknown type name 'GLdouble'; did you mean 'double'?
debug:
$(inherited) COCOS2D_DEBUG=1 USE_FILE32APICC_LUA_ENGINE_ENABLED=1 CC_ENABLE_CHIPMUNK_INTEGRATION=1 CC_TARGET_OS_IPHONE
release:
CC_TARGET_OS_IPHONE $(inherited)CC_ENABLE_CHIPMUNK_INTEGRATION=1 CC_LUA_ENGINE_ENABLED=1 USE_FILE32API
错误:缺少StoreKit.framework
"_OBJC_CLASS_$_SKPayment",referenced from:
objc-class-ref in CCStoreIOS.o
错误:缺少CoreMotion.framework
"_OBJC_CLASS_$_CMMotionManager",referenced from:
objc-class-ref in libcocos2diOS.a(CCDevice-ios.o)
删除部分:
protobuf—pb.o
md5
TargetàBuildSettingsàApple LLVM7.1 – Language à
Precompile Prefix Header àYes
Prefix Header à H5_Cocos_Integrate/Prefix.pch
【H5+ Quick-cocos2dx整合】之iOS 三 集成Quick-Cocos2dx SDK相关推荐
- ios html5上架,iOS原生集成H5+详细流程
iOS原生集成H5+ 集成方式 独立应用方式集成 Widget方式集成 WebView方式集成 可以打开官方链接: 选择 5+SDK -> 5+SDK集成 -> 平台 下查看集成方式 独立 ...
- cocos creator2.3.5休闲游戏英文版(连连看)源码H5+安卓+IOS三端源码
cocos creator2.3.5休闲游戏英文版(连连看)源码H5+安卓+IOS三端源码,开发脚本为typeScript方便扩展和阅读,支持cocos creator2.X版本,完整的源码可直接运营 ...
- cocos creator3.3.0休闲游戏(云浮消消乐)源码H5+安卓+IOS三端源码
cocos creator3.3.0休闲游戏(云浮消消乐)源码H5+安卓+IOS三端源码,开发脚本为typeScript方便扩展和阅读,支持cocos creator3.X版本,完整的源码可直接运营. ...
- 休闲游戏合成植物打僵尸源码-H5+安卓+IOS三端源码
游戏引擎:Cocos Creator 2.3.3 编程语言:TypeScript cocos creator休闲游戏合成植物打僵尸源码-H5+安卓+IOS三端源码,开发脚本为javaScript方便扩 ...
- cocos creator休闲游戏甜品幻想H5+安卓+IOS三端源码开发脚本为javaScript
cocos creator休闲游戏甜品幻想H5+安卓+IOS三端源码,开发脚本为javaScript方便扩展和阅读,支持cocos creator2.X版本,完整的源码可拿来运营学习研究二次开发. 1 ...
- cocos creator经典游戏英文版《俄罗斯方块》源码H5+安卓+IOS三端源码
cocos creator2.2.2经典游戏英文版<俄罗斯方块>源码H5+安卓+IOS三端源码,开发脚本为typeScript方便扩展和阅读,支持cocos creator2.X版本,完整 ...
- cocos creator2.2.2休闲游戏(单机捕鱼)源码H5+安卓+IOS三端源码
cocos creator2.2.2休闲游戏(单机捕鱼)源码H5+安卓+IOS三端源码,开发脚本为typeScript方便扩展和阅读,支持cocos creator2.X版本,完整的源码可直接运营. ...
- 3D休闲游戏夺宝向前冲3D游戏源码H5+安卓+IOS三端源码
cocos creator3D1.2休闲游戏夺宝向前冲3D游戏源码H5+安卓+IOS三端源码,开发脚本为typeScript方便扩展和阅读,支持cocos creator3D版本,完整的源码可直接运营 ...
- cocos creator2.4.4 英文卡牌游戏源码H5+安卓+IOS三端源码
cocos creator2.4.4 英文卡牌游戏源码H5+安卓+IOS三端源码,开发脚本为typeScript方便扩展和阅读,支持cocos creator2.X版本,完整的源码可直接运营.纯英文版 ...
最新文章
- 2017.4.6AM
- 01-密码学基础-前言
- 【PAT乙级】 1015 德才论 (25 分)
- 和ajax区别_AJAX、Fetch和Axios的细微区别
- Redis和Memcache区别,优缺点对比
- C++建立队列_利用链表
- 计数问题(洛谷-P1980)
- 从缓冲池命中率角度判断自己的MYSQL数据库是否需要扩容内存
- 力扣977,有序数组的平方(JavaScript)
- Flutter进阶—实现动画效果(六)
- Vue自定义组件封装及使用Excel
- 说出x的结果,并解释为什么?
- mdk 加static会被优化吗_网站关键词排名优化你会吗?深圳龙岗网络外包公司讲解...
- Linux虚拟文件系统之文件打开(sys_open())
- linux运行j2me,Linux下用Eclipse搭建J2me开发环境过程
- [Telink][TLSR8251] [泰凌微][SDK3.4] 上手第二步 框架介绍
- 软件工程人才的社会需求现状与发展趋势分析
- Web前端——什么是web前端,什么是HTML及其常用标签
- 2022广东省安全员B证第四批(项目负责人)考试题模拟考试题库及答案
- Android Camera API 2使用OpenGL ES 2.0和GLSurfaceView对预览进行实时二次处理(黑白滤镜)
热门文章
- 优化着色器信息加载,或查看Yer数据!
- 写给‘真‘零经验的童鞋学习编程的建议
- 滴滴快车奖励政策,高峰奖励,翻倍奖励,按成交率,指派单数分级(1月2日)...
- RISC-V 架构指令集手册 第一册 无特权指令集 中文翻译
- 计算机组成原理-算术逻辑单元(ALU)
- 上海之旅,再让键盘长几天草
- 互联网日报 | 苹果10月14日再开发布会;消息称B站明年赴港二次上市;我国电子社保卡申领超2亿张...
- java viewer 控件_插件制作过程记录(使用TreeViewer贡献视图)
- hadoop实战(一)
- 【新示例】协作云路上的先驱or先烈,思科、TCL合资的科天云这样思考