Verifique por "Release Build" em tempo de execução

Estou criando um .framework (ou uma biblioteca estática) para um componente que desenvolvi e que gostaria de vender para terceiros.

Eu estava planejando adicionar algum código para proteger a estrutura contra reutilização, redistribuição ou revenda não autorizada.

Acho que uma boa maneira de conseguir isso seria pedir ao comprador que me diga qual é o ID do pacote do aplicativo que usará a estrutura, salve-o na estrutura como uma propriedade NSString e crie um método que verifique em tempo de execução se o ID do pacote do aplicativo que está usando a correspondência de estrutura ou não.

No entanto, gostaria também de disponibilizar o framework para tentar de graça. Portanto, desejo ativar a verificação de ID somente quando o aplicativo contêiner for compilado no modo liberado ou quando o aplicativo estiver sendo executado no dispositivo do usuário final, fora da caixa de proteção de desenvolvimento.

É claro que não posso usar nenhum método que dependa de variáveis ​​ou macros definidas no arquivo de projeto, porque elas seriam muito fáceis de explorar. Eu preciso fazê-lo em tempo de execução ... e sem qualquer ação necessária pelo comprador.

Existe uma maneira de verificar em tempo de execução se um aplicativo está sendo executado na caixa de proteção do desenvolvedor ou não? Ou se um aplicativo foi criado com o perfil de compilação de lançamento?

Obrigado!

questionAnswers(1)

yourAnswerToTheQuestion