From 9795ccb49098274440f60556b2fcbc7791489f03 Mon Sep 17 00:00:00 2001 From: SebasKoedam Date: Thu, 23 May 2024 18:09:19 +0200 Subject: [PATCH] removed unsed files --- .../fitbot/bluetooth/BluetoothDevice.java | 34 ----- .../fitbot/bluetooth/BluetoothManager.java | 133 ------------------ .../com/example/fitbot/wiiboard/WiiBoard.java | 48 ------- .../fitbot/wiiboard/WiiBoardDiscoverer.java | 66 --------- .../wiiboard/WiiBoardDiscoveryListener.java | 13 -- 5 files changed, 294 deletions(-) delete mode 100644 code/src/Fitbot/app/src/main/java/com/example/fitbot/bluetooth/BluetoothDevice.java delete mode 100644 code/src/Fitbot/app/src/main/java/com/example/fitbot/bluetooth/BluetoothManager.java delete mode 100644 code/src/Fitbot/app/src/main/java/com/example/fitbot/wiiboard/WiiBoard.java delete mode 100644 code/src/Fitbot/app/src/main/java/com/example/fitbot/wiiboard/WiiBoardDiscoverer.java delete mode 100644 code/src/Fitbot/app/src/main/java/com/example/fitbot/wiiboard/WiiBoardDiscoveryListener.java diff --git a/code/src/Fitbot/app/src/main/java/com/example/fitbot/bluetooth/BluetoothDevice.java b/code/src/Fitbot/app/src/main/java/com/example/fitbot/bluetooth/BluetoothDevice.java deleted file mode 100644 index 1611a00..0000000 --- a/code/src/Fitbot/app/src/main/java/com/example/fitbot/bluetooth/BluetoothDevice.java +++ /dev/null @@ -1,34 +0,0 @@ -/* - Copyright 2008 Nedim Jackman - - This file is part of Wiiboard Simple - - Wiiboard Simple is free software: you can redistribute it and/or modify - it under the terms of the GNU Lesser General Public License as published by - the Free Software Foundation, either version 3 of the License, or - (at your option) any later version. - - Wiiboard Simple is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - GNU Lesser General Public License for more details. - - You should have received a copy of the GNU Lesser General Public License - along with Wiiboard Simple. If not, see . - */ - - package com.example.fitbot.bluetooth; - - /** - * In very basic structure, all bluetooth devices have an address that the connection - * is associated with. - */ - public interface BluetoothDevice { - - /** - * The fixed address of the device. - * Constant throughout the connection of the device. - */ - public String getBluetoothAddress(); - - } \ No newline at end of file diff --git a/code/src/Fitbot/app/src/main/java/com/example/fitbot/bluetooth/BluetoothManager.java b/code/src/Fitbot/app/src/main/java/com/example/fitbot/bluetooth/BluetoothManager.java deleted file mode 100644 index 22d6ff5..0000000 --- a/code/src/Fitbot/app/src/main/java/com/example/fitbot/bluetooth/BluetoothManager.java +++ /dev/null @@ -1,133 +0,0 @@ -package com.example.fitbot.bluetooth; - -import android.bluetooth.BluetoothAdapter; -import android.bluetooth.BluetoothDevice; -import android.bluetooth.BluetoothSocket; -import android.content.BroadcastReceiver; -import android.content.Context; -import android.content.Intent; -import android.content.IntentFilter; -import android.content.Context; -import android.util.Log; - -import java.io.IOException; -import java.lang.reflect.Method; -import java.util.UUID; - -public class BluetoothManager { - - private BluetoothAdapter bluetoothAdapter; - private Context context; - - public BluetoothManager(Context context) { - this.context = context; - this.bluetoothAdapter = BluetoothAdapter.getDefaultAdapter(); - } - - public boolean isBluetoothSupported() { - return bluetoothAdapter != null; - } - - public boolean isBluetoothEnabled() { - return bluetoothAdapter.isEnabled(); - } - - public void startDiscovery() { - if (!isBluetoothEnabled()) { - Log.e("BluetoothManager", "Bluetooth is not enabled"); - return; - } - - if (bluetoothAdapter.isDiscovering()) { - bluetoothAdapter.cancelDiscovery(); - Log.d("BluetoothManager", "Cancelling current discovery process..."); - } - - IntentFilter filter = new IntentFilter(); - filter.addAction(BluetoothDevice.ACTION_FOUND); - filter.addAction(BluetoothAdapter.ACTION_DISCOVERY_FINISHED); - context.registerReceiver(receiver, filter); - - bluetoothAdapter.startDiscovery(); - Log.d("BluetoothManager", "Starting discovery process..."); - } - - public final BroadcastReceiver receiver = new BroadcastReceiver() { - public void onReceive(Context context, Intent intent) { - String action = intent.getAction(); - if (BluetoothDevice.ACTION_FOUND.equals(action)) { - BluetoothDevice device = intent.getParcelableExtra(BluetoothDevice.EXTRA_DEVICE); - if (device.getName() != null && device.getName().contains("Nintendo RVL-WBC-01")) { - Log.d("BluetoothManager", "Wii Balance Board found: " + device.getName() + " [" + device.getAddress() + "]"); - connectToDevice(device); - } - } else if (BluetoothAdapter.ACTION_DISCOVERY_FINISHED.equals(action)) { - context.unregisterReceiver(this); - Log.d("BluetoothManager", "Discovery finished."); - } - } - }; - - public void connectToDevice(BluetoothDevice device) { - new Thread(() -> { - BluetoothSocket socket = null; - final int MAX_RETRIES = 3; - final long RETRY_DELAY_MS = 1000; - boolean isConnected = false; - - for (int attempt = 1; attempt <= MAX_RETRIES; attempt++) { - try { - UUID SPP_UUID = UUID.fromString("00001101-0000-1000-8000-00805F9B34FB"); - socket = device.createRfcommSocketToServiceRecord(SPP_UUID); - bluetoothAdapter.cancelDiscovery(); - - byte[] pinBytes = getPinBytes(device.getAddress()); - try { - Method setPinMethod = device.getClass().getDeclaredMethod("setPin", byte[].class); - setPinMethod.invoke(device, pinBytes); - Log.d("BluetoothManager", "PIN set successfully"); - } catch (Exception e) { - Log.e("BluetoothManager", "Failed to set PIN", e); - } - - socket.connect(); - Log.d("BluetoothManager", "Connected to Wii Balance Board"); - isConnected = true; - break; - } catch (IOException e) { - Log.e("BluetoothManager", "Connection attempt " + attempt + " failed", e); - if (attempt < MAX_RETRIES) { - try { - Thread.sleep(RETRY_DELAY_MS); - } catch (InterruptedException ie) { - Thread.currentThread().interrupt(); - break; - } - } - } finally { - if (!isConnected && socket != null) { - try { - socket.close(); - } catch (IOException ex) { - Log.e("BluetoothManager", "Could not close the client socket", ex); - } - } - } - } - - if (!isConnected) { - Log.e("BluetoothManager", "All connection attempts failed."); - } - }).start(); - } - - private byte[] getPinBytes(String address) { - String[] addrParts = address.split(":"); - byte[] pin = new byte[addrParts.length]; - for (int i = 0; i < addrParts.length; i++) { - pin[i] = (byte) Integer.parseInt(addrParts[addrParts.length - 1 - i], 16); - } - Log.i("BluetoothManager", "PIN: " + pin); - return pin; - } -} \ No newline at end of file diff --git a/code/src/Fitbot/app/src/main/java/com/example/fitbot/wiiboard/WiiBoard.java b/code/src/Fitbot/app/src/main/java/com/example/fitbot/wiiboard/WiiBoard.java deleted file mode 100644 index 15fa973..0000000 --- a/code/src/Fitbot/app/src/main/java/com/example/fitbot/wiiboard/WiiBoard.java +++ /dev/null @@ -1,48 +0,0 @@ -package com.example.fitbot.wiiboard; - -import android.bluetooth.BluetoothAdapter; -import android.bluetooth.BluetoothDevice; -import android.bluetooth.BluetoothSocket; -import android.util.Log; - -import java.io.IOException; -import java.lang.reflect.Method; - -public class WiiBoard { - private static final String TAG = "WiiBoard"; - - public static void connectToExtension(String address) { - BluetoothAdapter bluetoothAdapter = BluetoothAdapter.getDefaultAdapter(); - BluetoothDevice device = bluetoothAdapter.getRemoteDevice(address); - BluetoothSocket socket = null; - final int maxTries = 3; - int currentTry = 0; - - while (currentTry < maxTries) { - try { - // Use reflection to create a BluetoothSocket without UUID - Method m = device.getClass().getMethod("createRfcommSocket", new Class[]{int.class}); - socket = (BluetoothSocket) m.invoke(device, 1); - - bluetoothAdapter.cancelDiscovery(); - socket.connect(); - - Log.i(TAG, "Connected to WiiBoard"); - // Handle your communication here - - return; // Exit the method upon successful connection - } catch (Exception e) { // Catching Exception to handle reflection exceptions too - Log.e(TAG, "Attempt " + (currentTry + 1) + " failed to connect", e); - currentTry++; - try { - // Wait a bit before retrying - Thread.sleep(1000); - } catch (InterruptedException ie) { - Log.e(TAG, "Interrupted while waiting to retry connection", ie); - } - } - } - - Log.e(TAG, "Could not connect to WiiBoard after " + maxTries + " attempts."); - } -} \ No newline at end of file diff --git a/code/src/Fitbot/app/src/main/java/com/example/fitbot/wiiboard/WiiBoardDiscoverer.java b/code/src/Fitbot/app/src/main/java/com/example/fitbot/wiiboard/WiiBoardDiscoverer.java deleted file mode 100644 index 43095fd..0000000 --- a/code/src/Fitbot/app/src/main/java/com/example/fitbot/wiiboard/WiiBoardDiscoverer.java +++ /dev/null @@ -1,66 +0,0 @@ -package com.example.fitbot.wiiboard; - -import android.bluetooth.BluetoothAdapter; -import android.bluetooth.BluetoothDevice; -import android.content.BroadcastReceiver; -import android.content.Context; -import android.content.Intent; -import android.content.IntentFilter; -import android.util.Log; - -public class WiiBoardDiscoverer { - private BluetoothAdapter bluetoothAdapter; - private Context context; - private String discoveredAddress; - private boolean isSearching; - - private final BroadcastReceiver receiver = new BroadcastReceiver() { - public void onReceive(Context context, Intent intent) { - String action = intent.getAction(); - if (BluetoothDevice.ACTION_FOUND.equals(action)) { - BluetoothDevice device = intent.getParcelableExtra(BluetoothDevice.EXTRA_DEVICE); - String name = device.getName(); - if ("Nintendo RVL-WBC-01".equals(name)) { - discoveredAddress = device.getAddress(); - Log.i("WiiBoardDiscoverer", "Discovered " + name + " " + discoveredAddress + "."); - isSearching = false; - bluetoothAdapter.cancelDiscovery(); - context.unregisterReceiver(this); // Important to unregister - WiiBoard.connectToExtension(discoveredAddress); - } - } - } - }; - - public WiiBoardDiscoverer(Context context) { - this.context = context; - this.bluetoothAdapter = BluetoothAdapter.getDefaultAdapter(); - if (bluetoothAdapter == null) { - Log.i("WiiBoardDiscoverer", "Device doesn't support Bluetooth. Exiting."); - System.exit(0); - } - } - - public void startWiiBoardSearch() { - if (!isSearching && !bluetoothAdapter.isDiscovering()) { - isSearching = true; - IntentFilter filter = new IntentFilter(BluetoothDevice.ACTION_FOUND); - context.registerReceiver(receiver, filter); - bluetoothAdapter.startDiscovery(); - Log.i("WiiBoardDiscoverer", "WiiBoard Discovery Started"); - } - } - - public void stopWiiBoardSearch() { - if (bluetoothAdapter.isDiscovering()) { - bluetoothAdapter.cancelDiscovery(); - } - isSearching = false; - try { - context.unregisterReceiver(receiver); - } catch (IllegalArgumentException e) { - // This can happen if the receiver was not registered or already unregistered - Log.i("WiiBoardDiscoverer", "Receiver was not registered or already unregistered"); - } - } -} \ No newline at end of file diff --git a/code/src/Fitbot/app/src/main/java/com/example/fitbot/wiiboard/WiiBoardDiscoveryListener.java b/code/src/Fitbot/app/src/main/java/com/example/fitbot/wiiboard/WiiBoardDiscoveryListener.java deleted file mode 100644 index bbb9bad..0000000 --- a/code/src/Fitbot/app/src/main/java/com/example/fitbot/wiiboard/WiiBoardDiscoveryListener.java +++ /dev/null @@ -1,13 +0,0 @@ -package com.example.fitbot.wiiboard; - -/** - * Implement this interface to be notified of WiiBoards that are connected to. Register your - * listener with an instance of WiiBoardDiscoverer. - */ -public interface WiiBoardDiscoveryListener { - - /** - * Is called by a WiiBoardDiscoverer when a WiiBoard has been found and successfully connected to. - */ - public void wiiBoardDiscovered(WiiBoard wiiboard); -} \ No newline at end of file