谷歌play声明今年8月开始新提交的应用必须使用api level 26及以上版本编译, 但creator如果使用api level 26进行编译会导致在安卓5.0以上设备崩溃,load cocos2djs.so时找不到某个符号,这个问题怎么解决?有安卓大神解答下没?
这是ndk的问题
貌似不是ndk可以解决的,我使用ndk r10e进行测试,构建apilevel 使用14没有问题,但如果使用api level 26进行构建,就无法运行在android 5.0一下版本。而且cocos官方建议的ndk版本一样无法在android 5.0一下版本运行。
google都说了只支持26以上版本。 你还纠结21的5.0干嘛。
上次更换了26的发布了版本,一堆用户进不来。赶紧又换回去
google并没说只支持26版本吧?说的是必须针对26版本优化使用26版本构建。国外用户尤其第三世界用户安装5.0以下的用户还是很多的,公司不会同意不支持的。
上架是需要这么,但国内行情并不适用
我也遇到了相同的问题,api 19就可以运行,api 26运行就崩溃了, ndk用的17
这个问题具体要怎么解决呢

我用eclipse打包4.x androidstudio 打包5.0以上
Android 构建时需要了解四个版本号的设置
-
compileSdkVersion 编译版本,改为 26/27/28 都没问题,是编译 java 代码时使用的 SDK 版本,和支持的最低版本无关。
-
minSdkVersion 支持的最小版本,可设置为 14/16 (Android 4.0 / 4.1),决定编译出的应用最小支持的 Android 版本
-
targetSdkVersion,和运行时的行为有关,可以设置为 compileSdkVersion,也可以设置为 22,避免运行时权限的问题
-
APP_PLATFORM,指定 ndk 编译的 native 代码支持的 Android 版本,应该和 minSdkVersion 保持一致,不应该和 targetSdkVersion 保持一致。
第 4 点,creator 1.x 的默认配置有错误,可以参考 creator 2.0 中各种版本的设置修改。
Tips
-
在编译期遇到找不到某些符号,可以更换 ndk 版本,尝试 r14, r16
-
在 load so 时找不到某个符号,请检查 APP_PLATFORM 的设置
Cocos Creator 2.1 版本会完全符合 Google 的标准
这个问题,cocos creator里面构建的api level还是选19,我把构建后的android_studio工程中app下的build.gradle文件中的targetSdkVersion改成26,就解决了这个问题,google play可以上架了,android 7.1跑起来也没有问题
2.1啥时候发啊·······························o(╥﹏╥)o
就像楼上那样,手动改一改。
比如 compileSdkVersion / targetSdkVersion / minSdkVersion / APP_PLATFORM 分别设置为 26 、26、16、16
我用的1.8.2的creator,打包后也出现android7.0 wss连接不上的问题,按照你提供的修改方案解决了问题,感谢!
但是出了新的问题,compileSdkVersion 22版本打包的apk在安装的时候可以默认允许所需的权限,如果用26就不会默认允许了,会在用到权限的时候询问是否允许,对很多初级用户来说带来了很多困扰……,不知道有没有别的办法在不升级compileSdkVersion 的情况下解决这个问题@leda @panda
不提交到 google play,走其它方式
如果要提交的话,除了遵守对方的规则(ba wang tiao kuan),我不知道还有什么办法
我是把/Applications/CocosCreator.app/Contents/Resources/cocos2d-x/cocos/platform/android/libcocos2dx/build.gradle中的targetSdkVersion改为19就可以了
正常creator中打包设置的APIlevel是27
目前看下来几台4.x,5.x的手机都没闪退
坐等2.1了。大佬~~