zoukankan      html  css  js  c++  java
  • Cocos-X创建JS工程,编译Android .apk包,加载nanolink.so文件,创建一个实时对战游戏

    Cocos-js工程,创建一个实时对战游戏

    文章主要介绍怎么创建cocos-js工程,并介绍使用Cocos-js工程,接入天梯游戏统计的实时对战协议 NanoLink

    天梯的NanoLink实时对战协议目前好像支持主流游戏开发引擎,具体产品问题自己访问 天梯游戏统计 查看吧(据说NanoLink目前需要内部推荐才能使用,可以直接联系他们客服, QQ群:308944898)。

    下面请看重点:

    第一步、下载Cocos-js工程包,执行.py文件安装,并创建一个新的js工程。

    官方文档介绍:https://github.com/cocos2d/cocos2d-js

    下载工程包后执行下面命令:

    [plain] view plaincopy
     
    1. $ cd cocos2d-js  
    2. $ ./setup.py  
    3. $ source FILE_TO_SAVE_SYSTEM_VARIABLE  
    4.   
    5. $ cocos new NanoLink1 -l js -d /Data/Items/study/Cocos/Cocos-js  
    6. $ cd /Data/Items/study/Cocos/Cocos-js/NanoLink1  



    注:使用上面命令行安装,默认将会把cocos命令添加到环境变量。

    [plain] view plaincopy
     
    1. $ cat ~/.bash_profile  
    2. ...  
    3. #Add environment variable COCOS_CONSOLE_ROOT for cocos2d-x  
    4. export COCOS_CONSOLE_ROOT=/Applications/cocos2d-x-3.14/tools/cocos2d-console/bin  
    5. export PATH=$COCOS_CONSOLE_ROOT:$PATH  
    6.   
    7. # Add environment variable COCOS_X_ROOT for cocos2d-x  
    8. export COCOS_X_ROOT=/Applications  
    9. export PATH=$COCOS_X_ROOT:$PATH  
    10.   
    11. # Add environment variable COCOS_TEMPLATES_ROOT for cocos2d-x  
    12. export COCOS_TEMPLATES_ROOT=/Applications/cocos2d-x-3.14/templates  
    13. export PATH=$COCOS_TEMPLATES_ROOT:$PATH  
    14. ...  



    第二步、根据Cocos要求配置ant, android SDK, ndk 到环境变量即可。(以下是个人目录,更具自己情况修改)

    [plain] view plaincopy
     
    1. $ vi ~/.bash_profile  
    2.   
    3. ...  
    4. export ANT_ROOT=/Users/xiaowujun/ant/bin  
    5. export PATH=$ANT_ROOT:$PATH  
    6.   
    7. export ANDROID_SDK_ROOT=/Users/xiaowujun/Library/Android/sdk  
    8. export PATH=$ANDROID_SDK_ROOT:$PATH  
    9.   
    10. export NDK_ROOT=/Users/xiaowujun/Library/Android/sdk/ndk-bundle  
    11. export PATH=$NDK_ROOT:$PATH  
    12. ...  



    第三步、运行 cocos run 命令,编译安装到 Android手机

    $ cocos run -p android

    参数:

    -p 指定平台。 如 ios|mac|android|win32|web

    -j 指定编译时启动几个线程。 我通常用 -j 4

    –ap 指定 Android/adk/platforms/ 中的 版本, –ap android-19

    $ cocos run -p android --ap android-19 -j 4

    第四步、运行编译时,需要加载nanolink.so文件,需要对js工程的代码做简单修改。以天梯游戏统计的实时对战协议 NanoLink 为例介绍

    4.1 首先要得到天梯实时对战SDK,这个联系他们客服就可以,不多介绍

    4.2 修改 Android.mk 文件,直接上代码,红色 标注的是需要添加的。(MarkDown代码块中的文本不能变颜色???)

    [plain] view plaincopy
     
    1. LOCAL_PATH := $(call my-dir)  
    2.   
    3. include $(CLEAR_VARS)  
    4. LOCAL_MODULE:=libnanolink  
    5. LOCAL_SRC_FILES:=../../../nanolink1/lib/android/$(TARGET_ARCH_ABI)/libnanolink.so  
    6. include $(PREBUILT_SHARED_LIBRARY)  
    7.   
    8. include $(CLEAR_VARS)  
    9.   
    10. LOCAL_MODULE := cocos2djs_shared  
    11.   
    12. LOCAL_MODULE_FILENAME := libcocos2djs  
    13.   
    14. ifeq ($(USE_ARM_MODE),1)  
    15. LOCAL_ARM_MODE := arm  
    16. endif  
    17.   
    18. LOCAL_SRC_FILES := hellojavascript/main.cpp   
    19. ../../Classes/AppDelegate.cpp   
    20. ../../../nanolink1/CocosPlugin/NanoLink_js.cpp  
    21.   
    22. LOCAL_C_INCLUDES := $(LOCAL_PATH)/../../Classes   
    23. $(LOCAL_PATH)/../../../nanolink1/include   
    24. $(LOCAL_PATH)/../../../nanolink1/CocosPlugin  
    25.   
    26. LOCAL_STATIC_LIBRARIES := cocos2d_js_static  
    27.   
    28. LOCAL_EXPORT_CFLAGS := -DCOCOS2D_DEBUG=2 -DCOCOS2D_JAVASCRIPT  
    29.   
    30. LOCAL_SHARED_LIBRARIES := libnanolink  
    31.   
    32. include $(BUILD_SHARED_LIBRARY)  



    4.3 然后修改 AppDelegate.cpp 文件<
    4000
    /h3>

    [plain] view plaincopy
     
    1. #include "NanoLink_js.h"  
    2.   
    3. ...  
    4. ...  
    5. ...  
    6.   
    7. bool AppDelegate::applicationDidFinishLaunching()  
    8. {  
    9. ...  
    10.   
    11. ScriptingCore::getInstance()->addRegisterCallback(NanoLink_js::registerJSFunctions);  
    12.   
    13. sc->start();  
    14. sc->runScript("script/jsb_boot.js");  
    15. ...  
    16. }  



    **注意,需要在 sc->start(); 前添加

    ScriptingCore::getInstance()->addRegisterCallback(NanoLink_js::registerJSFunctions);**

     

    大功告成!再运行第三步,编译到手机上即可。

    原文地址:https://www.geek-share.com/detail/2701840751.html

  • 相关阅读:
    leetcode204-统计质数个数之一步步调试超时
    SpringBoot-注解一句话
    算法-总结规律
    kafka-版本变更相关
    异步线程池如何做同步业务
    es-快捷DSL检索手记
    并发学习第七篇——ThreadPoolExecutor
    kafka-consumer端的设计细节
    kafka-producer使用总结
    kafka-topic重要配置分析
  • 原文地址:https://www.cnblogs.com/wodehao0808/p/12504088.html
Copyright © 2011-2022 走看看