private void CheckBt() { mBluetoothAdapter = BluetoothAdapter.DefaultAdapter; if (!mBluetoothAdapter.Enable()) { Toast.MakeText(this, "Bluetooth Desactivado", ToastLength.Short).Show(); } if (mBluetoothAdapter == null) { Toast.MakeText(this, "Bluetooth No Existe o esta Ocupado", ToastLength.Short) .Show(); } }
public void StopScan() { if (!IsScanning) { return; } if (IsAfterLollipop) { Scanner.StopScan(Callback); } else { BluetoothAdapter.StopLeScan(LeCallback); } IsScanning = false; }
private void LoadPrinterList() { mBluetoothAdapter = BluetoothAdapter.DefaultAdapter; if (mBluetoothAdapter == null) { DialogMessageService.MessageBox(this, "Attention", "This device does not support bluetooth"); } else if (mBluetoothAdapter.IsEnabled) { mDevices.Clear(); SetUpBluetooth(); } else { DialogMessageService.MessageBox(this, "Attention", "Please turn on your Bluetooth to connect the printer to your phone."); } }
void Awake() { statusText.text = "Status : ..."; BluetoothAdapter.enableBluetooth();//Force Enabling Bluetooth device = new BluetoothDevice(); device.Name = "HC-05"; device.setEndByte(255); device.ReadingCoroutine = ManageConnection; connect(); }
public DroidBluetoothDriver() { if (!Application.Context.PackageManager.HasSystemFeature(PackageManager.FeatureBluetoothLe)) { this.DriverState = BluetoothDriverStates.NotPresent; return; } this.bluetoothManager = Application.Context.GetSystemService(Context.BluetoothService) as BluetoothManager; if (this.bluetoothManager != null) { this.bluetoothAdapter = this.bluetoothManager.Adapter; if (this.bluetoothAdapter != null) { this.DriverState = BluetoothDriverStates.Enabled; } } }
/// <summary> /// Make sure that ble is supported on this device. /// </summary> /// <returns></returns> private async Task <bool> CheckPeripheralRoleSupportAsync() { var localAdapter = await BluetoothAdapter.GetDefaultAsync(); if (localAdapter != null) { if (localAdapter.IsLowEnergySupported == false) { serviceStarted = false; } return(localAdapter.IsPeripheralRoleSupported); } else { // Bluetooth is not turned on. return(false); } }
public void OnDiscoveryCompleted(BluetoothAdapter btAdapter) { txtDisplay.AppendText("Discovery Completed\r\n"); this.cbBTDevices.DisplayMember = "DeviceName"; this.cbBTDevices.ValueMember = null; this.cbBTDevices.DataSource = btAdapter.Peers; btnDiscover.Enabled = true; if (cbBTDevices.Items.Count != 0) { btnConnect.Enabled = true; } else { btnConnect.Enabled = false; } }
protected override void OnCreate(Bundle savedInstanceState) { base.OnCreate(savedInstanceState); SetContentView(Resource.Layout.BTConnectionLayout); BluetoothAdapter btAdapter = BluetoothAdapter.DefaultAdapter; if (btAdapter.IsEnabled == false) { Intent intent = new Intent(BluetoothAdapter.ActionRequestEnable); StartActivityForResult(intent, 1); } if (btAdapter.IsEnabled == true) { Init(); } }
void Awake() { device = new BluetoothDevice(); if (BluetoothAdapter.isBluetoothEnabled()) { connect(); } else { //BluetoothAdapter.enableBluetooth(); //you can by this force enabling Bluetooth without asking the user BluetoothAdapter.OnBluetoothStateChanged += HandleOnBluetoothStateChanged; BluetoothAdapter.listenToBluetoothState(); // if you want to listen to the following two events OnBluetoothOFF or OnBluetoothON BluetoothAdapter.askEnableBluetooth(); //Ask user to enable Bluetooth } }
private void setBondedDevices() { logicalName = null; bondedDevices.Clear(); BluetoothAdapter bluetoothAdapter = BluetoothAdapter.DefaultAdapter; ISet <BluetoothDevice> bondedDeviceSet = bluetoothAdapter.BondedDevices; foreach (BluetoothDevice device in bondedDeviceSet) { bondedDevices.Add(device.Name + DEVICE_ADDRESS_START + device.Address + DEVICE_ADDRESS_END); } if (arrayAdapter != null) { arrayAdapter.notifyDataSetChanged(); } }
private void CloseConnection(BluetoothSocket btSocket) { // Checar se é um socket válido e conectado if (btSocket != null && btSocket.IsConnected) { try { // Tentar fechar a conexão btSocket.Close(); mBluetoothAdapter = null; } catch (System.Exception e) { throw new System.ApplicationException("Erro ao fechar o socket Bluetooth.", e); } } }
public static void stopScan(ScanCallback callback) { BluetoothAdapter adapter = BluetoothAdapter.DefaultAdapter; if (adapter == null) { Log.Debug(tag, "BluetoothAdapter is null"); } BluetoothLeScanner scaner = adapter.BluetoothLeScanner; if (scaner == null) { Log.Debug(tag, "BluetoothLeScanner is null"); } scaner.StopScan(callback); }
public ConnectThread(BluetoothDevice device, BluetoothAdapter adapter) { BluetoothSocket tmp = null; thisPhone = adapter; btDevice = device; try { tmp = device.CreateRfcommSocketToServiceRecord(Constants.APP_UUID); } catch (Java.IO.IOException e) { e.PrintStackTrace(); } btSocket = tmp; }
public List <BTDevice> GetBondedDevices() { BluetoothAdapter adapter = BluetoothAdapter.DefaultAdapter; //アダプター作成 var listBondedDevices = adapter.BondedDevices; //ペアリング済みデバイスの取得 if (listBondedDevices != null && listBondedDevices.Count > 0) { foreach (var device in listBondedDevices) { var btDevice = new BTDevice(); btDevice.Name = device.Name; btDevice.UUID = device.GetUuids().FirstOrDefault().ToString(); btDevice.Address = device.Address; result.Add(btDevice); } } return(result); }
public IObservable <IAdapter> FindAdapters() => Observable.Create <IAdapter>(async ob => { var devices = await DeviceInformation.FindAllAsync(BluetoothAdapter.GetDeviceSelector()); foreach (var dev in devices) { Log.Info(BleLogCategory.Adapter, "found - {dev.Name} ({dev.Kind} - {dev.Id})"); var native = await BluetoothAdapter.FromIdAsync(dev.Id); if (native.IsLowEnergySupported) { var radio = await native.GetRadioAsync(); var adapter = new Adapter(native, radio); ob.OnNext(adapter); } } ob.OnCompleted(); return(Disposable.Empty); });
protected override void OnCreate(Bundle bundle) { base.OnCreate(bundle); // Set our view from the "main" layout resource SetContentView(Resource.Layout.Main); // Get local Bluetooth adapter bluetoothAdapter = BluetoothAdapter.DefaultAdapter; // If the adapter is null, then Bluetooth is not supported if (bluetoothAdapter == null) { Toast.MakeText(this, "Bluetooth is not available", ToastLength.Long).Show(); Finish(); return; } }
protected override void OnCreate(Bundle savedInstanceState) { base.OnCreate(savedInstanceState); _bluetoothAdapter = BluetoothAdapter.DefaultAdapter; SetContentView(Resource.Layout.content_main); _writeListener = new WriteListener(this); if (_bluetoothAdapter == null) { Toast.MakeText(this, "Bluetooth is not available.", ToastLength.Long).Show(); FinishAndRemoveTask(); } _receiver.BluetoothDiscoveryModeChanged += (sender, e) => { InvalidateOptionsMenu(); }; InitializeFragments(); }
/// <summary> /// This function switches the bluetooth on if it is not on /// It then uses the BLE scanner to scan the bluetooth active devices in /// the surrounding, and receives the data in the callback function provided /// </summary> public void startConnectingBluetooth() { BluetoothAdapter adapter = BluetoothAdapter.DefaultAdapter; var scanner = adapter.BluetoothLeScanner; if (adapter != null && !adapter.IsEnabled) { adapter.Enable(); } var callback = new project3.CallBackClass(); ScanSettings settings = new ScanSettings.Builder() .SetScanMode(Android.Bluetooth.LE.ScanMode.LowLatency) .SetReportDelay(0) .Build(); scanner.StartScan(new List <ScanFilter>(), settings, callback); }
/// <summary> /// 打印队列 /// </summary> public void Print() { lock (Lock) { try { if (null == mQueue || mQueue.Count() <= 0) { return; } if (null == mAdapter) { mAdapter = BluetoothAdapter.DefaultAdapter; } if (null == mBtService) { mBtService = new BtService(mContext); } //没有连接时,重新连接 if (mBtService.GetState() != BtService.STATE_CONNECTED) { if (!string.IsNullOrEmpty(App.BtAddress)) { BluetoothDevice device = mAdapter.GetRemoteDevice(App.BtAddress); //连接 mBtService.Connect(device); return; } } while (mQueue.Count() > 0) { mBtService.Write(mQueue[0]); mQueue.RemoveAt(0); } } catch (Exception) { //e.printStackTrace(); } } }
public BluetoothDevice FindBTPrinter(string printername, ref string msg) { BluetoothAdapter mBluetoothAdapter = null; BluetoothDevice mmDevice = null; try{ mBluetoothAdapter = BluetoothAdapter.DefaultAdapter; if (mBluetoothAdapter == null) { msg = Resources.GetString(Resource.String.msg_bluetootherror); return(mmDevice); } string txt = ""; if (!mBluetoothAdapter.Enable()) { Intent enableBluetooth = new Intent( BluetoothAdapter.ActionRequestEnable); StartActivityForResult(enableBluetooth, 0); } var pair = mBluetoothAdapter.BondedDevices; if (pair.Count > 0) { foreach (BluetoothDevice dev in pair) { Console.WriteLine(dev.Name); txt = txt + "," + dev.Name; if (dev.Name.ToUpper() == printername) { mmDevice = dev; break; } } } msg = Resources.GetString(Resource.String.msg_bluetoothfound) + mmDevice.Name; //Toast.MakeText(this, "found device " +mmDevice.Name, ToastLength.Long).Show (); }catch (Exception ex) { //Toast.MakeText (this, "Error in Bluetooth device. Try again.", ToastLength.Long).Show (); msg = Resources.GetString(Resource.String.msg_bluetootherror); } return(mmDevice); }
public BleServer(Context ctx) { _bluetoothManager = (BluetoothManager)ctx.GetSystemService(Context.BluetoothService); _bluetoothAdapter = _bluetoothManager.Adapter; _bluettothServerCallback = new BleGattServerCallback(); _bluetoothServer = _bluetoothManager.OpenGattServer(ctx, _bluettothServerCallback); var service = new BluetoothGattService(UUID.FromString("ffe0ecd2-3d16-4f8d-90de-e89e7fc396a5"), GattServiceType.Primary); _characteristic = new BluetoothGattCharacteristic(UUID.FromString("d8de624e-140f-4a22-8594-e2216b84a5f2"), GattProperty.Read | GattProperty.Notify | GattProperty.Write, GattPermission.Read | GattPermission.Write); _characteristic.AddDescriptor(new BluetoothGattDescriptor(UUID.FromString("28765900-7498-4bd4-aa9e-46c4a4fb7b07"), GattDescriptorPermission.Write | GattDescriptorPermission.Read)); service.AddCharacteristic(_characteristic); _characteristic = new BluetoothGattCharacteristic(UUID.FromString("d8de624e-140f-4a22-8594-e2216b84a5f3"), GattProperty.Read | GattProperty.Notify | GattProperty.Write, GattPermission.Read | GattPermission.Write); _characteristic.AddDescriptor(new BluetoothGattDescriptor(UUID.FromString("28765900-7498-4bd4-aa9e-46c4a4fb7b08"), GattDescriptorPermission.Write | GattDescriptorPermission.Read)); service.AddCharacteristic(_characteristic); _bluetoothServer.AddService(service); _bluettothServerCallback.CharacteristicReadRequest += _bluettothServerCallback_CharacteristicReadRequest; _bluettothServerCallback.DescriptorWriteRequest += _bluettothServerCallback_DescriptorWriteRequest; _bluettothServerCallback.CharacteristicWriteRequest += _bluettothServerCallback_CharacteristicWriteRequest; _bluettothServerCallback.NotificationSent += _bluettothServerCallback_NotificationSent; _bluettothServerCallback.ConnectionStateChange += _bluettothServerCallback_ConnectionStateChange; // MessagingCenter.Send<BLE202.App, string>((BLE202.App)Xamarin.Forms.Application.Current, "Hi", "Server created!"); // _bluetoothAdapter.SetName("Concungungoc"); BluetoothLeAdvertiser myBluetoothLeAdvertiser = _bluetoothAdapter.BluetoothLeAdvertiser; var builder = new AdvertiseSettings.Builder(); builder.SetAdvertiseMode(AdvertiseMode.LowLatency); builder.SetConnectable(true); builder.SetTimeout(0); builder.SetTxPowerLevel(AdvertiseTx.PowerHigh); AdvertiseData.Builder dataBuilder = new AdvertiseData.Builder(); dataBuilder.SetIncludeDeviceName(true); //dataBuilder.AddServiceUuid(ParcelUuid.FromString("ffe0ecd2-3d16-4f8d-90de-e89e7fc396a5")); dataBuilder.SetIncludeTxPowerLevel(true); myBluetoothLeAdvertiser.StartAdvertising(builder.Build(), dataBuilder.Build(), new BleAdvertiseCallback()); }
protected override void OnCreate(Bundle savedInstanceState) { base.OnCreate(savedInstanceState); SetContentView(Resource.Layout.connectionpage); _bluetoothAdapter = BluetoothAdapter.DefaultAdapter; #region define items on View _spinner = FindViewById <Spinner>(Resource.Id.spinner); _setupText = FindViewById <TextView>(Resource.Id.setup); _headerText = FindViewById <TextView>(Resource.Id.connect); _nextButton = FindViewById <Button>(Resource.Id.nextbutton); _button = FindViewById <Button>(Resource.Id.connectbuttonid); _numberPicker = FindViewById <NumberPicker>(Resource.Id.numberPicker); Typeface _montserratTypeface = Typeface.CreateFromAsset(Assets, "MontserratSemiBold.ttf"); Typeface _typeface = Typeface.CreateFromAsset(Assets, "Orbitron.ttf"); _nextButton.SetTypeface(_montserratTypeface, TypefaceStyle.Normal); _button.SetTypeface(_montserratTypeface, TypefaceStyle.Normal); _headerText.SetTypeface(_typeface, TypefaceStyle.Normal); _setupText.SetTypeface(_typeface, TypefaceStyle.Normal); _numberPicker.MinValue = 0; _numberPicker.MaxValue = 120; #endregion var bluetoothDevices = GetBluetoothDevices(); var _adapter = new ArrayAdapter(this, Resource.Layout.SpinnerItem); if (bluetoothDevices != null) { _adapter = new ArrayAdapter <string>(this, Resource.Layout.SpinnerItem, bluetoothDevices); } _spinner.Adapter = _adapter; _button.Click += DisplayToast_Click; _nextButton.Click += GoToControlPage; _numberPicker.ValueChanged += NumberChanged; }
public string Check() { try { if (mBluetoothAdapter == null) { mBluetoothAdapter = BluetoothAdapter.DefaultAdapter; } } catch { } if (!mBluetoothAdapter.Enable()) { var r1 = new BasicReturn() { Flag = false, Code = "DIS", Message = "Bluetooth ไม่ได้เปิด!" }; return(JsonConvert.SerializeObject(r1, Formatting.Indented)); } if (mBluetoothAdapter == null) { var r2 = new BasicReturn() { Flag = false, Code = "NUL", Message = "ไม่พบอุปกรณ์ Bluetooth!" }; return(JsonConvert.SerializeObject(r2, Formatting.Indented)); } //.. foreach (var pairedDevice in BluetoothAdapter.DefaultAdapter.BondedDevices) { Log.Debug("PPX", $"Found device with name: {pairedDevice.Name} and MAC address: {pairedDevice.Address}"); Trace.WriteLine($"Found device with name: {pairedDevice.Name} and MAC address: {pairedDevice.Address}"); } // Good var r3 = new BasicReturn() { Flag = true, Code = "00", Message = "Bluetooth เปิดให้ใช้งานแล้ว" }; return(JsonConvert.SerializeObject(r3, Formatting.Indented)); }
/// <summary> /// /// </summary> public virtual void Open() { if (m_Device != null) { Close(); } #if UNITY_EDITOR || UNITY_STANDALONE BluetoothAdapter adapter = BluetoothAdapter.GetDefaultAdapter(); #elif UNITY_ANDROID using (BluetoothAdapter adapter = BluetoothAdapter.GetDefaultAdapter()) #endif { if (!adapter.IsEnabled()) { return; } m_Device = adapter.GetRemoteDevice(m_Address); // <!-- if (m_Device == null) { if (m_OpenCallback != null) { m_OpenCallback.OnStreamOpenFailure(this); } else { Log.e("BleSerialPort", "No m_OpenCallback"); //BluetoothScannerGUI.RequestAddress(Open); } return; } // --> m_Gatt = m_Device.ConnectGatt( #if UNITY_EDITOR || UNITY_STANDALONE Csr.Bluetooth.Object.NULL_PTR, #elif UNITY_ANDROID Android.App.Activity.currentActivity.m_SealedPtr, #endif false, m_Callback = new BluetoothGattCallback(this) ); } m_BufferRead = new byte[m_SizeRead = 0]; }
public async void SendX(object sender, EventArgs args) { BluetoothAdapter adapterbt = BluetoothAdapter.DefaultAdapter; BluetoothDevice device = (from bd in adapterbt.BondedDevices where bd.Name == list.SelectedItem.ToString() select bd).FirstOrDefault(); btSocket = device.CreateRfcommSocketToServiceRecord(DevUID.Uuid); Console.WriteLine(DevUID.Uuid.ToString()); var outStream = btSocket.OutputStream; var inStream = btSocket.InputStream; Mutex mut = new Mutex(); byte[] Login = { 0x01, 0x30, 0x30, 0x32, 0x3A, 0x20, 0x30, 0x30, 0x34, 0x3A, 0x05, 0x30, 0x31, 0x3B, 0x3F, 0x03 }; byte[] RapX = { 0x01, 0x30, 0x30, 0x32, 0x3C, 0x2E, 0x30, 0x30, 0x34, 0x35, 0x58, 0x09, 0x05, 0x30, 0x32, 0x32, 0x3B, 0x03 }; if (!btSocket.IsConnected) { try { await btSocket.ConnectAsync(); } catch (Exception ex) { Console.WriteLine(ex.Message); } } if (btSocket.IsConnected) { try { outStream.Write(RapX, 0, RapX.Length); } catch (Exception ex) { Console.WriteLine(ex.Message); } //Talk2BTsocket(btSocket, RapX, mut); } }
/// <summary> /// /// </summary> public virtual void OpenDevice(string i_address) { string text = i_address; //m_TxtAddress.text; if (!string.IsNullOrEmpty(text)) { if (m_Adapter == null) { m_Adapter = BluetoothAdapter.GetDefaultAdapter(); m_Cb = new BluetoothGattCallback(this); } #if UNITY_EDITOR_WIN || UNITY_STANDALONE_WIN// Log.i(text, NativeMethods.libcsr_ext_address_to_string_1(m_Adapter.AddressPool[text])); m_Gatt = m_Adapter.GetRemoteDevice(text).ConnectGatt(Csr.Bluetooth.Object.NULL_PTR, false, m_Cb); #elif UNITY_ANDROID m_Gatt = m_Adapter.GetRemoteDevice(text).ConnectGatt(null, false, m_Cb); #endif } }
/// <summary> /// Initializing and modifies objects /// </summary> public void Init() { // Initializing objects m_BtAdapter = BluetoothAdapter.DefaultAdapter; m_BtPairedDevices = FindViewById <Button>(Resource.Id.btPairedDevices); m_BtSearchDevices = FindViewById <Button>(Resource.Id.btSearchDevices); m_Linear = FindViewById <LinearLayout>(Resource.Id.linear); // Setting text color of the buttons m_BtPairedDevices.SetBackgroundColor(Android.Graphics.Color.DeepSkyBlue); m_BtSearchDevices.SetBackgroundColor(Android.Graphics.Color.DeepSkyBlue); m_BtPairedDevices.SetTextColor(Android.Graphics.Color.White); m_BtSearchDevices.SetTextColor(Android.Graphics.Color.White); // Setting activity background m_Linear.SetBackgroundColor(Android.Graphics.Color.White); // Handling search devices button click m_BtSearchDevices.Click += delegate { if (m_BtAdapter.IsEnabled) { StartActivity(typeof(SearchDevices)); } else { Toast.MakeText(this, "Bluetooth has to be turned on", ToastLength.Short).Show(); } }; // Handling paired devices button click m_BtPairedDevices.Click += delegate { if (m_BtAdapter.IsEnabled) { StartActivity(typeof(PairedDevices)); } else { Toast.MakeText(this, "Bluetooth has to be turned on", ToastLength.Short).Show(); } }; }
public async Task PrintPdfFile(Stream files, string deviceName) { try { byte[] SELECT_BIT_IMAGE_MODE = { 0x1B, 0x2A, 33, 255, 3 }; using (BluetoothAdapter bluetoothAdapter = BluetoothAdapter.DefaultAdapter) { BluetoothDevice device = (from bd in bluetoothAdapter?.BondedDevices where bd?.Name == deviceName select bd).FirstOrDefault(); try { using (BluetoothSocket bluetoothSocket = device?.CreateRfcommSocketToServiceRecord( UUID.FromString("00001101-0000-1000-8000-00805f9b34fb"))) { bluetoothSocket?.Connect(); //byte[] buffer = file; // byte[] buffer = Encoding.UTF8.GetBytes("Kiran"); MemoryStream stream = new MemoryStream(); //IMAGE byte[] imageData = GetImageStreamAsBytes(files); stream.Write(imageData, 0, imageData.Length); stream.Write(SELECT_BIT_IMAGE_MODE, 0, SELECT_BIT_IMAGE_MODE.Length); var buffer = stream.ToArray(); bluetoothSocket?.OutputStream.Write(buffer, 0, buffer.Length); bluetoothSocket.OutputStream.Flush(); bluetoothSocket.Close(); } } catch (Exception exp) { throw exp; } } } catch (Exception ex) { } }
public AndroidLeConnectionHelper(AndroidION ion, BluetoothAdapter adapter) { this.ion = ion; this.adapter = adapter; if (Build.VERSION.SdkInt >= BuildVersionCodes.Lollipop) { scanDelegate = new Api21ScanDelegate(adapter); } else if (Build.VERSION.SdkInt >= BuildVersionCodes.JellyBean) { scanDelegate = new Api18ScanDelegate(adapter); } else { // TODO [email protected]: Catch and display user message // No good, the user's device cannot support le connections. throw new Exception("Cannot create AndroidLeConnectionHelper: device version too old"); } }
public iBeaconEventTriggerService() { OS_VER = Build.VERSION.SdkInt; _btManager = (BluetoothManager)Android.App.Application.Context.GetSystemService("bluetooth"); _btAdapter = _btManager.Adapter; if (OS_VER < BuildVersionCodes.Lollipop) { // 4.4參和はこちら _scanCallbackOld = new LeScanCallback(); } else { // 5.0參貧はこちら _scanCallbackNew = new BleScanCallback(); _bleScanner = _btAdapter?.BluetoothLeScanner; } }
public async void Connect(string deviceName) { BluetoothAdapter adapter = BluetoothAdapter.DefaultAdapter; BluetoothDevice device = (from bd in adapter.BondedDevices where bd.Name == "HC-06" select bd).FirstOrDefault(); if (device == null) { System.Diagnostics.Debug.Print("Error device not found. Please make sure you are paired with the BOLUTEK device."); return; } socket = device.CreateRfcommSocketToServiceRecord(Java.Util.UUID.FromString("00001101-0000-1000-8000-00805f9b34fb")); if (!socket.IsConnected) { await socket.ConnectAsync(); } }