Compare commits
4 Commits
fix/recent
...
master
| Author | SHA1 | Date | |
|---|---|---|---|
| e53c7be976 | |||
| 99598c14fe | |||
| 876ea68622 | |||
| 9f32185b78 |
2
.gitignore
vendored
2
.gitignore
vendored
|
|
@ -1 +1,3 @@
|
||||||
|
|
||||||
|
classes/
|
||||||
|
cb.ast
|
||||||
|
|
|
||||||
|
|
@ -35,6 +35,7 @@ public class BlessedConnect extends Fragment {
|
||||||
|
|
||||||
final int PERMISSION_REQUEST = 1;
|
final int PERMISSION_REQUEST = 1;
|
||||||
final int REQUEST_ENABLE_BT = 2;
|
final int REQUEST_ENABLE_BT = 2;
|
||||||
|
final int PERMISSION_REQUEST_BLE = 3;
|
||||||
|
|
||||||
public BlessedConnect() {
|
public BlessedConnect() {
|
||||||
Log.d("gio", "BlessedConnect()");
|
Log.d("gio", "BlessedConnect()");
|
||||||
|
|
@ -50,8 +51,12 @@ public class BlessedConnect extends Fragment {
|
||||||
Activity act = (Activity)ctx;
|
Activity act = (Activity)ctx;
|
||||||
FragmentTransaction ft = act.getFragmentManager().beginTransaction();
|
FragmentTransaction ft = act.getFragmentManager().beginTransaction();
|
||||||
ft.add(inst, "BlessedConnect");
|
ft.add(inst, "BlessedConnect");
|
||||||
|
if (android.os.Build.VERSION.SDK_INT >= 24) {
|
||||||
|
ft.commitNowAllowingStateLoss();
|
||||||
|
} else {
|
||||||
ft.commitNow();
|
ft.commitNow();
|
||||||
}
|
}
|
||||||
|
}
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
@ -59,7 +64,15 @@ public class BlessedConnect extends Fragment {
|
||||||
super.onAttach(ctx);
|
super.onAttach(ctx);
|
||||||
Log.d("gio", "BlessedConnect: onAttach()");
|
Log.d("gio", "BlessedConnect: onAttach()");
|
||||||
ctx.registerReceiver(receiver, new IntentFilter(BluetoothAdapter.ACTION_STATE_CHANGED));
|
ctx.registerReceiver(receiver, new IntentFilter(BluetoothAdapter.ACTION_STATE_CHANGED));
|
||||||
if (ctx.checkSelfPermission(Manifest.permission.ACCESS_FINE_LOCATION) != PackageManager.PERMISSION_GRANTED) {
|
if (android.os.Build.VERSION.SDK_INT >= 31) {
|
||||||
|
// BLE on Android 12+ needs the BLUETOOTH_SCAN/CONNECT runtime
|
||||||
|
// permissions. BLUETOOTH_SCAN is declared with
|
||||||
|
// usesPermissionFlags="neverForLocation", so no location
|
||||||
|
// permission is required for scanning.
|
||||||
|
requestPermissions(new String[]{
|
||||||
|
"android.permission.BLUETOOTH_SCAN",
|
||||||
|
"android.permission.BLUETOOTH_CONNECT"}, PERMISSION_REQUEST_BLE);
|
||||||
|
} else if (ctx.checkSelfPermission(Manifest.permission.ACCESS_FINE_LOCATION) != PackageManager.PERMISSION_GRANTED) {
|
||||||
requestPermissions(new String[]{Manifest.permission.ACCESS_FINE_LOCATION}, PERMISSION_REQUEST);
|
requestPermissions(new String[]{Manifest.permission.ACCESS_FINE_LOCATION}, PERMISSION_REQUEST);
|
||||||
}
|
}
|
||||||
central = new BluetoothCentral(ctx, centralCallback, null);
|
central = new BluetoothCentral(ctx, centralCallback, null);
|
||||||
|
|
@ -264,7 +277,7 @@ public class BlessedConnect extends Fragment {
|
||||||
@Override
|
@Override
|
||||||
public void onRequestPermissionsResult (int requestCode, String[] permissions, int[] grantResults) {
|
public void onRequestPermissionsResult (int requestCode, String[] permissions, int[] grantResults) {
|
||||||
Log.d("gio", "BlessedConnect: onRequestPermissionsResult");
|
Log.d("gio", "BlessedConnect: onRequestPermissionsResult");
|
||||||
if (requestCode == PERMISSION_REQUEST) {
|
if (requestCode == PERMISSION_REQUEST || requestCode == PERMISSION_REQUEST_BLE) {
|
||||||
boolean granted = true;
|
boolean granted = true;
|
||||||
for (int x : grantResults) {
|
for (int x : grantResults) {
|
||||||
if (x == PackageManager.PERMISSION_DENIED) {
|
if (x == PackageManager.PERMISSION_DENIED) {
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue
Block a user