Depois de adiar algumas vezes a implementação de sandboxing na Mac App Store — caso “sandbox” seja um palavrão para você, recomendo a leitura deste artigo —, a Apple exigiu que o recurso fosse implementado por desenvolvedores a partir de 1º de junho deste ano.
Sandboxing cria um ambiente isolado para cada aplicativo, garantindo que eles façam apenas o que foram designados a fazer. Um aplicativo em sandbox não pode manipular outros nem acessar dados deles, e ainda tem o seu acesso controlado e limitado aos recursos do sistema.
Apesar de aumentar a segurança, a obrigação da “caixa de areia” trouxe problemas para muitos aplicativos distribuídos pela loja, justamente cortando o alcance deles. Um deles foi o MPlayerX, já destacado por nós aqui no site.
Atualmente na versão 1.0.16, o app distribuído pela loja está na 1.0.14. Isso porque muitos dos recursos oferecidos nas versões posteriores precisam ser libertados das amarradas do sandbox. E, como o time de aprovação da Apple rejeitou os últimos seis builds enviados, os desenvolvedores do player optaram por deixar a Mac App Store.
O MPlayerX perderia muitos recursos se adotasse sandboxing, como não carregar legendas automaticamente, não rodar o próximo episódio [do vídeo] automaticamente, não salvar as snapshots em outros lugares, etc. Sem esses recursos, MPlayerX seria apenas mais QuickTime X “manco”, o que eu não posso aceitar.
A Mac App Store é um grande canal para que mais pessoas conheçam o MPlayerX, mas há tantos recursos úteis à espera para serem implementados que eu não acho que deveria perder mais tempo com isso.
Está aí mais uma vítima do sandboxing. Sem dúvida o recurso aumenta a segurança e protege usuários contra alguns possíveis males. Mas tudo em excesso atrapalha, seja para um lado ou para o outro. O fato é que, controlando a distribuição — e aprovando tudo que entra na loja antes de ficar disponível para o usuário —, a Apple poderia/deveria ser um pouco mais flexível quanto à implementação do recurso. Funciona assim: comprovou que o recurso é incompatível com o sandboxing e ao mesmo tempo necessário para o funcionamento do app? A Apple vai lá e libera, afinal, ela pode destrinçar todo o código antes de disponibilizá-lo.
Caso ela não faça isso, apps bacanas, como o MPlayerX, serão forçados a procurar um outro meio de distribuição, enfraquecendo o conteúdo da loja — e, consequentemente, prejudicando a nós, consumidores.
[via GigaOM]