diff options
author | Joey Grover <joeygrover@gmail.com> | 2018-06-08 10:28:12 -0400 |
---|---|---|
committer | GitHub <noreply@github.com> | 2018-06-08 10:28:12 -0400 |
commit | e104b6a5544bc439bcb7fd239ff226deb14e01cf (patch) | |
tree | 271863d223c2831f55bbaacd0f7e8e71b73477c9 | |
parent | 02fc4bbbc7dd2f180da95eca8e766e11e312bd54 (diff) | |
parent | da52a44b39746d61829af5ff1faaace50b891bd7 (diff) | |
download | sdl_android-e104b6a5544bc439bcb7fd239ff226deb14e01cf.tar.gz |
Merge pull request #784 from smartdevicelink/feature/remove_reflection
Fixes #765 - Remove reflection dependency on Android SDK classes
-rw-r--r-- | sdl_android/src/main/java/com/smartdevicelink/transport/BTTransport.java | 18 | ||||
-rw-r--r-- | sdl_android/src/main/java/com/smartdevicelink/transport/MultiplexBluetoothTransport.java | 10 |
2 files changed, 20 insertions, 8 deletions
diff --git a/sdl_android/src/main/java/com/smartdevicelink/transport/BTTransport.java b/sdl_android/src/main/java/com/smartdevicelink/transport/BTTransport.java index ffa9317a1..5d0c9bed5 100644 --- a/sdl_android/src/main/java/com/smartdevicelink/transport/BTTransport.java +++ b/sdl_android/src/main/java/com/smartdevicelink/transport/BTTransport.java @@ -10,6 +10,7 @@ import android.bluetooth.BluetoothAdapter; import android.bluetooth.BluetoothDevice;
import android.bluetooth.BluetoothServerSocket;
import android.bluetooth.BluetoothSocket;
+import android.os.Build;
import android.os.Build.VERSION;
import com.smartdevicelink.SdlConnection.SdlConnection;
@@ -57,8 +58,14 @@ public class BTTransport extends SdlTransport { super(transportListener);
bKeepSocketActive = bKeepSocket;
} // end-ctor
-
+
+ @Deprecated
public BluetoothSocket getBTSocket(BluetoothServerSocket bsSocket){
+
+ if(bsSocket == null || Build.VERSION.SDK_INT > Build.VERSION_CODES.O) { //Reflection is no longer allowed on SDK classes)
+ return null;
+ }
+
Field[] f = bsSocket.getClass().getDeclaredFields();
@SuppressWarnings("unused")
@@ -85,11 +92,14 @@ public class BTTransport extends SdlTransport { return null;
}
-
+
+ @Deprecated
public int getChannel(BluetoothSocket bsSocket){
int channel = -1;
- if (bsSocket == null) return channel;
+ if (bsSocket == null || Build.VERSION.SDK_INT > Build.VERSION_CODES.O){ //Reflection is no longer allowed on SDK classes
+ return channel;
+ }
Field[] f = bsSocket.getClass().getDeclaredFields();
@@ -174,7 +184,7 @@ public class BTTransport extends SdlTransport { sComment = "Accepting Connections on SDP Server Port Number: " + iSocket + "\r\n";
sComment += "Keep Server Socket Open: " + bKeepSocketActive;
- if (iSocket < 0)
+ if (Build.VERSION.SDK_INT <= Build.VERSION_CODES.O && iSocket < 0)
{
SdlConnection.enableLegacyMode(false, null);
throw new SdlException("Could not open connection to SDL.", SdlExceptionCause.BLUETOOTH_SOCKET_UNAVAILABLE);
diff --git a/sdl_android/src/main/java/com/smartdevicelink/transport/MultiplexBluetoothTransport.java b/sdl_android/src/main/java/com/smartdevicelink/transport/MultiplexBluetoothTransport.java index 6e752217b..b61101a02 100644 --- a/sdl_android/src/main/java/com/smartdevicelink/transport/MultiplexBluetoothTransport.java +++ b/sdl_android/src/main/java/com/smartdevicelink/transport/MultiplexBluetoothTransport.java @@ -32,6 +32,7 @@ import android.bluetooth.BluetoothAdapter; import android.bluetooth.BluetoothDevice; import android.bluetooth.BluetoothServerSocket; import android.bluetooth.BluetoothSocket; +import android.os.Build; import android.os.Bundle; import android.os.Handler; import android.os.Looper; @@ -837,9 +838,9 @@ public class MultiplexBluetoothTransport { return !(mState == STATE_NONE); } - + @Deprecated public BluetoothSocket getBTSocket(BluetoothServerSocket bsSocket){ - if(bsSocket == null){ + if(bsSocket == null || Build.VERSION.SDK_INT > Build.VERSION_CODES.O){ //Reflection is no longer allowed on SDK classes return null; } Field[] f = bsSocket.getClass().getDeclaredFields(); @@ -865,11 +866,12 @@ public class MultiplexBluetoothTransport { return null; } - + + @Deprecated public int getChannel(BluetoothSocket bsSocket){ int channel = -1; - if (bsSocket == null){ + if (bsSocket == null || Build.VERSION.SDK_INT > Build.VERSION_CODES.O){ //Reflection is no longer allowed on SDK classes return channel; } |