1.7版本打包运行后崩溃

Android Studio 中调试java和cpp代码,在chrome或者safari中调试JS代码。

这个文件夹在哪里的?是不是构建default模板后才有?完整路径是什么?

jsb-default/frameworks/cocos2d-x/cocos/platform/android/java

mac上是:/Applications/CocosCreator.app/Contents/Resources/cocos2d-x

首先第一点,构建link和default模板慢得要死,差不多可以打一局亡者农药了,虽然我并不玩;其次,以前的项目工程都是用binary面板在上面修改的,换个面板意味着所有的项目都要重新搭建。还有,binary的预编译库使用了api 22生成,要求开发者的项目必须设置22或以上这样的改动确定不是拍脑门的决定?就不能好好兼容一下旧版本?已经决定回退并停留在1.6.2版本了,只要我还是做安卓的项目,以后新版本除非有什么惊天动地的新内容,不然都不会再升级上去了。

binary模版坑一堆。

  1. 编译的.a已经是在编译机器上编译好的二进制,.a中关联的路径和开发者设备上的肯定不同,可能导致开发者无法使用symbol文件,即bugly可能无法有效解析
  2. iOS上用高版本的SDK编译出来的库,如果开发者用了低版本的SDK(低版本xcode)进行编译,会导致linking error
  3. 依赖与binary模版的使用的ndk APP_PLATFORM的版本,目前采用的是用22来编译。
    后续可以调整为14,但据说有其它的坑。
  4. Android上,如果开发者想用不同的API Level,开发者改动游戏的API Level后进行编译游戏代码,但是预编译库已经是用固定的API Level编译好了,所以会导致各种undefined reference的linking error,这块是NDK的API Level的不同版本的兼容性不好导致的。然后开发者又跳出来各种喷,说是creator自身有问题。

基于以上问题,我们甚至都有打算在后续的版本中干掉这个鸡肋的binary模版。

你如果没修改底层代码,其实default和link模版,无非就是编一次的事情,之后都是编译有改动的文件。
只是第一次编译稍微慢一点。但是cocos2d-x-lite 已经裁剪了很多cocos2d-x中的模块了,已经比cocos2d-x编译速度快很多了。我不知道按照你的思维,cocos2d-x的用户是怎么活下去的。

真的慢好多,10分钟以上的。最最关键的是,以前的项目都是在binary上进行扩展修改的,以前项目有什么修改,构建后复制assets文件夹和so文件过去覆盖就可以了,现在换模板的话以前的都不能用了,还要在新的模板上逐个逐个重新修改扩展内容,我滴神啊。

可以既然有问题就干掉binary模板吧~引擎稳定性还是第一位的

“binary的预编译库使用了api 22,” 请问是1.4 之前也是这样么, 从哪一个版本开始是用api 22 的

https://github.com/cocos-creator/cocos2d-x-lite/blob/develop/tools/simulator/frameworks/runtime-src/proj.android-studio/gradle.properties#L20

可以在github上查看这个文件的历史,从开始存在的时候就一直是22,1.7中ndk的编译方式有调整,直接用gradle进行编译的。就用了这个22的值,当时我也看着纳闷为什么编译模拟器工程的预编译库设置为20,但因为历史原因,我也不敢瞎改,怕改出问题。就保留了22。

我觉得这块应该跟-x一致,编译ndk应该用14的版本,编译java需要用最高版本的android sdk。

具体可以参考:

https://github.com/cocos2d/cocos2d-x/pull/18470

这块的优化我们已经列入计划了。会在1.8中做完善。

然而我之前一直用api21的,按理说应该是Android5.x是吧?可是之前打包的APK却也能在Android4.x上面跑,这次强制使用api23(说是22,其实只能选23)后,却在Android6.0以下不能跑了,那么为什么以前api21可以跑Android4.x呢?

先用 link 或者 default 模版顶顶。

apk崩溃原因: dvmFindClassByName rejecting ‘org/cocos2dx/lib/Cocos2dxLocalStorage’, 怎么用解决

12-07 13:47:10.169 3321-3321/? I/dalvikvm: Enabling JNI app bug workarounds for target SDK version 11…
12-07 13:47:10.219 3321-3321/com.vsyou8.scmj I/CocosAnalytics: ==> enableLogging: false
12-07 13:47:10.219 3321-3321/com.vsyou8.scmj D/dalvikvm: Trying to load lib /data/app-lib/com.vsyou8.scmj-1/libcocos2djs.so 0x94f972c8
12-07 13:47:10.289 3321-3321/com.vsyou8.scmj D/dalvikvm: Added shared lib /data/app-lib/com.vsyou8.scmj-1/libcocos2djs.so 0x94f972c8
12-07 13:47:10.289 3321-3321/com.vsyou8.scmj D/JniHelper: JniHelper::setJavaVM(0x861e1c24), pthread_self() = -1216788736
12-07 13:47:10.289 3321-3321/com.vsyou8.scmj D/main: cocos_android_app_init
12-07 13:47:10.289 3321-3321/com.vsyou8.scmj D/Cocos2dxHelper: isSupportLowLatency:false
12-07 13:47:10.299 3321-3321/com.vsyou8.scmj D/Cocos2dxHelper: sampleRate: 44100, framesPerBuffer: 880
12-07 13:47:10.299 3321-3321/com.vsyou8.scmj D/Java_org_cocos2dx_lib_Cocos2dxHelper.cpp: nativeSetAudioDeviceInfo: sampleRate: 44100, bufferSizeInFrames: 880
12-07 13:47:10.299 3321-3321/com.vsyou8.scmj D/Cocos2dxActivity: model=SM-G3812
12-07 13:47:10.299 3321-3321/com.vsyou8.scmj D/Cocos2dxActivity: product=wilcoxdszn
12-07 13:47:10.299 3321-3321/com.vsyou8.scmj D/Cocos2dxActivity: isEmulator=false
12-07 13:47:10.309 3321-3321/com.vsyou8.scmj D/Cocos2dxActivity: onResume()
12-07 13:47:10.309 3321-3321/com.vsyou8.scmj D/AudioFocusManager: requestAudioFocus succeed
12-07 13:47:10.349 3321-3348/com.vsyou8.scmj D/libEGL: loaded /system/lib/egl/libEGL_adreno.so

                                                   [ 12-07 13:47:10.359  3321: 3348 D/         ]
                                                   HostConnection::get() New Host Connection established 0xb7ec3770, tid 3348

12-07 13:47:10.379 3321-3348/com.vsyou8.scmj D/libEGL: loaded /system/lib/egl/libGLESv1_CM_adreno.so

                                                   [ 12-07 13:47:10.379  3321: 3321 D/         ]
                                                   HostConnection::get() New Host Connection established 0xb7ec38c0, tid 3321

12-07 13:47:10.379 3321-3348/com.vsyou8.scmj D/libEGL: loaded /system/lib/egl/libGLESv2_adreno.so

                                                   [ 12-07 13:47:10.389  3321: 3348 D/         ]
                                                   #00  pc 000038c3  /system/lib/lib_renderControl_enc.so (rcQueryEGLString_enc+163)
                                                   
                                                   [ 12-07 13:47:10.389  3321: 3348 D/         ]
                                                   #01  pc 00006425  /system/lib/egl/libEGL_adreno.so (eglDisplay::queryString(int)+917)
                                                   
                                                   [ 12-07 13:47:10.399  3321: 3348 D/         ]
                                                   #02  pc 000073e1  /system/lib/egl/libEGL_adreno.so (eglQueryString+65)
                                                   
                                                   [ 12-07 13:47:10.399  3321: 3348 D/         ]
                                                   #03  pc 0000f84e  /system/lib/libEGL.so (android::egl_display_t::initialize(int*, int*)+238)
                                                   
                                                   [ 12-07 13:47:10.399  3321: 3348 D/         ]
                                                   #04  pc 00012d70  /system/lib/libEGL.so (eglInitialize+96)
                                                   
                                                   [ 12-07 13:47:10.399  3321: 3348 D/         ]
                                                   #05  pc 000763fb  /system/lib/libandroid_runtime.so
                                                   
                                                   [ 12-07 13:47:10.399  3321: 3348 D/         ]
                                                   #06  pc 00036c5b  /system/lib/libdvm.so (dvmPlatformInvoke+79)
                                                   
                                                   [ 12-07 13:47:10.419  3321: 3348 D/         ]
                                                   #00  pc 000038c3  /system/lib/lib_renderControl_enc.so (rcQueryEGLString_enc+163)
                                                   
                                                   [ 12-07 13:47:10.419  3321: 3348 D/         ]
                                                   #01  pc 000061dc  /system/lib/egl/libEGL_adreno.so (eglDisplay::queryString(int)+332)
                                                   
                                                   [ 12-07 13:47:10.419  3321: 3348 D/         ]
                                                   #02  pc 000073e1  /system/lib/egl/libEGL_adreno.so (eglQueryString+65)
                                                   
                                                   [ 12-07 13:47:10.419  3321: 3348 D/         ]
                                                   #03  pc 0000f870  /system/lib/libEGL.so (android::egl_display_t::initialize(int*, int*)+272)
                                                   
                                                   [ 12-07 13:47:10.419  3321: 3348 D/         ]
                                                   #04  pc 00012d70  /system/lib/libEGL.so (eglInitialize+96)
                                                   
                                                   [ 12-07 13:47:10.419  3321: 3348 D/         ]
                                                   #05  pc 000763fb  /system/lib/libandroid_runtime.so
                                                   
                                                   [ 12-07 13:47:10.419  3321: 3348 D/         ]
                                                   #06  pc 00036c5b  /system/lib/libdvm.so (dvmPlatformInvoke+79)

12-07 13:47:10.419 3321-3321/com.vsyou8.scmj D/Cocos2dxActivity: onWindowFocusChanged() hasFocus=true
12-07 13:47:10.479 3321-3348/com.vsyou8.scmj D/jswrapper: Initializing V8, version: 6.0.286.52
12-07 13:47:12.119 3321-3348/com.vsyou8.scmj W/dalvikvm: dvmFindClassByName rejecting ‘org/cocos2dx/lib/Cocos2dxLocalStorage’
12-07 13:47:12.199 3321-3348/com.vsyou8.scmj A/libc: Fatal signal 4 (SIGILL) at 0x00000cf9 (code=0), thread 3348 (Thread-121)

apk直接崩溃

这个一直都有,不是导致问题的原因。
搞个helloworld demo出来,我们这里试试。

helloworld demo一样的崩溃

那你把apk发出来吧。我们测试部门可以验证。

1.7正式版本,用模拟器构建 编译得到的apk包 default模版、android-20

你发个apk有那么难么?
我们这里就是都验证没问题,才发布的。所以需要你的重现问题的apk拿来安装确认一下。

在弄,内网上面,叫人弄出来呢