Inicie o auxiliar a partir do aplicativo sandbox

Eu tenho um aplicativo em sandbox. Eu preciso disso para iniciar um aplicativo auxiliar (a partir do pacote do aplicativo principal) toda vez que ele for iniciado. No entanto, isso falha:

<code>NSError *error;
[[NSWorkspace sharedWorkspace] launchApplicationAtURL:helperURL
                               options:NSWorkspaceLaunchDefault
                               configuration:nil
                               error:&error];
</code>

O erro é:

Não foi possível iniciar o aplicativo "Helper" porque está corrompido., NSUnderlyingError = 0x10214c700 "A operação não pôde ser concluída. (Erro OSStatus -10827.)"}

Agora, o erro é enganoso, porque o aplicativo é iniciado corretamente se eu desabilitar o direito à sandbox. Aparentemente, isso é um bug, como relatadoAqui.

Minha pergunta é:Existe uma solução alternativa?

eu poderia usarSMLoginItemSetEnabledcomo descritoAqui:

Passartrue para iniciar o aplicativo auxiliar imediatamente e indicar que ele deve ser iniciado sempre que o usuário efetuar login.false para finalizar o aplicativo auxiliar e indicar que ele não deve mais ser iniciado quando o usuário efetuar login.

Mas não posso usar essa API sem perguntar ao usuário primeiro, devido à Diretriz de revisão da loja virtual 2.26:

Os aplicativos definidos para inicialização automática ou para que outro código seja executado automaticamente na inicialização ou no login sem o consentimento do usuário serão rejeitados

Portanto, usar essa solução alternativa significa pedir ao usuário "É correto iniciar um assistente toda vez que você fizer login? Se não, você não poderá usar este aplicativo!" Claramente, isso não é ideal ...

questionAnswers(2)

yourAnswerToTheQuestion