为什么有些重力感应的游戏不能玩,有些可以玩,主要原因在于framework对于数据的处理只有一套标准,而手机和平板在这方面是有区别的,一般游戏都是针对手机开发,在平板上就会出现问题(左右摆动不起作用,前后起作用),下面我们主要看看如何修改这个问题。
主要涉及文件在:
SystemSensorManager.java中
在函数onSensorChangedLocked中,需要修改设置的值如:
正常:
修改为:
这样就可以了。
那怎么才能做到兼容呢?
1.可以在设置中添加全局变量,如Settings.System.XXX
2.可以在Systemproprity中添加变量
然后在设置中添加控制接口,用来实现兼容。
主要涉及文件在:
SystemSensorManager.java中
在函数onSensorChangedLocked中,需要修改设置的值如:
正常:
v[0] = values[0];
v[1] = values[1];
v[2] = values[2];
修改为:
v[0] = values[1];
v[1] = -values[0];
v[2] = values[2];
这样就可以了。
那怎么才能做到兼容呢?
1.可以在设置中添加全局变量,如Settings.System.XXX
2.可以在Systemproprity中添加变量
然后在设置中添加控制接口,用来实现兼容。