标签: cocos2d-js

配置项目“:game”时出现问题。> java.lang.NullPointerException(无错误消息)

我正在从 Cocos Creator V2.4.3 导出的 Android 项目构建 apk,但使用 Gradle 时出现以下错误

A problem occurred configuring project ':game'.
> java.lang.NullPointerException (no error message)
Run Code Online (Sandbox Code Playgroud)

我删除了所有android SDK、NDK并重新安装了Android Studio,然后重新更新了SDK、NDK、Build Tool。但错误仍然发生。

一些配置:

Android SDK = 23, 26, 28, 30

SDK构建工具= 30.0.3

NDK = 19.2.5345600

摇篮版本:4.10.3

Gradle插件版本:3.2.0

JDK:jdk1.8.0_281


build.gradle 看起来像这样

// Top-level build file where you can add configuration options common to all sub-projects/modules.

buildscript {

    repositories {
        google()
        jcenter()
    }
    dependencies {
        classpath 'com.android.tools.build:gradle:3.2.0'


        // NOTE: Do not place your application dependencies here; they belong
        // …
Run Code Online (Sandbox Code Playgroud)

nullpointerexception gradle apk android-studio cocos2d-js

7
推荐指数
2
解决办法
1万
查看次数

Admob Ads应用偶尔会在IllegalArgumentException上崩溃

我尝试将AdMob广告和GooglePlay IAP集成到干净的(hello world)cocos2d-js 3.5项目中.

偶尔(每5次运行)应用程序崩溃并显示下面的异常.当我集成IAP时,这种行为就开始了.清洁AdMob集成很好(或者至少被认为是).

到目前为止,我只做了Java部分(除主屏幕外没有调用cocos代码).我确实将google-play-services_lib升级到23版.

日志转储:

E/AndroidRuntime(27040): java.lang.IllegalArgumentException: null reference
E/AndroidRuntime(27040):    at com.google.android.gms.common.internal.d.b(SourceFile:45)
E/AndroidRuntime(27040):    at com.google.android.gms.ads.internal.g.ao.a(SourceFile:60)
E/AndroidRuntime(27040):    at com.google.android.gms.ads.internal.t.b.a(SourceFile:766)
E/AndroidRuntime(27040):    at com.google.android.gms.ads.internal.t.m.run(SourceFile:43)
E/AndroidRuntime(27040):    at android.os.Handler.handleCallback(Handler.java:733)
E/AndroidRuntime(27040):    at android.os.Handler.dispatchMessage(Handler.java:95)
E/AndroidRuntime(27040):    at android.os.Looper.loop(Looper.java:149)
E/AndroidRuntime(27040):    at android.app.ActivityThread.main(ActivityThread.java:5257)
E/AndroidRuntime(27040):    at java.lang.reflect.Method.invokeNative(Native Method)
E/AndroidRuntime(27040):    at java.lang.reflect.Method.invoke(Method.java:515)
E/AndroidRuntime(27040):    at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:788)
E/AndroidRuntime(27040):    at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:604)
E/AndroidRuntime(27040):    at dalvik.system.NativeStart.main(Native Method)
Run Code Online (Sandbox Code Playgroud)

任何提示?如果您发现它有用,我可以发布一些代码片段...

更新:

德米特里提到,这可能是谷歌方面的错误.我可以在崩溃前看到这些安全警告.它表明导致广告的错误是"坦克世界"

W/Ads     (21547): JS: The page at https://googleads.g.doubleclick.net/mads/gma displayed insecure content from http://lh3.googleusercontent.com/mTcg18XIu-LbM4ovcCpet1zMpdkt1QKIZpM7RhdBpH7fjlLFvSRn56yxbh3i92FiHmjLx54rCg.
W/Ads     (21547):  (https://googleads.g.doubleclick.net/mads/gma:0)
I/chromium(21547): [INFO:CONSOLE(0)] "The page at https://googleads.g.doubleclick.net/mads/gma displayed insecure content from …
Run Code Online (Sandbox Code Playgroud)

android admob cocos2d-x google-play-services cocos2d-js

6
推荐指数
1
解决办法
1168
查看次数

Cocos2d-js:如何在Android设备上使用自定义ttf字体?

我使用以下代码来显示自定义ttf字体:

ml.score = cc.LabelTTF.create(ml.totalPoints.toString(), "fonts/American Typewriter.ttf", 60);
ml.score.setPosition(ml.size.width/2,BS*0.6);
ml.score.retain();
ml.score.setColor(cc.color(200,160,70));
ml.scoreBar.addChild(ml.score, 5);  
Run Code Online (Sandbox Code Playgroud)

在Android中,不显示字体.在Chrome/Firefox浏览器中它是.

我正在使用cocos2d-js 30RC.

笏?

android cocos2d-x cocos2d-js

5
推荐指数
1
解决办法
2509
查看次数

如何从Javascript中获取ios设备中的文档文件夹

我正在将cocos2d-js游戏集成到本机iOS应用程序中.

在某些时候,我在ios本机应用程序中有一个Javascript函数,代码如下:

var txt = jsb.fileUtils.getStringFromFile("project.json");
Run Code Online (Sandbox Code Playgroud)

但是我project.json在Document文件夹而不是我的包中.所以我需要在这个Javascript文件中获取我的文档文件夹路径,使其具有以下内容:

var myPath = SomeFunctionToGetPath();
var txt = jsb.fileUtils.getStringFromFile("myPath/project.json");
Run Code Online (Sandbox Code Playgroud)

任何人都知道我应该如何实施SomeFunctionToGetPath

谢谢你的帮助.

javascript directory cocos2d-iphone ios cocos2d-js

5
推荐指数
0
解决办法
380
查看次数

Cocos2d在Chrome和Firefox中进行文本对齐

这就是它在chrome和mozilla中的外观

我正在使用cocos2dx-3.10

我用过这段代码

var TestLayer = cc.LayerColor.extend({
    ctor: function () {
        this._super(cc.color(255, 255, 255));


        var lineUp = new cc.DrawNode();
        lineUp.drawSegment(cc.p(0, 0), cc.p(200, 0), 0.5, cc.color(80, 80, 80));
        lineUp.setPosition(cc.p(this.width / 2 - 100, this.height / 2 + 13));
        this.addChild(lineUp);

        var lineDown = new cc.DrawNode();
        lineDown.drawSegment(cc.p(0, 0), cc.p(200, 0), 0.5, cc.color(80, 80, 80));
        lineDown.setPosition(cc.p(this.width / 2 - 100, this.height / 2 - 17));
        this.addChild(lineDown);

        var label = new cc.LabelTTF("Lorem Ipsum", "Arial", 30);
        label.setColor(cc.color(0, 0, 0));
        label.setPosition(cc.p(this.width / 2, this.height / 2));
        this.addChild(label); …
Run Code Online (Sandbox Code Playgroud)

javascript cocos2d-x html5-canvas cocos2d-js

5
推荐指数
0
解决办法
160
查看次数

减少Cocos Creator cocos2d-x中的游戏大小

我正在使用Cocos Creator开发适用于Android和iOS平台的游戏.游戏规模小,图形元素少.

我发现这个游戏的APK和IPA文件大小是11.5 MB.我认为这些文件(APK或IPA)必须包含一些不必要的文件.Asset文件夹的大小仅为5 MB.

我有以下问题:

  1. 如何在Cocos Creator中减少iOS和Android平台的游戏大小

  2. 是否有任何优化技术可以减少艺术资产的规模(不影响质量)?

我将不胜感激任何关于这个主题的建议/想法.谢谢.

android ios cocos2d-x cocos2d-js cocoscreator

5
推荐指数
1
解决办法
1052
查看次数

Cocos2D-JS - 编译并运行'Clean'构建?

上下文:
我正在创建一个Cocos2d-JS游戏.我已经创建了项目并处于开发阶段.

我可以在Console中运行cocos run -p webcocos run -p web --source-map从项目目录运行.这些命令有效,允许我运行和测试我的项目.


问题:
简单地说:cocos2d-JSB编译器没有选择我所做的代码更改.我最近更改过的旧代码仍然存在于新编译的cocos2d项目中.我无法检测到我已经对已编译的类文件所做的更改.


技术
问题:技术问题:cocos2d-js编译器(来自终端/控制台)未正确复制修改后的.js文件.以前版本的.js文件以某种方式保留在localhost-web-server中.localhost由运行cocos2d应用程序的Python脚本维护.

(我用的打字稿写我的大部分代码.ts和编译下来到JavaScript .js.js.map运行科科编译器之前,我肯定是打字稿编译下来的Javascript)


更多:
在我的Chrome浏览器中使用Javascript控制台时,我可以看到我的.ts文件在本地主机中可见.我也可以通过这种方式查看我的.js文件,并确认代码尚未更新.


问:
我如何能"力"cocos compilecocos run命令来覆盖旧的任何.js文件,而不是"智能"留住老文件?

是否有可能--source-map使run命令强制重新构建?

我想在Apple的Xcode中制作一个'Clean Build',但是对于cocos2d-js.我怎样才能做到这一点?

如果这些都不可能,我在哪里可以找到localhost使用的构建/运行目录,这样我可以自己手动更新.js文件?

javascript python cocos2d-x cocos2d-js

4
推荐指数
1
解决办法
3506
查看次数

如何使用Cocos2D-JS将变量保存到Android?

我正在尝试将高分整数保存到用户的Android系统中,以便它可以在所有游戏体验中持续存在.

我已经读过使用Cocos2D-X可以使用,NSUserDefaults但Cocos2D-JS API似乎根本没有.

任何人都有这方面的经验,有没有其他有效的方法来解决这个问题?

javascript android cocos2d-x cocos2d-js

4
推荐指数
1
解决办法
2975
查看次数

cc.ScrolView在cocos2d-js中未定义

我尝试使用来自cocos2d-js扩展的ScrollView,TableView,我注意到它无法看到!

我也尝试从该示例创建一个类,但我需要使用本机类!

cocos2d-js

4
推荐指数
1
解决办法
364
查看次数

Cocos2d js触摸事件

我正在cocos2d-js中构建一个应用程序,我在听键盘事件时遇到了问题.我希望存在一个名为setKeyboardEnabled的方法,但是当我调用它时,我得到一个错误,即setKeyboardEnabled不是函数,我错过了什么吗?

var AnimationLayer = cc.Layer.extend({
ctor : function() {
    this._super();
    this.setKeyboardEnabled(true);
},


onKeyDown : function(key) {
   cc.log("action");
}
...
...
)}
Run Code Online (Sandbox Code Playgroud)

当我尝试听触摸事件时,会发生同样的事情.

javascript touch ios cocos2d-x cocos2d-js

3
推荐指数
1
解决办法
8955
查看次数