:::: 菜单 ::::
日志标签:java

为解决GooglePlay要求64位支持的问题,cocos老项目的一点笔记

有个老项目,为解决Google要求64位支持的问题,准备把cocos升级一下,然后发现不需要,据说只要编译64位版本就可以。依稀记得当时删了arm64-v8a的。

Google的教程: https://developer.android.com/distribute/best-practices/develop/64-bit#test_your_app_on_64-bit_hardware 里面说了3种情况,用Gradle编译、CMake编译、ndk-build编译,不同。 cocos2dx根据我测试发现是ndk-build模式,取决于gradle.properties里的配置PROP_APP_ABI。

帖子:[Support for 64bit on cocos2d-x on Android](https://discuss.cocos2d-x.org/t/critical-support-for-64bit-on-cocos2d-x-on-android/45516/14):

我实际进行的操作:

1. 修改配置加arm64-v8a

2. 升级了Gradle和studio,升级了最低sdk到16和编译sdk到28
3. 重写了一些java代码,deprecated method
4.

5.

6. 所有compile不支持了,改成implementation或者api


编写的ANE出现Extension context为null的解决

调用ANE的as代码:

会发现_context总是null,原因是jar的生成过程用的JDK1.7,ane对JDK1.7支持不好。 以前我都是用的1.6所以没注意到。

需要在编译的graddle里设置采用JDK1.6: