flappy bird游戏源代码揭秘和下载后续---移植到android真机上

前言:

        上一篇博客 flappy bird游戏源代码揭秘和下载,源码是运行在window或者mac系统上的,现在我们需要把代码移植到android真机上,让小鸟在手机里飞起来!

ps: 注意以下事项:

cocos2d-x editor在接下来的版本会加入一键打包apk功能,同时直接用java编写游戏代码,抛开js,也是跨平台的,请持续关注。现在我们只能通过新建android工程把js打包成apk;

2 请更新上一篇博客的代码,改了Main.js代码适应真机;(很重要

3 请更新cocos2d-x editor到cocos2d-x editor 1.0Beta版本:(很重要

    地址:  http://blog.csdn.net/touchsnow/article/details/18451107


背景:

         最近火爆全球的游戏flappy bird让笔者叹为观止,于是花了一天的时间山寨了一个一模一样的游戏,现在把游戏的思路和源码分享出来,代码是基于javascript语言,cocos2d-x游戏引擎,cocos2d-x editor手游开发工具完成的,请读者轻砸;

ps:运行demo需要配置好cocos2d-x editor,暂不支持其他工具。还有demo是跨平台的,可移植运行android,ios,html5网页等。


运行Android真机效果图:

flappy bird游戏源代码揭秘和下载后续---移植到android真机上     flappy bird游戏源代码揭秘和下载后续---移植到android真机上   



Android Apk下载演示:

下载地址: http://share.weiyun.com/cac18d8c58d40bf2401b3fdeeb6bcb2f


Cocos2d-x  JS源代码下载:(代码有更新,Main.js改了配置适应真机,请使用最新代码):

下载地址:http://share.weiyun.com/85a15e59e467c175a3968b8347367d40


Android移植代码下载:

下载地址:http://share.weiyun.com/679b61b4ddc03c98fbf05158784cc9b4


开发工具(2013-02-14 已更新到1.0Beta):

cocos2dx editor,它是开发跨平台的手机游戏工具,运行window系统上,javascript脚本语言,基于cocos2d-x跨平台游戏引擎, 集合代码编辑,场景设计,动画制作,字体设计,还有粒子,物理系统,地图等等的,而且调试方便,和实时模拟;

cocos2dx editor 下载,介绍和教程:http://blog.csdn.net/touchsnow/article/details/19070665

cocos2dx-editor官方博客:http://blog.makeapp.co/?cat=8


移植代码结构分析:

 使用cocos2d-x editor开发游戏,编写代码和设计场景都在Sources目录里,而编译产生的代码在Published目录,根据自己选择的操作系统产生不同的Published代码。

 在移植android工程里,把Published里面的所有代码拷贝覆盖到asserts里面下,整个游戏是作为一个Cocos2dxGameActivity活动存在的,可以和android本身的代码交互。另外,cocos2d-x editor会自动在libs生成armeabi----libcocos2dx-game.so和cocos2dx-android.jar,这些是js和java代码交流需要的库。其他和一个android工程一样,所以你会发现android工程只是一个空架子,所有有效的代码都在asserts里面;你现在只需要按照一个正常的android项目运行程序就可以了;

项目结构分析如下:

flappy bird游戏源代码揭秘和下载后续---移植到android真机上


flappy bird游戏源代码揭秘和下载后续---移植到android真机上


移植方法步骤:

1 File-New  Project新建一个cocos2dx-2.2-android项目如下图;

flappy bird游戏源代码揭秘和下载后续---移植到android真机上


2  idea本来就是用开发android的,请确保idea开发android环境是正确的(jdk,sdk等),如果不会配置请百度一下,网上很多(关键词intellij idea  android),可以尝试用idea运行一个android的hello world,确保环境正确;

flappy bird游戏源代码揭秘和下载后续---移植到android真机上


flappy bird游戏源代码揭秘和下载后续---移植到android真机上


3 把AndroidManifest修改如下,主要是更改package名称,游戏的图标和名字。如下面的代码,所有的游戏场景在android里面就是一个Cocos2dxGameActivity;

<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
          package="org.cocos2dx.lib"
          android:versionCode="1"
          android:versionName="1.0.16">

  <uses-sdk android:minSdkVersion="8"/>
  <uses-feature android:glEsVersion="0x00020000"/>

  <application android:label="@string/app_name"
               android:icon="@drawable/icon">

    <activity android:name="org.cocos2dx.lib.Cocos2dxGameActivity"
              android:label="@string/app_name"
              android:screenOrientation="portrait"
              android:theme="@android:style/Theme.NoTitleBar.Fullscreen"
              android:configChanges="orientation">
      <intent-filter>
        <action android:name="android.intent.action.MAIN"/>
        <category android:name="android.intent.category.LAUNCHER"/>
      </intent-filter>
    </activity>
  </application>
  <uses-permission android:name="android.permission.VIBRATE"/>
  <supports-screens android:largeScreens="true"
                    android:smallScreens="true"
                    android:anyDensity="true"
                    android:normalScreens="true"/>
</manifest> 

4 把Published里面的代码拷贝覆盖到asserts目录下,最后点击绿三角运行,效果如文中的图片;


整个游戏代码的思路分析可以参考上一篇博客: flappy bird游戏源代码揭秘和下载

请持续关注,还有更多cocos2dx editor游戏源码放出;


flappy bird游戏源代码揭秘和下载后续---移植到android真机上

上一篇:Android界面篇【仿QQ的滑动Tab】


下一篇:Android 内存优化[转]