Salut tout le monde. Je développe un jeu Android avec Libgdx (je me fiche des autres plateformes) et c'est un jeu de rôles en multijoueur donc le realtime n'est pas important (chaque joueur devra attendre son tour).
J'ai cherché comment faire pour faire marcher le Bluetooth avec Libgdx et apparemment ce dernier ne supporte pas le réseau + puisque le Bluetooth est spécifique à une plateforme je doit faire une interface pour l'utiliser dans le projet principal (core) et l'implémenter dans le projet d'Android, ce que j'ai fait.
J'ai implémenté la première méthode (activer le Bluetooth) et j'ai voulu la tester mais je tombe sur une NullPointerException dont je ne comprends pas la source.
Voici le code :
(J'ai fait "extends Activity" parce que la méthode "startActivityForResult()" est une méthode de cette classe et c'est justement dans cette ligne que l'exception se déclenche donc je doute que l'erreur vient de là.)
public class BluetoothImpl extends Activity implements Bluetooth {
@Override
public boolean enableBluetooth() {
BluetoothAdapter mBluetoothAdapter = BluetoothAdapter.getDefaultAdapter();
if (mBluetoothAdapter == null) {
return false;
}
if (!mBluetoothAdapter.isEnabled()) {
Intent enableBtIntent = new Intent(BluetoothAdapter.ACTION_REQUEST_ENABLE);
System.out.println("test");
startActivityForResult(enableBtIntent, REQUEST_ENABLE_BT);
}
return true;
}
// les autres méthdes ...
}
Ceci est l'appel (dans la méthde show() d'une classe implémentant Screen
textButton.addListener(new ClickListener() {
@Override
public void clicked (InputEvent event, float x, float y) {
super.clicked(event, x, y);
System.out.println(game.bluetooth.enableBluetooth());
}
Et finalement l'erreur qui apparait

Que peut-être la source de l'erreur?
Et pouvez vous me donner des conseils.
Et merci.