En un anterior artículo os comentaba cual ha sido mi experiencia usando Flutter para desarrollo de apps.
Os voy a contar ahora mi experiencia en la publicación de una de ellas Karate Stars.
Contexto
Antes de contar la experiencia creo que viene bien poner un poco de contexto.
La app ya la tenía desarrollada en Android nativo y publicada en Google Play desde 2016 y tenía más de 10.000 descargas.
En 2021 la reescribo completamente usando Flutter y la publiqué primero en Google Play y no tuve ningún problema.
Aunque esta desarrollada en otra tecnología, mientras tenga el mismo app id y aumente el version code para la tienda es una actualización.
Razones del rechazo de la app
Publiqué por primera vez la app en el Play Store de iOS y fue rechazada a las 24 horas.
el mensaje que recibí por parte del revisor fue el siguiente:
Guideline 4.2.2 - Design - Minimum Functionality
We noticed that your app only includes links, images, or content aggregated from the Internet with limited or no native iOS functionality. Although this content may be curated from the web specifically for your users, since it does not sufficiently differ from a mobile web browsing experience, it is not appropriate for the App Store.
Next Steps
We encourage you to review your app concept and work towards creating an app that offers customers an engaging and lasting experience that also meets the App Store’s high expectations for quality and functionality.
Apple Developer includes a variety of design and development resources. Download iOS templates from Apple UI Design Resources, learn more about crafting intuitive, well-designed apps with the Design Video collection, and review the iOS Human Interface Guidelines for best practices to follow when designing apps for the App Store.
Normalmente este motivo de rechazo de una app suele ser cuando la aplicación consiste en un listado o similar que lleva a visitar a una url usando un webview o browser sin apenas ninguna funcionalidad nativa más que justifique la aprobación de la app.
Funcionalidades de la app
Vamos a ver todas las funcionalidades de la app, para ver si estaban en lo cierto.
La app consiste en una app típica de bottom navigation menus:
El primer tab es un tipico feed de noticias via RSS, donde además se muestrán también posts de instagram y posts de twitter.
En este feed se pueden ver los videos directamente y navegar a un browser integrado en la app para leer la noticia.
El segundo tab es una lista de competidores que se recuperan de un backend.
El tercer tab es un listado de videos que se recuperan de un backend.
Existe un buscador de noticias, competidores y videos. Además los tabs tienen una funcionalidad de filtros.
Existe notificaciones push por tema y desde una página de settings puedes indicar si quieres recibir notificaciones push o no por tema.
Existe una página de detalle de competidor, donde puedes ver la biografia y el palmarés del competidor. Además puedes navegar a otra página de videos asociados a ese competidor.
La página de video muestra el video y también te sugiere videos relacionados, automáticamente se reproduce el siguiente video.
Respuesta al revisor de Apple
Oviamente me sorprendí bastante con el argumento del revisor, así que prepare una respuesta para intentar convencerle de que estaba equivocado.
Por un lado, trate de argumentar todas y cada una de las funcionalidades de la app como en este artículo, tratando de exponer el valor de la aplicación.
Por otro lado trate de hacerle entender que había muchos usuarios en redes sociales que me estaban pidiendo la versión de iOS, lo cual era cierto.
Respuesta que envié:
Sorry but I don't understand your response because the app has much native functionality.
The app contains a tree sub-menu,
* The First tab submenu is an rss feed, where a curated list of rss is received from a backend, from this submenu the user can search news, realize filters and also the user can access click on menu tree dots to another screens inside the app.
* The Second tab submenu contains a list of karate competitors where you can filter the competitors and when you click on a competitor navigate to another screen inside the app.
* The third tab submenu is a curated list of videos where the user can filter the videos by many filter options
This app exists on the Android version (https://play.google.com/store/apps/details?id=com.xurxodev.karatestars) and has more than 10000 downloads.
I have an Instagram account (https://www.instagram.com/karatestarsapp )with 25000 followers and I have a Facebook account (https://www.facebook.com/karatestarsapp) with 33000 followers waiting for iOS version of the app.
Please review again the app navigating for all sections
Aprobación de la app
Una vez escribí mi respuesta, 5 minutos más tarde me llegó una notificación indicando que la app estaba en proceso de revisión de nuevo.
El mensaje del revisor era el siguiente:
Hello,
Thank you for providing this information.
We will continue the review, and we will notify you if there are any further issues.
Best regards,
App Store Review
A los pocos minutos me llegó otra notificación indicando que la aplicación estaba aprobada.
Conclusiones
Cada uno que saque sus propias conclusiones, las mías fueron que no se había dedicado el tiempo necesario para revisar la app y probablemente no se evaluó más alla del primer tab.
No voy a cuestionar a los revisores, la verdad que no me gustaría recibir cientos o miles de apps que revisar al día, pero al fin y al cabo es su trabajo.
Solo el revisor sabe lo que ocurrió pero yo tenía claro que la app tenía funcionalidad nativa y aportaba el valor suficiente para ser aprobada, es lo que intente argumentar.
Espero que esta experiencia pueda servir a alquién de ayuda.