मैं एक आईओएस एप्लिकेशन बना रहा हूं जो ब्लूटूथ हेडसेट (बीएलई) से जुड़ता है।आईओएस ब्लूटूथ - जोड़ी अब पॉपअप
- मैं खोज & अपने iPhone करने के लिए हेडसेट कनेक्ट
- मैं अपने iPhone
- मैं अपने आवेदन को खोलने के साथ डिवाइस को युग्मित, यह ब्लूटूथ डिवाइस
- आवेदन मेरे डिवाइस पाता है, यह अनुरोध करता है की खोज करता है इससे जुड़ने के लिए।
- आईओएस संदेश है कि उपयोगकर्ता पूछता बटन दबाने की पॉप अप होता है "जोड़ी अब" डिवाइस
के बाद से मैं पहले से ही अपने आवेदन उपयोग करने से पहले उपकरण युग्मित है से कनेक्ट करने के लिए, वहाँ किसी भी तरह से कनेक्ट करने के लिए है आवेदन के भीतर "जोड़ी अब" पॉपअप के बिना?
--------------- संपादित करें 1 ---------
मैं अपने कोड थोड़ा बदल दिया है। जब मैं पहली बार उससे कनेक्ट होता हूं तो मैं अपने डिवाइस के यूयूआईडी को सहेजता हूं और जब मैं अपने डिवाइस को दोबारा जोड़ता हूं तो एप्लिकेशन को सहेजा गया यूयूआईडी मिल जाता है और "ज्ञात परिधीय" ढूंढने और इसे फिर से कनेक्ट करने का प्रयास करता है। कोड वास्तव में "ज्ञात परिधीय" पाता है लेकिन जब मैं इसे फिर से कनेक्ट करने का प्रयास करता हूं, तो यह फिर से जुड़ने के लिए कहता है। डिवाइस रीकनेक्ट होने पर "जोड़ी अब" पॉपअप से बचने का कोई तरीका है?
स्निपेट्स:
-(void) connectToPeripheral : (CBPeripheral*) peripheral {
[self.centralManager stopScan];
self.peripheral = peripheral;
peripheral.delegate = self;
[self.centralManager connectPeripheral:peripheral options:nil];
self.peripheral = peripheral;
}
-(void) searchForDevices {
// Scan for all available CoreBluetooth LE devices
if (self.centralManager == nil) {
CBCentralManager *centralManager = [[CBCentralManager alloc] initWithDelegate:self queue:nil];
self.centralManager = centralManager;
}
//check if previous peripheral exists
NSArray *knownPeripherals = nil;
NSUserDefaults *defaults = [NSUserDefaults standardUserDefaults];
NSString* knownPeripheralID = [defaults stringForKey:@"knownPeripheralID"];
if (knownPeripheralID != nil) {
self.connectedPeripheralUUID = [[NSUUID alloc] initWithUUIDString:knownPeripheralID];
knownPeripherals = [self.centralManager retrievePeripheralsWithIdentifiers:[NSArray arrayWithObjects:self.connectedPeripheralUUID, nil]];
}
if (knownPeripherals != nil && [knownPeripherals count] > 0) {
NSLog(@"knownPeripherals Peripherals");
CBPeripheral *foundPeripheral = [knownPeripherals objectAtIndex:0];
[self connectToPeripheral:foundPeripheral];
} else {
NSArray *connectedPeripherals = [self.centralManager retrieveConnectedPeripheralsWithServices:[NSArray arrayWithObjects:UUID_SERIAL_SERVICE_STR, nil]];
NSLog(@"Connected Peripherals");
if (connectedPeripherals != nil && [connectedPeripherals count] > 0) {
} else {
[self.centralManager scanForPeripheralsWithServices:nil options:nil];
}
}
}
आप कोड आप अपने आवेदन में उपयोग कर रहे हैं खोजने के लिए और डिवाइस से कनेक्ट करने दिखा सकते हैं? – Paulw11
@ Paulw11 कृपया अभी जांचें – Panos
मेरे पास ब्लूटूथ ऐप है लेकिन मैंने कभी भी इस जोड़े को पॉपअप नहीं देखा है? क्या आप अनजाने में एक चेतावनी फेंक रहे हैं? हो सकता है कि अगर आपने किसी उदाहरण या कुछ से कुछ कोड कॉपी किया है? – Braains