Creator接入AnySDK教程

#Creator接入AnySDK教程

##概述
从Creator 1.2版本起,构建项目的时候就会自动集成AnySDK框架,本篇介绍如何接入AnySDK。更多关于AnySDK的资料可以查看官方wiki

##创建游戏
由于目前AnySDK for Creator的插件尚未发布,需要从官网下载独立的AnySDK客户端来进行创建游戏和打包。登陆AnySDK客户端,创建新游戏,得到三个参数。

关于AnySDK客户端更多的介绍可以参考客户端使用手册

##服务端接入
如果游戏接入用户和支付的话,需要游戏服务端处理登陆验证和支付验签相关逻辑,参考以下两篇文档进行接入。
统一登陆验证
订单支付通知

##客户端接入
###构建项目
点击菜单【项目】->【构建发布】,在该界面构建出Cosos工程,构建出来的Cosos工程已经自动集成好了AnySDK。

###调用初始化接口
Android和iOS是在SDKManager.cpp的loadAllPlugins函数里进行初始化的,不需要在js再初始化了,需要修改初始化的参数,代码如下:

std::string oauthLoginServer = "OAUTH_LOGIN_SERVER";
std::string appKey = "APP_KEY";
std::string appSecret = "APP_SERCRET";
std::string privateKey = "PRIVATE_KEY";
    
AgentManager* pAgent = AgentManager::getInstance();
pAgent->init(appKey,appSecret,privateKey,oauthLoginServer);
    
//Initialize plug-ins, including SDKs.
pAgent->loadAllPlugins();

appKey、appSecret、privateKey填写AnySDK客户端创建游戏后生成的参数,oauthLoginServer填写游戏服务端用于登陆验证的地址(如不接入用户则随便填写)。

PS:init初始化传的参数如果和打包的游戏的参数不一致,会导致渠道包运行的时候就强制退出。

###调用各系统接口
根据游戏需求,参考以下文档来调用各个系统的接口。
用户系统
支付系统
统计系统
分享系统
广告系统
推送系统
崩溃分析系统
广告追踪系统

##打包
Android:编译生成游戏的apk,该apk将作为AnySDK客户端打包用的母包。
iOS:xcode工程直接作为AnySDK客户端打包用的母工程。
H5:无需打包,只需AnySDK客户端添加渠道配置。

在AnySDK客户端里添加渠道以及自己所需要接入的SDK,配置好SDK的参数(需要自己上SDK的后台申请参数),选择游戏母包即可进行打包。

##备注
目前H5只支持渠道SDK接入,并且必须使用AnySDK企业版,如有需求可联系AnySDK商务。

陈燕淑 商务主管
触控厦门 | AnySDK项目组
QQ:173732820
Mob:13950013330 (微信)
E-mail:chenys@anysdk.com、yanshu.chen@chukong-inc.com
网址:www.anysdk.com
Add:厦门市观音山商务中心7号楼1302

1赞

赞      

按你的步骤以后,报错(cocoscreator1.2.2):

`
{
gl.supports_vertex_array_object: true
cocos2d.x.version: cocos2d-x-3.10-lite
cocos2d.x.compiled_with_profiler: false
gl.version: OpenGL ES 2.0 APPLE-12.0.41
cocos2d.x.build_type: DEBUG
cocos2d.x.build_time: 11:48:51 Sep 12 2016
cocos2d.x.compiled_with_gl_state_cache: true
gl.supports_ETC1: false
gl.supports_BGRA8888: false
gl.max_texture_size: 4096
gl.supports_PVRTC: true
gl.renderer: Apple Software Renderer
gl.vendor: Apple Inc.
gl.max_texture_units: 8
gl.max_samples_allowed: 4
gl.supports_OES_packed_depth_stencil: true
gl.supports_NPOT: true
gl.supports_discard_framebuffer: true
gl.supports_OES_depth24: true
}

cocos2d: fullPathForFilename: No file found at script/jsb_prepare.jsc. Possible missing file.
cocos2d: fullPathForFilename: No file found at script/jsb_boot.jsc. Possible missing file.
Cocos2d-JS v3.9
Evaluating src/jsb_anysdk.js failed (evaluatedOK == JS_FALSE)
/Users/mac/Library/Developer/CoreSimulator/Devices/72CA74E0-9CD6-44B6-92B7-AB7E41E88D99/data/Containers/Bundle/Application/EBF83C06-48D3-4195-86C7-BEF8ED5993E0/creator-mobile.app/src/jsb_anysdk.js:1:ReferenceError: anysdk is not defined

Evaluating main.js failed (evaluatedOK == JS_FALSE)
2016-10-22 19:53:07.758 creator-mobile[7450:830496] cocos2d: surface size: 1136x640`

请问下你构建发布平台是?

已处理,是cocos2dx引擎版本太老导致。

不适用anysdk怎么取消?在编译时能否提供一个选项是否使用anysdk?

不需要使用可参考 http://www.cocos.com/docs/creator/sdk/anysdk/anysdk-framework.html#-anysdk-1

不使用的话必须要手动删除么

可以用不删除,对包并不会产生太大的影响。

不使用公司账户不能使用ANYSDK么?申请公司账户后,必须购买企业版才能正常使用么?企业版收费怎么查询?

必须加入公司组织后才能使用,个人开发者可任意创建公司组织。
AnySDK 提供免费使用,这个跟公司组织没有关系哦~ 企业版提供的服务可以看下http://cloud.anysdk.com/enterprise/

xiexiela

请问申请应用ID是怎么申请的?我记得之前在文档当中有介绍,在一个网站上可以申请多个渠道的应用ID来着,后面去找又找不到了,急死人了

母包采用debug模式签名吗 用release的签名行不行?

,已经删除了多余的target,但还是报这个错误