Beispiel #1
0
		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();
			}
		}
Beispiel #2
0
        public void StopScan()
        {
            if (!IsScanning)
            {
                return;
            }

            if (IsAfterLollipop)
            {
                Scanner.StopScan(Callback);
            }
            else
            {
                BluetoothAdapter.StopLeScan(LeCallback);
            }

            IsScanning = false;
        }
Beispiel #3
0
        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.");
            }
        }
Beispiel #4
0
    void Awake()
    {
        statusText.text = "Status : ...";

        BluetoothAdapter.enableBluetooth();//Force Enabling Bluetooth


        device = new BluetoothDevice();


        device.Name = "HC-05";

        device.setEndByte(255);

        device.ReadingCoroutine = ManageConnection;

        connect();
    }
Beispiel #5
0
        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;
                }
            }
        }
Beispiel #6
0
        /// <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);
            }
        }
Beispiel #7
0
        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
        }
    }
Beispiel #10
0
        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();
            }
        }
Beispiel #11
0
        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);
        }
Beispiel #13
0
            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;
            }
Beispiel #14
0
        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);
        }
Beispiel #15
0
        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);
        });
Beispiel #16
0
        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;
            }
        }
Beispiel #17
0
        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);
        }
Beispiel #19
0
        /// <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();
                }
            }
        }
Beispiel #20
0
        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);
        }
Beispiel #21
0
        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());
        }
Beispiel #22
0
        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));
    }
Beispiel #24
0
        /// <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);
            }
        }
Beispiel #26
0
        /// <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
            }
        }
Beispiel #27
0
        /// <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();
                }
            };
        }
Beispiel #28
0
        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)
            {
            }
        }
Beispiel #29
0
 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");
     }
 }
Beispiel #30
0
        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;
            }
        }
Beispiel #31
0
        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();
            }
        }