Cómo pedir a los usuarios que hagan valoraciones de tu app en el App Store con SwiftUI
Tener una buena valoración en el App Store te ayudara a destacar más entre los millones de aplicaciones que hay. Es por eso que puedes controlar desde dentro de tu aplicación, cuándo mostrar un Alert para que valoren tu aplicación, y es usando el requestReview
Tabla de contenido
Hoy en SwiftBeta vamos a ver un tip muy útil para que puedas añadir a tu app, consiste en pedir a tus usuarios que valores tu aplicación. Lo típico que les pides que la valoren con estrellas, esto es muy útil para tener más presencia dentro del App Store, y pedirlo tan solo son 3 líneas de código que puedes añadir a tu app desde hoy mismo.
Creamos proyecto en Xcode
Lo primero de todo que vamos hacer es crear un proyecto en Xcode, en este caso es importante que no estemos usando la Beta de Xcode o cualquier versión iOS que aún esté en Beta, en mi caso voy a usar Xcode 14, y iOS 16. Una vez tenemos esto claro, vamos a continuar, al crear la app es muy importante especificar que la Interface es SwiftUI. Y una vez creada la app, vamos a nuestra vista ContentView donde vamos a añadir un Button.
Antes de continuar, si quieres apoyar el contenido que subo cada semana, suscríbete. De esta manera seguiré publicando contenido completamente grautito en Youtube.
Este Button nos va a servir para lanzar la acción de que un usuario de una puntuación a nuestra app. Primero vamos a modificar el código de ejemplo de ContentView:
struct ContentView: View {
var body: some View {
VStack {
Image(systemName: "swift")
.font(.system(size: 80))
.foregroundStyle(.tint)
.tint(.orange)
Text("¡Suscríbete a SwiftBeta! 🚀")
}
.padding()
}
}
A continuación creamos el Button, con un texto de "Puntúa la App":
struct ContentView: View {
var body: some View {
VStack {
Image(systemName: "swift")
.font(.system(size: 80))
.foregroundStyle(.tint)
.tint(.orange)
Text("¡Suscríbete a SwiftBeta! 🚀")
Button {
// TODO
} label: {
Text("Review App")
}
.buttonStyle(.borderedProminent)
}
.padding()
}
}
Hasta aquí todo muy sencillo, ahora vamos a ver lo sencillo que es pedir a un usuario que puntue nuestra app. Para hacerlo vamos a usar un Property Wrapper llamado @Environment. Este property wrapper tiene una serie de valores que podemos utilizar, como el que vimos del Dark Mode en uno de los anteriores videos del canal. Pues bien, vamos hacer exactamente lo mismo, pero en lugar de usar colorScheme, esta vez vamos a usar otro valor llamado requestReview.
Primero usamos el Property Wrapper @Environment con el valor requestReview:
struct ContentView: View {
@Environment(\.requestReview) var requestReview
...
}
Al hacerlo obtenemos un error, debemos importar el framework StoreKit. Y a continuación podemos usar directamente esta propiedad cuando el User pulse nuestro Button, podemos hacerlo de la siguiente manera:
import StoreKit
struct ContentView: View {
@Environment(\.requestReview) var requestReview
var body: some View {
VStack {
Image(systemName: "swift")
.font(.system(size: 80))
.foregroundStyle(.tint)
.tint(.orange)
Text("¡Suscríbete a SwiftBeta! 🚀")
Button {
requestReview()
} label: {
Text("Puntúa la App")
}
.buttonStyle(.borderedProminent)
}
.padding()
}
}
Si probamos en el Canvas o al compilar nuestra app, vemos que efectivamente aparece una nueva vista indicando que demos una valoración a la app.
Ahora ya depende de dónde quieres añadir este Button, en una vista en concreto o en un formulario, o también puedes controlar ciertas acciones, como por ejemplo, cuando un user entre a la app 5 veces, entonces le mostraré este mensaje para que de una review de la app. Es importante no abusar de este popup y mostrarlo en partes o en momentos estratégicos.
Conclusión
Hoy hemos aprendido a cómo mostrar un popup a los users para que puedan dar una valoración de nuestra app. Con muy pocas líneas de código hemos añadido esta funcionalidad para que nos ayude a tener más presencia dentro del AppStore
Y hasta aquí el video hoy!