Abri um relatório de bug com a Apple: https://bugreport.apple.com/cgi-bin/WebObjects/RadarWeb.woa/19/wo/WBbbbyopNFW8FFUuNSbk0w/10.66
Por favor, me avise se você não conseguir acessá-lo.
Resumo: o depurador XCode não está liberando a porta do servidor de bootstrap
Etapas para reproduzir:
Durante a depuração de um aplicativo iPhone iOS5 no simulador no Xcode 4.2 Build 4D5163b no Lion 10.7.2, uma falha pode às vezes resultar na impossibilidade de iniciar o bugger. Em vez disso, o Xcode produz este erro:
Não foi possível registrar com.MyApp.MyApp com o servidor de bootstrap. Erro: código de erro desconhecido. Isso geralmente significa que outra instância deste processo já estava em execução ou está travada no depurador. Sinal recebido do programa: “SIGABRT”.
Resultados esperados:
deve ser capaz de iniciar o depurador após uma falha.
Resultados reais:
Não é possível iniciar o depurador. A única maneira que descobri de fazer o simulador funcionar novamente é reiniciar o Mac OS.
Regressão:
Observações:
Muitas pessoas estão tendo este problema:
iPhone - erro estranho ao testar no simulador
Não foi possível registrar com o bootstrap Servidor
Bootstrap Erro do servidor no Xcode IPHONE
https://discussions.apple.com/message/10416765?messageID=10416765
Sair do XCode e do Simulador (e garantir que ps -Al | egrep "Xcode | Simulator" não retorne nada) não resolve o problema.
Executar "launchtl bslist | grep MyApp" revela que com.MyApp ainda está registrado no servidor de bootstrap:
$ launchctl bslist | grep MyApp
A com.MyApp.MyApp.UIKit.migserver
A com.MyApp.MyApp
Escrevi um código para encontrar a porta e invalidá-la, mas também falhou:
NSMachBootstrapServer *bsserver = [NSMachBootstrapServer sharedInstance];
NSMachPort *port = (NSMachPort *)[bsserver portForName:@"com.MyApp.MyApp"];
[port removeFromRunLoop:[NSRunLoop currentRunLoop] forMode:<#(NSString *)#>
NSLog(@"port = %@",port);
NSLog(@"port.isValid=%d",[port isValid]);
[port invalidate];
NSLog(@"port.isValid=%d",[port isValid]);