新手,cocos2dx移植到android平台不知道怎么导入sqlite3库

新手,cocos2dx移植到android平台不知道怎么导入sqlite3库,第1张

创建windows平台项目 一、 搭建windows开发环境 官网上显示cocos2d-x支持win7、winxp、vista系统但我只在win7上用过以下说明均是在win7系统上的编译器使用vs2010。 1、 安装vs2010 2、 安装Visual Assist X可选 3、 执行build-win32.bat编译cocos2d-x 4、 运行cocos2d-x根目录下的install-templates-msvc.bat将cocos2d-x模板加入vs模板库。 5、将.\Debug.win32目录下的所有dll文件拷贝至Windows\system32\ (iconv.dll libcocos2d.dll libcocosDenshion.dll libcuri.dll libEGL.dll libgles_cm.dll libxml.dll pthreadVCE2.dll zlib1.dll )6、 双击cocos2d-win32.vc2010.sln进入vs编译环境 二、 新建win32项目 1、在“解决方案”上单击右键选择“添加”-〉“新建项目”。 2、选择“左侧Cocos2d-x模板”在右侧列表中选择“Cocos2d-win32 Application”输入项目名称“Cocos2dDemo”点“确定”。3、在d出的对话框中点击“下一步”。 4、如果需要使用Box2D引擎则选中否则不要选。点击“finish”创建成功。 三、 编译运行 1、右键Cocos2dDemo项目选择“生成”进行编译。 2、右键Cocos2dDemo项目选择“设为启动项目”。然后F5或者点击菜单栏的运行键 运行。四、 创建新的解决方案 新建项目有两种方式一是直接在cocos2d-x解决方案中添加新项目上面已经介绍过了。当你刚开始接触cocos2d-x还在尝试写demo时用这种方式可以快捷的创建demo而且方便查看例子中的代码。另一种方式是创建一个新的解决方案方法如下 1、“文件”-〉“新建”-〉“项目” 2、进入新建项目的窗口选择“左侧Cocos2d-x模板”在右侧列表中选择“Cocos2d-win32 Application”输入项目名称“Cocos2dDemo”点“确定”。然后执行“下一步”。 3、使用Box2D引擎则选中否则不要选。点击“finish”创建成功。 4、单击左下角的属性标签或者选择“视图”-〉“属性管理器”打开属性管理器5、在属性管理器中双击“Microsoft.Cpp.Win32.user”d出属性页在里面设置VC++目录即可。这样该设置对所有VC项目都有效见下图。 6、在“包含目录”中, 加入下列项目 (D:\android\cocos2d-2.0-x-2.0.3\cocos2dx\platform\third_party\win32) 7、在“库目录”中, 加入下列项目(D:\adroid\cocos2d-2.0x-2.0.3\Debug.win32)(发布时用release目录下的!!) 8、上面的第4、5、6、7条也可以通过如下方法解决: 定位到%USERPROFILE%\appdata\local\microsoft\msbuild\v4.0可以通过运行或直接在windows资源管理器的地址栏中输入使用其他文本编辑工具修改Microsoft.Cpp.Win32.user.props或Microsoft.Cpp.X64.user.props文件中的相关字段。以下是我的文件内容 <IncludePath>D:\android\cocos2d-2.0-x-2.0.3D:\android\cocos2d-2.0-x-2.0.3\cocos2dxD:\android\cocos2d-2.0-x-2.0.3\cocos2dx\includeD:\android\cocos2d-2.0-x-2.0.3\cocos2dx\platformD:\android\cocos2d-2.0-x-2.0.3\cocos2dx\platform\win32D:\android\cocos2d-2.0-x-2.0.3\cocos2dx\platform\third_party\win32\OGLESD:\android\cocos2d-2.0-x-2.0.3\external\Box2DD:\android\cocos2d-2.0-x-2.0.3\CocosDenshion\includeD:\android\cocos2d-2.0-x-2.0.3\cocos2dx\platform\third_party\win32D:\android\cocos2d-2.0-x-2.0.3\cocos2dx\kazmath\include$(IncludePath)</IncludePath><LibraryPath>D:\android\cocos2d-2.0-x-2.0.3\Debug.win32$(LibraryPath)</LibraryPath>第4至8条的作用是加入解决方案所依赖的头文件和库文件以保证项目的正常编译运行。 五、 如何删除vs里的cocos2d-x模板 1、 打开如下目录 (Example as default install) 1VS2008: C:\Program Files\Microsoft Visual Studio 9.0\VC\vcprojects\ 2VC2008Express: C:\Program Files\Microsoft Visual Studio 9.0\VC\Express\VCProjects 3VS2010: C:\Program Files\Microsoft Visual Studio 10.0\VC\vcprojects\ 4VC2010Express: C:\Program Files\Microsoft Visual Studio 10.0\VC\Express\VCProjects 2、 删除此目录下的 Cocos2d-x文件夹 3、 删除前缀为 CCAppWiz (0.8.0 or later) 或 CCXAppWiz (0.7.2 or earlier)的文件

将项目由win32移植到android平台 一、 快速搭建android开发环境 1、将服务器上的eclipse、java、android sdk、android ndk、cygwin、cocos2d-x文件夹拷贝到本地请注意保存的路径为英文、不包含空格、且不要过长。 2、 运行eclipse添加android-sdk的路径。(preferences->Android:SDK Location) 3、 添加ADT(Help->Install New Software:Work with) 4、添加java环境变量。 新建变量JAVA_HOME变量值为java目录的绝对路径。 在path中添加 %JAVA_HOME%\D:\android\Java\jdk1.6.0_20\bin%JAVA_HOME%\D:\android\Java\jdk1.6.0_20\jre\binD:\android\Java\jre6\bin5、运行一次Cygwin.bat 6、修改\cygwin\home\用户名\.bash_profile文件添加NDK_ROOT=/cygdrive/d/android/android-ndk-r8b export NDK_ROOT 7、 修改\cocos2d-2.0-x-2.0.3\create-android-project.bat中的如下路径 set _CYGBIN=e:\cygwin\bin set _ANDROIDTOOLS=e:\android\android-sdk\tools set _NDKROOT=e:\android\android-ndk-r8 二、 新建android项目 1、 运行create-android-project.bat创建新的android项目例如项目名称为Cocos2dDemo。 2、 将win32下完成的.cpp和.h文件拷贝到\Cocos2dDemo\Classes 3、将win32下使用的资源拷贝到\Cocos2dDemo\proj.android\assets 4、将cpp文件的路径、使用的头文件的目录加入到Android.mk文件。 5、打开Cygwincd 到/Cocos2dDemo/proj.android目录下 6、执行./build_native.sh进行编译 7、在eclipse中编译打包。 三、 补充 1、2.0以上版本的引擎基本无法在android模拟器上运行建议在xcode和vs上调试好直接在真机上运行。 2、2.0以上版本的引擎要求android的开发和运行环境都要2.2以上的sdk。

将项目由win32移植到ios 一、 创建ios项目 1、 安装XCode 2、执行install-templates-msvc.bat将模板添加到XCode 3、打开xcode选择Create a new Xcode project选择cocos2d-x模版 4、点击next填入项目名称Man 5、找到Man的主项目在这里新建一个iOS文件夹。点击create创建完成 6、删除Resource和Classes下的多余文件Helloworld的代码和资源 7、右键点击Resource 选择Add Files to "Man"... 7、将Man主项目文件夹下的Resource文件夹中的资源添加到当前工程。注意选择create folder references for any added folders只是添加一个引用 8、同样的方法添加源文件和头文件到Classes下 9、点击Run编译运行 二、 补充 1、Mac 平台的OS X需要10.6及以上版本 2、IOS平台需要4.0及以上版本 3、IOS真机支持iPad 1、iPad 2、iPad 3、 iPhone 3GS、iPhone 4、iPhone 4S、iPhone 5、iphone6、iPod Touch 3 and iPod Touch 4 不支持iPhone and iPhone 3G。

由于在原来的ADT的Eclipse环境中,用ndk_build工具生成了相应的各个.so库文件之后,eclipse工具就会自动把这些库导入到apk中。而Android Studio目前为止(0.86版本)还无法做到那么自动,但是我们可以通过以下方式进行。首先在Android Studio工程的app目录下创建整个jni目录,jni目录里写Android.mk、Application.mk以及各类C/C++和汇编源文件。然后跟原来一样,用ndk_build工具去编,然后工具会自动生成libs目录,里面还有每个你在Application.mk里所指定处理器架构的so文件。完成之后,编辑app目录下的build.gradle文件,为其添加以下代码:sourceSets {main {jniLibs.srcDirs = ['libs']}}完整的build.gradle文件如下所示:复制代码apply plugin: 'com.android.application'android {compileSdkVersion 20buildToolsVersion "20.0.0"defaultConfig {applicationId "com.adwo.gamecenter.civetcoffeegamecenter"minSdkVersion 9targetSdkVersion 20versionCode 1versionName "1.0"}buildTypes {release {runProguard falseproguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'}}sourceSets {main {jniLibs.srcDirs = ['libs']}}}dependencies {compile fileTree(dir: 'libs', include: ['*.jar'])compile 'com.android.support:appcompat-v7:20.0.0'}

首先我简单介绍一下组件压缩包的组成

Cocos2dx

实现Cocos2d-x中跨平台分享功能,需拷贝到您项目的Classes文件夹中

Platforms

原生的Android和iOS社会化组件SDK,需要您将库和资源拷贝到对应平台的项目中

doc

组件的集成文档;

Umeng_Cocos2dx_Demo_V1.0

Android部分的demo文件,可以安装在手机上看一下简单的分享效果和样式

Cocos2d-x虽然是一个跨平台的引擎,但是对于Android和IOS平台来说,具体的集成方式还是有一定的区别,这里分别介绍Android和IOS平台集成中不同的地方,然后再集中介绍跨平台通用的部分。

Android平台集成步骤:

步骤一:

下载Cocos2d-x组件(下载地址) 并且将jar包添加到build path 路径下,将res资源文件夹加入到你工程对应资源文件下。将Platforms/Android/controller目录下的com文件夹拷贝到您的Cocos2d-x项目Android平台的src目录下,并且在jni/Android.mk中的LOCAL_SRC_FILES下添加如下配置 (注意格式,否则会编译出错) :

../../Classes/Cocos2dx/Android/CCUMSocialController.cpp \

../../Classes/Cocos2dx/ShareButton/UMShareButton.cpp \

../../Classes/Cocos2dx/Common/CCUMSocialSDK.cpp

步骤二:

在Cocos2dxActivity子类的onCreate方法下添加如下代码,用来完成初始化步骤

// this为Cocos2dxActivity类型, 参数2为描述符,可随意修改.

CCUMSocialController.initSocialSDK(this, "com.umeng.social.share")

步骤三:

在代码中覆写Cocos2dxActivity子类的onActivityResult方法,用来实现回调方法。在onActivityResult添加如下代码 :

// 授权回调

CCUMSocialController.onActivityResult(requestCode, resultCode, data)

super.onActivityResult(requestCode, resultCode, data)

iOS平台集成步骤:

步骤一:

解压SDK压缩包,将Platforms/iOS文件夹和Cocos2dx文件夹拖入工程目录,并删除Cocos2dx/Android文件夹,添加后应该是这个效果:

步骤二:

添加系统需要的framework

Security.framework //用于系统加密处理

libiconv.dylib //QQ互联的库文件

SystemConfiguration.framework//QQ互联需要的framework

CoreGraphics.framework //QQ互联需要的framework

Social.framework //分享组件需要的framework,如果不使用twitter则不需要

libsqlite3.dylib //QQ互联需要的framework

libstdc++.dylib //C++的库文件

CoreTelephony.framework //QQ互联需要的framework

libz.dylib //QQ互联需要的framework

Accounts.framework //系统需要的framework,如果不使用twitter则不需要

步骤三:

实现系统的回调方法,在Xcode工程中的ios文件夹下的AppController.mm文件中加入下面的代码:

#import "UMSocial.h"

- (BOOL)application:(UIApplication *)application openURL:(NSURL *)url sourceApplication:(NSString *)sourceApplication annotation:(id)annotation

{

return [UMSocialSnsService handleOpenURL:url]

}

完成了上述准备工作之后,就可以开始正式的分享步骤了,友盟提供了多种分享样式,有精力的开发者可以使用底层接口,可以完全自由定制分享界面和样式,不过相信大部分开发者们使用第三方插件的初衷都是为了节省精力,所以这里就只介绍使用默认分享界面的方法,有更多需求的开发者们可以自己探索自定义界面接口部分。

步骤一:加入系统需要的头文件

// 授权回调

#include "Cocos2dx/Common/CCUMSocialSDK.h"

#include "Cocos2dx/ShareButton/UMShareButton.h"

// 使用友盟命令空间

USING_NS_UM_SOCIAL

// ...... 代码省略

// HelloWorld为cocos2d::CCLayer的子类

bool HelloWorld::init()

{

//////////////////////////////

// 1. super init first

if ( !CCLayer::init() )

{

return false

}

}

步骤二:分享按钮的创建

// 创建分享按钮, 参数1为按钮正常情况下的图片, 参数2为按钮选中时的图片,参数3为友盟appkey, 参数4为分享回调

UMShareButton *shareButton = UMShareButton::create("shareNormal.png","shareSelected.png", "你的友盟appkey", share_selector(shareCallback))

步骤三:设置分享平台及内容

// 显示在友盟分享面板上的平台

vector

* platforms = new vector

()

platforms->push_back(SINA)

platforms->push_back(RENREN)

platforms->push_back(DOUBAN)

platforms->push_back(QZONE)

platforms->push_back(QQ)

// 设置友盟分享面板上显示的平台

shareButton->setPlatforms(platforms)

// 设置文本分享内容

shareButton->setShareContent("umeng social Cocos2d-x sdk.")

// 设置要分享的图片, 图片支持本地图片和url图片, 但是url图片必须以http://或者https://开头

shareButton->setShareImage("/sdcard/header.jpeg")

// 设置按钮的位置

shareButton->setPosition(ccp(150, 180))

// 然后开发者需要将该按钮添加到游戏场景中

CCMenu* pMenu = CCMenu::create(shareButton, NULL)

pMenu->setPosition(CCPointZero)

this->addChild(pMenu, 1)

// ********************** 设置平台信息 ***************************

// CCUMSocialSDK *sdk = shareButton->getSocialSDK()

// sdk->setQQAppIdAndAppKey("设置QQ的app id", "appkey")

// sdk->setWeiXinAppId("设置微信和朋友圈的app id")

// sdk->setYiXinAppKey("设置易信和易信朋友圈的app id")

// sdk->setLaiwangAppInfo("设置来往和来往动态的app id",

// "设置来往和来往动态的app key", "我的应用名")

// sdk->setFacebookAppId("你的facebook appid")

// 设置用户点击一条图文分享时用户跳转到的目标页面, 一般为app主页或者下载页面

// sdk->setTargetUrl(" ")

// 打开或者关闭log

// sdk->setLogEnable(true)

// ********************** END ***************************

集成到这一步就完成了,如果没有异常,应该会出现下面的界面,这说明你已经成功实现了集成工作。


欢迎分享,转载请注明来源:内存溢出

原文地址: https://www.outofmemory.cn/bake/11776943.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-18
下一篇 2023-05-18

发表评论

登录后才能评论

评论列表(0条)

保存