मैंने पहले ब्लूटूथ डिवाइस के साथ जोड़ा है जो आरएफसीओएमएम का समर्थन करता है। जब मेरा ऐप खोला जाता है तो मैं लगातार RFCOMM खोलकर डिवाइस से कनेक्ट करने का प्रयास करता हूं। जब डिवाइस रेंज में आता है तो इस तरह मेरा ऐप स्वचालित रूप से कनेक्ट होता है।विंडोज 10 - जब ब्लूटूथ डिवाइस रेंज में है तो कैसे पता लगाएं
deviceInfoCollection = await DeviceInformation.FindAllAsync(RfcommDeviceService.GetDeviceSelector(RfcommServiceId.SerialPort));
LogData(String.Format("Number of mldp devices is {0}", deviceInfoCollection.Count));
foreach (DeviceInformation deviceInfo in deviceInfoCollection)
{
LogData(String.Format("ID:{0}, NAME:{1}", deviceInfo.Id, deviceInfo.Name));
}
फिर एक टाइमर पर इस चलाएँ:
try
{
// The first time this method is invoked by a store app, it should be called
// from a UI thread in order to display the consent prompt
// https://msdn.microsoft.com/en-us/windows.devices.bluetooth.rfcomm.rfcommdeviceservice.fromidasync
RfcommDeviceService rfcommService = await RfcommDeviceService.FromIdAsync(deviceInfo.Id);
LogData(String.Format("ID:{0}, NAME:{1}", deviceInfo.Id, deviceInfo.Name));
}
catch (Exception)
{
LogData(String.Format("Can not request rfcomm service from device ID:{0}, NAME:{1}", deviceInfo.Id, deviceInfo.Name));
}
वहाँ क्वेरी करने के लिए जब डिवाइस बल्कि कनेक्ट करने के लिए कोशिश कर रहा से, सीमा में है कोई तरीका है? जब डिवाइस रेंज में होता है तो मैं केवल कनेक्शन का प्रयास करना पसंद करूंगा।