Avoid calls unavailable on API level 21

This commit is contained in:
Luiz Henrique Laurini 2021-02-20 14:32:16 -03:00 committed by Simon Chan
commit fe88111187
No known key found for this signature in database
GPG key ID: A8B69F750B9BCEDD
2 changed files with 22 additions and 14 deletions

View file

@ -182,11 +182,15 @@ public class Controller {
int id = msg.getGameControllerId(); int id = msg.getGameControllerId();
int axis = msg.getGameControllerAxis(); int axis = msg.getGameControllerAxis();
int value = msg.getGameControllerAxisValue(); int value = msg.getGameControllerAxisValue();
if (!gameControllers.contains(id)) {
GameController controller = gameControllers.get(id);
if (controller != null) {
controller.setAxis(axis, value);
} else {
Ln.w("Received data for non-existant controller."); Ln.w("Received data for non-existant controller.");
break;
} }
gameControllers.get(id).setAxis(axis, value); break;
} }
break; break;
case ControlMessage.TYPE_INJECT_GAME_CONTROLLER_BUTTON: case ControlMessage.TYPE_INJECT_GAME_CONTROLLER_BUTTON:
@ -194,11 +198,14 @@ public class Controller {
int id = msg.getGameControllerId(); int id = msg.getGameControllerId();
int button = msg.getGameControllerButton(); int button = msg.getGameControllerButton();
int state = msg.getGameControllerButtonState(); int state = msg.getGameControllerButtonState();
if (!gameControllers.contains(id)) {
GameController controller = gameControllers.get(id);
if (controller != null) {
controller.setButton(button, state);
} else {
Ln.w("Received data for non-existant controller."); Ln.w("Received data for non-existant controller.");
break;
} }
gameControllers.get(id).setButton(button, state);
} }
break; break;
case ControlMessage.TYPE_INJECT_GAME_CONTROLLER_DEVICE: case ControlMessage.TYPE_INJECT_GAME_CONTROLLER_DEVICE:
@ -212,12 +219,15 @@ public class Controller {
break; break;
case GameController.DEVICE_REMOVED: case GameController.DEVICE_REMOVED:
if (!gameControllers.contains(id)) { GameController controller = gameControllers.get(id);
if (controller != null) {
controller.close();
gameControllers.delete(id);
} else {
Ln.w("Non-existant game controller removed."); Ln.w("Non-existant game controller removed.");
break;
} }
gameControllers.get(id).close();
gameControllers.delete(id);
break; break;
default: default:

View file

@ -4,14 +4,12 @@ import android.graphics.Rect;
import android.media.MediaCodecInfo; import android.media.MediaCodecInfo;
import android.os.BatteryManager; import android.os.BatteryManager;
import android.os.Build; import android.os.Build;
import android.text.TextUtils;
import java.io.InputStream; import java.io.InputStream;
import java.io.FileOutputStream; import java.io.FileOutputStream;
import java.io.IOException; import java.io.IOException;
import java.nio.file.Files; import java.nio.channels.FileChannel;
import java.nio.file.Path;
import java.nio.file.Paths;
import java.nio.file.StandardCopyOption;
import java.util.List; import java.util.List;
import java.util.Locale; import java.util.Locale;