iPhone personalizado controles da câmera (não usando UIImagePickerController)

StackOverflow https://stackoverflow.com/questions/561868

  •  05-09-2019
  •  | 
  •  

Pergunta

Embora eu entenda que para que um aplicativo para iPhone para ser aceito na App Store, uma exigência é que as bibliotecas única documentados estão a ser utilizados.

Se este for o caso, como certas aplicações, tais como "Night Camera" e "Camera Plus" usando um controle câmera que parece ser algo diferente do contido dentro UIImagePickerController?

Já ouvi de alguns casos em que um desenvolvedor tem sido dado acesso "especial" para determinados cabeçalhos que permitem recursos que de outra forma seriam impossíveis se constrangido a usar apenas as bibliotecas documentadas. No entanto, dada a forma como opaco o processo de seleção de aplicação é para a App Store, eu preferiria ficar com o que é recomendado em vez de me arriscar.

Qualquer um cuidado para lançar um pouco mais luz sobre isso?

Foi útil?

Solução

Você pode querer verificar para fora um classdump de cabeçalhos quadro privadas da Apple. Executar este script perl:

http: // ArsTechnica .com / maçã / notícias / 2008/11 / despejo-the-iphone-2-2-frameworks.ars

e navegue até o diretório PhotoLibrary sob PrivateFrameworks. Algumas das aulas de aqui olhar muito promissor para acesso de câmera direto.

Usando a API não documentada poderia prejudicar suas chances de passar através da App Store, mas é tudo muito subjetivo - Se o seu produto é bom, maçã provavelmente vai deixá-lo deslizar completamente. Eu recomendo fazer amigos com um evangelista desenvolvedor na Apple.

Outras dicas

O UIImagePickerController é uma subclasse UIViewController que gere uma hierarquia vista. Você é livre para brincar com a hierarquia de exibição, como os aplicativos são, mas é arriscado, considerando que a Apple não documentá-lo e pode alterá-lo em qualquer actualização do sistema operativo.

Eu não ouvi de ser alguém dado acesso especial para bibliotecas, mas eu li que há um menor distinção entre classes e métodos ilegais e estruturas privadas. aulas indocumentados são uma área cinzenta, mas estruturas privadas definitivamente não são permitidos.

A explicação simples é que os aplicativos na loja não devem usar APIs não suportados, mas isso não é verificada de forma consistente. Os aplicativos que você mencionou estão usando sem suporte funções / classes / métodos ou então estão jogando com o hierarchy-- vista que é a própria situação irregular embora possa ser feito com APIs padrão.

Você poderia fazer o que eles fazem, e tomar as suas chances com ela. Basta estar ciente dos riscos. Seu aplicativo pode (a) ser rejeitada a partir da loja, (b) ser aceito, mas depois inicializado (isto aconteceu para uso API sem suporte), (c) ser aceito e não inicializado mas quebrar na próxima vez que a Apple tem uma nova atualização de software iPhone (desde APIs ou ver hierarquias sem suporte podem mudar sem aviso prévio). Ou você pode ter sorte e ter nada disso acontecer.

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top