1

这是一个非常开放的问题。

我们使用 Andengine 为安卓开发了一款游戏。僵尸向你袭来,它们“抓住”你,为了摆脱它们,你必须移动设备。多个设备中存在一个错误,无法通过移动设备来摇晃僵尸。我们无法在我们用于测试游戏的设备上复制此错误。

所以我的问题是:硬件是否有可能与某些 android 功能不完全兼容?我的意思是那里有大量的安卓设备。

我问这个问题是为了更好地了解如何进行。我们应该进一步挖掘编程(就像我们一直在做的那样,没有成功)还是实现一种不同的方式来摇动僵尸(没有加速度计)。

提前致谢

如果有人想更好地了解错误 https://play.google.com/store/apps/details?id=com.exmgames.cfdesperationlite

4

1 回答 1

1

问题可能与加速度计的频率有关。注册时不要使用以下 android 常量。

mSensorManager.registerListener(this, mAccelerometer, SensorManager.SENSOR_DELAY_NORMAL);

这些值对于不同的设备是不同的。即例如:SENSOR_DELAY_UI 在一个设备中提供 100Hz,在另一个设备中提供 50Hz,在另一个设备中提供 125Hz。始终使用硬编码频率。

int SENSOR_DELAY_FASTEST    get sensor data as fast as possible
int SENSOR_DELAY_GAME   rate suitable for games
int SENSOR_DELAY_NORMAL rate (default) suitable for screen orientation changes
int SENSOR_DELAY_UI rate suitable for the user interface

使用以微秒为单位的硬编码值,例如频率 1 Hz

mSensorManager.registerListener(this, mAccelerometer,1000000);

希望它解决。

于 2013-01-28T17:10:48.463 回答