¿Cómo aprueba apple las aplicaciones? ¿Se ve el código fuente real?¿Apple ve el código fuente real cuando aprueba las aplicaciones?
Respuesta
Si bien ninguno de nosotros tiene acceso al proceso de revisión interna (que parece estar cambiando continuamente), hay algunas cosas que se pueden decir sobre la base de las respuestas que la gente ha recibido.
En primer lugar, Apple no tiene acceso a su código fuente, por lo que no revisan eso. Envía un archivo binario como parte de un paquete de aplicaciones, junto con sus otros recursos de aplicación.
Lo hacen, sin embargo, parece que escanear binario de la aplicación de ciertos símbolos que indican el uso de APIs privadas. Varias aplicaciones comenzaron a fallar después de las actualizaciones del sistema operativo de iPhone porque usaban estas API privadas, por lo que Apple ha estado tomando medidas enérgicas al respecto.
Hay un montón de aplicaciones en la tienda que tiene pérdidas de memoria u otros problemas de rendimiento. Sé que he enviado versiones de mis aplicaciones que tenían fugas sutiles (ya que se corrigieron) y no tuve problemas con la revisión. Por lo tanto, no parece que realicen ningún tipo de prueba o perfil de rendimiento.
El único lugar donde una pérdida de memoria provoca un problema haciendo crítica es cuando esa pérdida de memoria se pone tan mal que la aplicación se bloquea cuando el revisor lo está probando. Si su aplicación falla en algún momento durante el proceso de revisión, será rechazada.
Más allá de eso, tienen una lista de elementos de la interfaz de usuario que revisan el uso adecuado de (no hay selecciones persistentes en el vector de vista de filas, etc.). Si su aplicación se desvía significativamente del Human Interface Guidelines al usar estos elementos de IU estándar, puede ser rechazado.
Apple es muy cuidadoso acerca de los derechos de autor, en particular con sus propias imágenes y obras de arte, por lo que puede tener problemas si se utiliza material protegido con derechos de manera incorrecta.
La mayor parte de los motivos de rechazo que se enfrentarán son evitables al hacer que su aplicación estable y siguiendo las directrices de la plataforma, pero algunos no lo son. Ciertas clases de aplicaciones han sido rechazadas debido a su uso previsto, y de nuevo las clases de aplicaciones que están permitidas en la tienda cambian con regularidad. Esto puede agregar frustración e incertidumbre al tratar con App Store, pero la gran mayoría de los tipos de aplicaciones nunca tendrán problemas (como se puede ver en la diversidad de aplicaciones actualmente disponibles).
Gran respuesta. Gracias – jarryd
Esto está mal. Apple tiene acceso a su código fuente: cuando envía la aplicación, las herramientas de desarrollador de Apple las analizan en su máquina y las envían a Apple antes de que se envíe la aplicación. – MacMark
@MacMark - No, no es así, y eso no es lo que sucede. Construyes un binario en tu máquina y les envías solo ese binario. Los binarios compilados a partir de Objective-C pueden retener símbolos dentro de ellos para los métodos que invocan, por lo que pueden ser objeto de dumping y escaneados. Además, es posible que Apple pueda ejecutar su binario dentro de sus propios marcos especialmente construidos y ver cuándo ese binario llama a cosas que no debería. Teniendo en cuenta los informes de falsos positivos de personas con métodos que coinciden con los privados de Apple, el enfoque de escaneo de símbolos es el más probable. –
No, sólo tienen acceso al código binario que se le envía.
Pueden funcionar esto a través de los perfiladores de detección de fugas de memoria y similares.
No tienen acceso a su fuente; no es parte de lo que les envíes. Probaron el binario que les enviaste por fugas y cosas por el estilo. Creo que también verifican qué datos envía tu aplicación para asegurarte de que no está haciendo nada grave (enviar contraseñas o cosas por el estilo).
de Apple no se preocupa por las fugas e información de perfiles para su aplicación. El sistema operativo puede matar tu aplicación si eso se sale de control. Lo que realmente hacen es ejecutar manualmente su aplicación y comprobar si sigue algunas de las pautas de las manzanas. En un proceso automatizado, extraen símbolos, selectores y cadenas de su binario y los verifican para el uso de API privadas.
Es posible que desee probar nm -u
en su binario (simulador).
tratan de utilizar otool -L binaria a sí mismo y se puede ver de inmediato si se acostumbró un marco API privada ...
Ellos sólo reciben su archivo binray de IPA solamente. Pueden obtener parte de su archivo de recursos mientras extraen ipa. Pueden encontrar todas las URL que usaste en el servicio web o en la solicitud de URL. Nada más que esto.
- 1. Cuando envío mi aplicación a la tienda de aplicaciones de Apple, ¿ven mi código fuente?
- 2. Descargar el código fuente del sitio web de Apple
- 3. Código fuente para aplicaciones de Android?
- 4. ¿Apple rechaza las aplicaciones de "shell web móvil"?
- 5. ¿Real-world Complex Rails aplicaciones?
- 6. Opensource del mundo real C# aplicaciones que muestran buen código
- 7. Aplicaciones de Jython en el mundo real
- 8. ¿Cómo se ve el código cuando no usa excepciones para controlar el flujo?
- 9. QUnit con Ajax, QUnit aprueba las pruebas que fallan
- 10. Cómo establecer classpath cuando uso javax.tools.JavaCompiler compile el código fuente?
- 11. Imprimir flujo de código fuente cuando se ejecuta el programa
- 12. Aplicaciones de ayuda de firma de código para Apple Sandbox en OSX
- 13. Cargador de aplicaciones Apple: cómo cambiar el ID de Apple que se utiliza?
- 14. Muestras/widgets Monodroid con el código fuente
- 15. Consola del cargador de aplicaciones Apple
- 16. No se puede ejecutar el código fuente de Linphone-android en el dispositivo real
- 17. ¿Qué son las aplicaciones del rendimiento en la vida real?
- 18. Escritura de aplicaciones para Apple TV 2G
- 19. ASP.NET: ¿Qué se ve afectado exactamente cuando JavaScript está desactivado?
- 20. ¿Código incorrecto en el código de ejemplo de Apple?
- 21. ¿El pasajero de Fusion no ve las variables de entorno?
- 22. Aplicaciones web para la discusión del código fuente
- 23. ¿Código fuente de aplicaciones web funcionales bien diseñadas?
- 24. Opciones para colapsar YAML cuando se ve?
- 25. ¿Se puede usar el Id de Apple sin aplicaciones de Apple?
- 26. ¿Cuál es el identificador de paquete de las aplicaciones predeterminadas de apple en iOS?
- 27. Código de la tienda de aplicaciones ofuscación?
- 28. ¿Encontrar el código fuente para las funciones incorporadas de Python?
- 29. ¿Cómo compartir el código entre las aplicaciones node.js?
- 30. código Java: buscando el código fuente
Más información sobre el proceso de aprobación: http://images.pcworld.com//news/graphics/165880-appstorecomic_original.jpg – iwasrobbed
Eso es divertido,: D pero inútil. Entonces, ¿debería descartar mis ideas y hacer una linterna que falle en el lanzamiento? : P – jarryd