在libgdx中,使用AndroidApplicationConfiguration来配置app中那些设备可以使用
而是用 Gdx.input.isPeripheralAvailable(Peripheral.Compass)来查询app中那些设备可以使用
一、初始化及常用的API
//使用AndroidApplicationConfiguration给app设置特定的配置
AndroidApplicationConfiguration config = new AndroidApplicationConfiguration();
config.useAccelerometer = true;
config.useCompass = true;
initialize(new MyGame(), config);
//使用Gdx.input.isPeripheralAvailable判断一些外围设备是否可用
boolean hardwareboard = Gdx.input.isPeripheralAvailable(Peripheral.HardwareKeyboard);
boolean multiTouch = Gdx.input.isPeripheralAvailable(Peripheral.MultitouchScreen);
boolean acelermetor = Gdx.input.isPeripheralAvailable(Peripheral.Accelerometer);
boolean compass = Gdx.input.isPeripheralAvailable(Peripheral.Compass);
System.out.println("--------->" + hardwareboard);
System.out.println("---------->" + multiTouch);
System.out.println("----->acelermetor: " + acelermetor);
System.out.println("------>compass: " + compass);
二、应用举例
1、MainActivity
package com.example.groupactiontest;
import android.os.Bundle;
import com.badlogic.gdx.backends.android.AndroidApplication;
import com.badlogic.gdx.backends.android.AndroidApplicationConfiguration;
public class MainActivity extends AndroidApplication {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
//使用AndroidApplicationConfiguration给app设置特定的配置
AndroidApplicationConfiguration config = new AndroidApplicationConfiguration();
config.useAccelerometer = true;
config.useCompass = true;
initialize(new MyGame(), config);
}
}
2、MyGame
package com.example.groupactiontest;
import com.badlogic.gdx.ApplicationListener;
import com.badlogic.gdx.Gdx;
import com.badlogic.gdx.Input.Keys;
import com.badlogic.gdx.Input.Peripheral;
import com.badlogic.gdx.graphics.GL10;
public class MyGame implements ApplicationListener {
@Override
public void create() {
//使用Gdx.input.isPeripheralAvailable判断一些外围设备是否可用
boolean hardwareboard = Gdx.input.isPeripheralAvailable(Peripheral.HardwareKeyboard);
boolean multiTouch = Gdx.input.isPeripheralAvailable(Peripheral.MultitouchScreen);
boolean acelermetor = Gdx.input.isPeripheralAvailable(Peripheral.Accelerometer);
boolean compass = Gdx.input.isPeripheralAvailable(Peripheral.Compass);
System.out.println("--------->" + hardwareboard);
System.out.println("---------->" + multiTouch);
System.out.println("----->acelermetor: " + acelermetor);
System.out.println("------>compass: " + compass);
}
@Override
public void dispose() {
// TODO Auto-generated method stub
}
@Override
public void pause() {
// TODO Auto-generated method stub
}
@Override
public void render() {
Gdx.gl.glClear(GL10.GL_COLOR_BUFFER_BIT);
// if(Gdx.input.isKeyPressed(Keys.LEFT)){
// System.out.println("你按了左键...");
// }
// if(Gdx.input.isKeyPressed(Keys.A)){//判断你是否按了A键
// System.out.println("你按了back键..");
// }
}
@Override
public void resize(int arg0, int arg1) {
// TODO Auto-generated method stub
}
@Override
public void resume() {
// TODO Auto-generated method stub
}
}