1.7.2. beta.2 Android 编译出错啊:
arm-linux-androideabi-g++: error: E:jiutongqipai_cccs1.7buildproject_zhjsb-defaultframeworkscocos2d-xexternal/android/armeabi-v7a/libv8_builtins_generators.a: No such file or directory
替换LaunchScreenBackground的背景图,换图必报错,用原来的图就没事,不会是1.72的问题吧?
支持国产,争取早日取代u3d
1.7.2, win10, 有时出现这个错误:
E/jswrapper (519): [ERROR] (..\jswrapper\v8\Object.cpp, 519): Invoking function (37D585D8) failed!
E/jswrapper (267): ERROR: Uncaught TypeError: Cannot read property 'x' of null, location: src/jsb_polyfill.js:0:0
STACK:
[0]set@src/jsb_polyfill.js:5666
[1]sample@src/jsb_polyfill.js:4402
[2]15.proto.sample@src/jsb_polyfill.js:4730
[3]process@src/jsb_polyfill.js:4634
[4]15.proto.update@src/jsb_polyfill.js:4678
[5]update@src/jsb_polyfill.js:4536
this._position
怎么会是null呢? (自己的代码肯定没有直接操作过 this._position)
也有在这里报错的:
E/jswrapper (267): ERROR: Uncaught TypeError: Cannot set property 'scaleX' of null, location: src/jsb_polyfill.js:0:0
STACK:
[0]set@src/jsb_polyfill.js:5747
[1]sample@src/jsb_polyfill.js:4402
[2]15.proto.sample@src/jsb_polyfill.js:4730
[3]process@src/jsb_polyfill.js:4634
[4]15.proto.update@src/jsb_polyfill.js:4678
[5]update@src/jsb_polyfill.js:4536
E/jswrapper (519): [ERROR] (..\jswrapper\v8\Object.cpp, 519): Invoking function (3FDCA2D8) failed!
都是在AnimationManager.update()
里面报错的。是不是某种情况下,node被释放了,但是animation还在?
节点被场景销毁了
1.7.2. beta.2 Android 编译出错啊:
arm-linux-androideabi-g++: error: E:jiutongqipai_cccs1.7buildproject_zhjsb-defaultframeworkscocos2d-xexternal/android/armeabi-v7a/libv8_builtins_generators.a: No such file or directory
为什么路径的斜杠没了啊,这是怎么回事,能不能理我一下!! @jare 谢谢了
是这个版本引入的么?这块东西从1.7开始就一直没改。应该是个例。
你可以换台电脑试试看,我估计是哪里环境配置有问题。
android,api 17 ,自定义splash使用第一种方法,启动必报错。
Caused by: java.lang.NullPointerException
at org.cocos2dx.lib.Cocos2dxHelper.runOnGLThread(Cocos2dxHelper.java:103)
at org.cocos2dx.lib.Cocos2dxAudioFocusManager.unregisterAudioFocusListener(Cocos2dxAudioFocusManager.java:121)
at org.cocos2dx.lib.Cocos2dxActivity.onDestroy(Cocos2dxActivity.java:354)
at org.cocos2dx.javascript.AppActivity.onDestroy(AppActivity.java:79)
at android.app.Activity.performDestroy(Activity.java:5603)
at android.app.Instrumentation.callActivityOnDestroy(Instrumentation.java:1135)
at android.app.ActivityThread.performDestroyActivity(ActivityThread.java:3692)
at android.app.ActivityThread.handleDestroyActivity(ActivityThread.java:3723)
at android.app.ActivityThread.access$1500(ActivityThread.java:162)
at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1319)
at android.os.Handler.dispatchMessage(Handler.java:102)
at android.os.Looper.loop(Looper.java:157)
at android.app.ActivityThread.main(ActivityThread.java:5387)
at java.lang.reflect.Method.invokeNative(Native Method)
at java.lang.reflect.Method.invoke(Method.java:515)
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:1265)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1081)
at dalvik.system.NativeStart.main(Native Method)
应该是很底层报的错,之前以为是anysdk的问题,还发帖问过他们,他们也没说出个所以然来。
不怎么会android,希望能帮忙看下为啥,是我的问题还是有什么没弄对。
pc系统默认是微软雅黑 字体
chrome字体显示正常 360浏览器字体却是宋体 好奇怪呀
布局的label都是创建后默认的形式没动过 求助
我也碰到了这个问题 请问你后来解决了吗?
自定义Splash我们也做了一个,我整理一下发这里,稍等
##Android制作自定义闪屏
- 进入
frameworks\runtime-src\proj.android-studio\app\res\values\
,新建values.xml
,内容如下,主要是加一个颜色:
<?xml version="1.0" encoding="utf-8"?>
<resources>
<color name="white">#ffffff</color>
</resources>
- 新建
styles.xml
,内容如下:
<resources>
<style name="SplashTheme" parent="Theme.AppCompat.NoActionBar">
<item name="android:windowBackground">@drawable/background_splash</item>
<item name="android:windowFullscreen">true</item>
<item name="android:windowContentOverlay">@null</item>
</style>
</resources>
- 进入
frameworks\runtime-src\proj.android-studio\app\res\drawable\
,新建background_splash.xml
,内容如下:
<?xml version="1.0" encoding="utf-8"?>
<layer-list xmlns:android="http://schemas.android.com/apk/res/android">
<item
android:drawable="@color/white"/>
<item>
<bitmap
android:gravity="fill"
android:src="@drawable/logo"/>
</item>
</layer-list>
将logo.png也放在drawable目录下。
- 进入
frameworks\runtime-src\proj.android-studio\app\
,打开AndroidManifest.xml
,新加一个Splash的Activity,作为第一个启动的Activity:
<activity
android:name="org.cocos2dx.javascript.SplashActivity"
android:screenOrientation="sensorLandscape"
android:configChanges="orientation|keyboardHidden|screenSize"
android:label="@string/app_name"
android:theme="@style/SplashTheme">
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
要注意把AppActivity修改一下,注掉Activity的声明,如下:
<activity
android:name="org.cocos2dx.javascript.AppActivity"
android:screenOrientation="sensorLandscape"
android:configChanges="orientation|keyboardHidden|screenSize"
android:label="@string/app_name"
android:theme="@android:style/Theme.NoTitleBar.Fullscreen" >
<!--<intent-filter>-->
<!--<action android:name="android.intent.action.MAIN" />-->
<!--<category android:name="android.intent.category.LAUNCHER" />-->
<!--</intent-filter>-->
</activity>
- 进入
frameworks\runtime-src\proj.android-studio\app\src\org\cocos2dx\javascript\
,新建一个SplashActivity.java
,代码如下:
package org.cocos2dx.javascript;
import android.app.Activity;
import android.content.Intent;
import android.os.Bundle;
import android.os.Handler;
import com.inktoad.ahzh.R;
/**
* Created by colin on 2017/11/2.
* 启动闪屏画面
*/
public class SplashActivity extends Activity {
//延迟时间
private static final long SPLASH_DELAY_MILLIS = 800;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
// 使用Handler的postDelayed方法,延迟执行跳转到MainActivity
new Handler().postDelayed(new Runnable() {
public void run() {
Intent intent = new Intent(SplashActivity.this, AppActivity.class);
SplashActivity.this.startActivity(intent);
SplashActivity.this.finish();
}
}, SPLASH_DELAY_MILLIS);
}
@Override
public void onBackPressed() {
// super.onBackPressed();
}
}
- 打开
AppActivity.java
,将下面代码注掉,不注掉会出错,如果你没找到,那可能是我以前自己加上的,忽略即可:
/**
// Workaround in https://stackoverflow.com/questions/16283079/re-launch-of-activity-on-home-button-but-only-the-first-time/16447508
if (!isTaskRoot()) {
// Android launched another instance of the root activity into an existing task
// so just quietly finish and go away, dropping the user back into the activity
// at the top of the stack (ie: the last state of this task)
// Don't need to finish it again since it's finished in super.onCreate .
return;
}
*/
这段代码为了解决一个BUG,见上面的说明,但我试过不知怎么重现这个BUG,所以就直接注掉了。
相同的,在frameworks\cocos2d-x\cocos\platform\android\java\src\org\cocos2dx\lib\
的Cocos2dxActivity.java
也有这段相同的代码,同样要把它注掉。
你看看经过上面的操作,能否正常启动Splash。我们这边是正常的,没有出现问题。
1.7.2 1.7.1都还没发布,1.8倒是发布了,感觉这版本真混乱。。。。
哈哈,估计大版本博点眼球。
系统配置pc win7 64位 360浏览器6.2版本报如下错误 游戏直接就黑屏了
在chrome浏览器 63.0.3239.84 应该是 很新的版本 也报这个的警告 可以正常玩
谢谢分享,我抽空试一下。