cocos2dx 2.x.x从eclipse转移到Android Studio遇到的问题

  可能我用不太习惯Android Studio才会遇到这么多问题,让老手们见笑了。

  cocos2dx的最新版本,都是有Android Studio工程的,而旧版的没有。 为了方便,我用新的cocos版本创建了一个Android Studio工程,然后新建一个普通带界面的Android原生activity,然后设定这个activity为启动activity,发现打出来的包正常地运行了新界面。然后我去掉了cocos库的引用和cocos的相关的界面的java文件,再运行一下试试,发现一切正常。

  然后就是把原工程库和java文件加进来,这里出现第一个问题,找不到.R文件,其实就是那些java文件没被编译。网上有一种说法是点击bulid按钮下的make moudle “xxxxx”就可以,不过我并不属于这种情况。原来我新建工程的时候用的包名是随便填的,而Android Studio只编译module对应包名目录下的java文件。因此,我打开AndroidManifest,改成我真正想要的包名,然后把java文件都转到那里。

  然后,我把引用库的build版本号和complie版本号统一了一下。

  我转移到Android Studio的主要目的是接新的SDK,我接的是一个繁体版本的SDK,发海外,这SDK整合了很多杂七杂八的SDK在里面,很头疼。一整合进来就报错,报什么非法的语法操作什么的。网上的说法是,整合第三方库就很可能会报这个错,要做一下兼容处理。

  manifest加一下xmlns:tools属性:
  <manifest xmlns:tools="http://schemas.android.com/tools">
  <uses-sdk tools:overrideLibrary="com.xxx.xxx"/>

  打开对应module的build.gradle,defaultConfig {}中加入 multiDexEnabled true ,dependencies {}中加入compile 'com.android.support:multidex:1.0.0'

  这样一来,编译通过了,可是会有很多报错(其实是warning),如果不想看到这些红色的字,可以在proguard-rules.pro文件加入
  -keepattributes InnerClasses,EnclosingMethod
  -dontoptimize
  当我想打包时,报出如下错误:android studio java.lang.OutOfMemoryError: Java heap space
  这不是内存不够吗,我知道要上Google play的话硬性条件是主包不能大于100M,难道现在的默认设置就是这样?我现在的包是200M以上,看来要配置一下了。
  网上的说法是在build.gradle加入
  dexOptions {
  incremental true
  javaMaxHeapSize "4g"
  }
  我试了一下不行,后来发现android studio有这么一个提示
  Warning:The `android.dexOptions.incremental` property is deprecated and it has no effect on the build process.
  原来网上说的这个方法已经过时了,不过还有另一种方法:   在gradle.properties文件末尾加入三行字
  org.gradle.daemon=true
  org.gradle.parallel=true
  org.gradle.jvmargs=-Xmx5120m
  嗯,ok,打包成功。

  还有要注意的一点,新建的Android Studio工程的AndroidManifest里面加入的uses-permission很少,记得从原游戏工程把完整需要用到的uses-permission拷贝过来。
  

将cocos2dx 2.x.x从eclipse转移到Android Studio遇到的问题的更多相关文章

  1. Ecplise项目转移到Android Studio,以及Genymotion模拟器介绍

    一.移植android项目 今天简单分享一个从ecplise开发项目转移到Android Studio的方法,之前一直在ecplise上开发android项目,但是因为google现在主打Androi ...

  2. 从Eclipse迁移到Android Studio碰到的问题记录

    背景: 1. 一直在做.NET的开发,工作之余,学习了一下Android开发,写了一些Demo,当时用的Eclipse开发工具:这两天,刚好项目不是很忙,就打算把之前写的Demo,迁移到Android ...

  3. 从 Eclipse 迁移至 Android Studio

    从 Eclipse 迁移至 Android Studio 本文内容 Android Studio 基础知识 迁移先决条件 将项目导入 Android Studio 后续步骤 将项目迁移至 Androi ...

  4. 导入Eclipse工程 到 Android Studio

    一.从Eclipse导入工程到Android Studio 根据官方的介绍,Android Studio可以兼容Eclipse的现有工程,但需要做一些操作: 首先升级ADT到最新版本,目前为版本号为2 ...

  5. Eclipse 项目导入 Android Studio 导致的乱码问题

    最近有一个 Eclipse 项目导入 Android Studio 1.4 时出现乱码,Build 提示 Error:(38, 5) 閿欒: 缂栫爜UTF-8鐨勪笉鍙槧灏勫瓧绗?. 源代码是 GB ...

  6. Eclipse工程 导入 Android Studio

    最近Eclipse好多项目转Android Studio 百度翻看好多文章 这篇不错 特纪录下 地址:http://www.cnblogs.com/bluestorm/p/3757402.html 一 ...

  7. 导入eclipse工程到Android Studio中

    ref:从 Eclipse 迁移至 Android Studio | Android Studiohttps://developer.android.com/studio/intro/migrate. ...

  8. [转]Eclipse 项目转移到Android Studio遇到的问题

    1.Android Studio直接导入项目是copy原项目的,无法纳入代码管控 解决方案: 英文地址:http://developer.android.com/sdk/installing/migr ...

  9. Eclipse迁移到Android studio步骤如下:

    一.从Eclipse中导出:1.将你的ADT插件版本升级到22.0以上.2.在Eclipse中,选择File-->Export.3.在弹出的导出窗口中,打开Android的文件夹,选择“Gene ...

随机推荐

  1. ROS学习笔记十:URDF详解

    Unified Robot Description Format,简称为URDF(标准化机器人描述格式),是一种用于描述机器人及其部分结构.关节.自由度等的XML格式文件. 一.URDF语法规范 参见 ...

  2. ROS学习笔记五:创建和使用ROS msg和srv

    1 msg和srv简介 1.1 msg文件 msg文件就是一个简单的text文件,其中每行有一个类型和名称,可用的类型如下: int8, int16, int32, int64 (plus uint* ...

  3. poj 2506 Tiling 递推

    题目链接: http://poj.org/problem?id=2506 题目描述: 有2*1和2*2两种瓷片,问铺成2*n的图形有多少种方法? 解题思路: 利用递推思想,2*n可以由2*(n-1)的 ...

  4. Lightoj 1054 - Efficient Pseudo Code

    题目连接: http://www.lightoj.com/volume_showproblem.php?problem=1054 题目大意: 给出n,m,问n^m的所有因子之和是多少? 解题思路: 补 ...

  5. 题解报告:hdu 2546 饭卡(01背包)

    Problem Description 电子科大本部食堂的饭卡有一种很诡异的设计,即在购买之前判断余额.如果购买一个商品之前,卡上的剩余金额大于或等于5元,就一定可以购买成功(即使购买后卡上余额为负) ...

  6. 题解报告:hdu 1406 完数

    题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=1406 Problem Description 完数的定义:如果一个大于1的正整数的所有因子之和等于它的 ...

  7. OC中protocol、category和继承的关系--转

    开放封闭原则(OCP)就是,“对扩展开放,对更改封闭”.是所有面向对象设计的一个核心宗旨.感兴趣的可以看百度百科的一些解释:http://baike.baidu.com/view/2493421.ht ...

  8. Mybatis查询select操作

    先看select标签的属性: 说几点: resultType和resultMap都是用来表示结果集的类型的,resultType用于简单的HashMap或者是简单的pojo对象,而resultSet是 ...

  9. ASP.NET MVC+Bootstrap个人博客之修复UEditor编辑时Bug(四)

    我的个人博客站在使用百度富文本编辑器UEditor修改文章时,遇到了一些问题,(不知是bug,还是我没有配置好).但总算找到了解决方法,在此记录下来. 遇到的问题: 正常来讲,进入文章修改页,只需将U ...

  10. XCode的debug断点调试

    debug 流程控制 当你通过 Xcode 的源码编辑器的侧边槽 (或者通过下面的方法) 插入一个断点,程序到达断点时会就会停止运行. 调试条上会出现四个你可以用来控制程序的执行流程的按钮. 从左到右 ...