将cocos2dx 2.x.x从eclipse转移到Android Studio遇到的问题
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遇到的问题的更多相关文章
- Ecplise项目转移到Android Studio,以及Genymotion模拟器介绍
一.移植android项目 今天简单分享一个从ecplise开发项目转移到Android Studio的方法,之前一直在ecplise上开发android项目,但是因为google现在主打Androi ...
- 从Eclipse迁移到Android Studio碰到的问题记录
背景: 1. 一直在做.NET的开发,工作之余,学习了一下Android开发,写了一些Demo,当时用的Eclipse开发工具:这两天,刚好项目不是很忙,就打算把之前写的Demo,迁移到Android ...
- 从 Eclipse 迁移至 Android Studio
从 Eclipse 迁移至 Android Studio 本文内容 Android Studio 基础知识 迁移先决条件 将项目导入 Android Studio 后续步骤 将项目迁移至 Androi ...
- 导入Eclipse工程 到 Android Studio
一.从Eclipse导入工程到Android Studio 根据官方的介绍,Android Studio可以兼容Eclipse的现有工程,但需要做一些操作: 首先升级ADT到最新版本,目前为版本号为2 ...
- Eclipse 项目导入 Android Studio 导致的乱码问题
最近有一个 Eclipse 项目导入 Android Studio 1.4 时出现乱码,Build 提示 Error:(38, 5) 閿欒: 缂栫爜UTF-8鐨勪笉鍙槧灏勫瓧绗?. 源代码是 GB ...
- Eclipse工程 导入 Android Studio
最近Eclipse好多项目转Android Studio 百度翻看好多文章 这篇不错 特纪录下 地址:http://www.cnblogs.com/bluestorm/p/3757402.html 一 ...
- 导入eclipse工程到Android Studio中
ref:从 Eclipse 迁移至 Android Studio | Android Studiohttps://developer.android.com/studio/intro/migrate. ...
- [转]Eclipse 项目转移到Android Studio遇到的问题
1.Android Studio直接导入项目是copy原项目的,无法纳入代码管控 解决方案: 英文地址:http://developer.android.com/sdk/installing/migr ...
- Eclipse迁移到Android studio步骤如下:
一.从Eclipse中导出:1.将你的ADT插件版本升级到22.0以上.2.在Eclipse中,选择File-->Export.3.在弹出的导出窗口中,打开Android的文件夹,选择“Gene ...
随机推荐
- 配置Ubuntu16.04第03步:安装搜狗输入法
1.进入搜狗官网:https://pinyin.sogou.com/linux/ ,下载搜狗输入法安装包 2.使用dpkg命令安装Deb包: sudo dpkg -i sogoupinyin_2.0. ...
- jacaScript数组
1.var arr=['1','2','3'] typeof arr (判断数组类型) print(arr)打印数组内容 2.arr[100]='x', 数组中间自动添加,alert(arr. ...
- java获取公网ip以及物理地址和代理商
package ipconfig; import java.io.BufferedReader; import java.io.IOException; import java.io.InputStr ...
- idea下关联spark源码环境(转)
0.环境: java 1.8 scala 2.11.8 maven 3.5.0 idea 2017 spark 2.2.0 1完成以下配置 java环境变量 scala环境变量 maven setti ...
- Quartz2D知识点聚合案例
Quartz2D知识点聚合 基本 //画图片 UIImage *image = [UIImage imageNamed:@"阿狸头像"]; [image drawInRect:re ...
- mybatis-paginator对SqlServer分页实现
package com.github.miemiedev.mybatis.paginator.dialect; import com.github.miemiedev.mybatis.paginato ...
- js基础盲点
var myarray= new Array(8); //创建数组,存储8个数据. 注意:1.创建的新数组是空数组,没有值,如输出,则显示undefined.2.虽然创建数组时,指定了长度,但实际上数 ...
- java规范与标准?
所谓规范,即指由很多人同时遵守的行为或理论. java的规范并不是指其中一种,而是有很多种,比如java编码规范,java命名规范,java虚拟机规范等等,甚至于一个编码规范都有很多种,不同的公司.组 ...
- Android(java)学习笔记201:JNI之helloword案例(利用NDK工具)
1. 逻辑思路过程图: 2.下面通过一个HelloWorld案例来说明一下JNI利用NDK开发过程(步骤) 分析:我们在Win7系统下编译的C语言代码,我们知道C语言依赖操作系统,不能跨平台,所以我们 ...
- app dcloud 打包公用证书
Android平台云端打包使用的DCloud公用证书 分类:HTML5+ 5+App开发 HBuilder|HBuilderX应用云端打包Android平台默认使用的DCloud公用证书,其信息如下: ...