Je suis confronté à un problème de plantage sur iOS CoreBluetooth [CBPeripheralManager AddService:]
.Échec d'assertion iOS crash sur CBPeripheralManager AddService:
Apparaît en raison d'un échec d'assertion dans la méthode addService
. J'ai essayé de nombreuses façons, je n'arrive toujours pas à comprendre le problème. D'après ce que j'ai compris, il ne s'agit pas d'une exception de pointeur nul, car j'ai déjà testé la transmission d'une valeur nulle en tant que paramètre AddService, ce qui génère un problème différent.
J'ai implémenté tous les délégués de CBPeripheralManager y compris les délégués CBCentral.
En général, cela fonctionne très bien. Normalement, je ne peux pas reproduire ce problème avec intention. Mais cela se produit soudainement.
Veuillez nous aider . journal crash:
0 CoreFoundation 0x18b3cafe0 __exceptionPreprocess + 124
1 libobjc.A.dylib 0x189e2c538 objc_exception_throw + 56
2 CoreFoundation 0x18b3caeb4 +[NSException raise:format:arguments:] + 104
3 Foundation 0x18be62720 -[NSAssertionHandler handleFailureInMethod:object:file:lineNumber:description:] + 112
4 CoreBluetooth 0x1922ab420 -[CBPeripheralManager addService:] + 820
5 MyApp 0x10110e1f4 -[MyPeripheralManager addServiceIntoPeripheralManager] (MyPeripheralManager.m:202)
code Snipet:
-(void)addService{
if (!isServiceAdded) {
CLLog("Add Service timer started");
[backgroundTaskManager manageBackgroundRunningTask];
/*
AddService will be called after 5 seconds
when application launching finished or iOS BT on
*/
[self performSelector:@selector(addServiceIntoPeripheralManager) withObject:self afterDelay:SERVICE_ADDING_DELAY]; // 5 secs
} else {
CLDbg("Service already added");
}
}
- (void)addServiceIntoPeripheralManager{
CLLog("Add Service timer expired");
CLDbg("Service Adding: %@", [UUIDString]);
[cbPeripheralManager addService:Service];
}
Merci à l'avance.
part du code que vous essayez –
s'il vous plaît partager votre code – Dhiru
l'extrait de code est ajouté, pourriez-vous s'il vous plaît partager la raison derrière ce type d'échec d'assertion. –