Muy buenas, me llamo Miguel y esta vez les traigo otro nuevo tutorial.
Una de las muchas características nuevas que se han lanzado con Android Q son las burbujas de notify. Es posible que recuerde los Chatheads de Facebook de hace unos años; es posible que incluso haya querido implementarlos o ya haya implementado algún tipo de variante utilizando el permiso SYSTEM_ALERT_WINDOW
.
Las burbujas de notificación están destinadas a proporcionar la misma funcionalidad de forma nativa sin utilizar un permiso tan completo. La documentación describe estas notificaciones de burbujas de la siguiente manera:
Las burbujas están integradas en el sistema de notificaciones. Flotan sobre el contenido de otras aplicaciones y siguen al usuario a donde quiera que vaya. Las burbujas se pueden expandir para revelar la funcionalidad y la información de la aplicación, y se pueden contraer cuando no se utilizan.
Implementación de burbujas con Notify
Para cualquiera que haya trabajado con notificaciones, decir que son bastante complejas es bastante generoso, desde los canales de notificación hasta la prioridad de notificación y la compatibilidad general de la API, las notificaciones de Android son un gran trabajo.
Con el lanzamiento de Android Q, echemos un vistazo rápido a cómo podemos generar fácilmente algunas burbujas de notificación usando Notify.
Para empezar, primero debes tener una versión de Android Q, ya sea en un dispositivo o en el emulador. Navegue a la Configuración del desarrollador y habilite la configuración de Burbujas.
// Project level build.gradle // ... repositories { maven { url 'https://jitpack.io' } } // ... // Module level build.gradle dependencies { // Use the latest development branch implementation "io.karn:notify:develop" }
Además, no olvide configurar su targetSdkVersion
y compileSdkVersion
a 29
.
Ahora que hemos agregado Notify al proyecto, podemos sumergirnos en la creación de las burbujas de notificación. Cuando se expanden, las burbujas de notificación pueden mostrar una actividad al usuario.
Podemos crear una actividad simple de la siguiente manera:
class BubbleActivity : AppCompatActivity() { override fun onCreate(savedInstanceState: Bundle?) { super.onCreate(savedInstanceState) setContentView(R.layout.activity_bubble) } }
Una actividad de muestra que se mostrará cuando se expanda la burbuja.
A continuación, actualizamos el AndroidManifest.xml
para permitir que la burbuja de notificación represente la actividad correctamente, tendrá que hacer esto para cualquier actividad que desee mostrar como una burbuja.
<?xml version="1.0" encoding="utf-8"?> <manifest ...> <application ...> <activity android:name=".BubbleActivity" ... <!-- Add the three lines below to the activity being shown --> android:allowEmbedded="true" android:documentLaunchMode="always" android:resizeableActivity="true" /> </application> </manifest>
¡Excelente! Ahora que su actividad está lista, podemos construir la notificación y mostrarla, Notify se encargará de todo lo que hay debajo del capó para asegurarse de que pueda mostrar la notificación correctamente (incluida la creación y el uso del canal de notificación, y si desea cambiar eso, puede).
Notify.with(context) // Defines the content of the Notification .content { title = "New dessert menu" text = "The Cheesecake Factory has a new dessert for you to try!" } // Bubblize the Notfication! .bubblize { // Create bubble intent val target = Intent(context, BubbleActivity::class.java) val bubbleIntent = PendingIntent.getActivity(context, 0, target, 0 /* flags */) // Set the image for the Bubble bubbleIcon = IconCompat.createWithResource(context, R.drawable.ic_app_icon) // Set the activity that is being shown when the Bubble is expanded. targetActivity = bubbleIntent } .show()
¡Eso es! Una vez que se ejecute el fragmento de arriba, ¡tendrás una notificación de burbuja increíble para jugar!
Notify te permite hacer esto y mucho más, el objetivo es encargarte de crear y mostrar notificaciones para que puedas volver al trabajo de desarrollo que más te importa.
No debería tener que luchar con las API para que las cosas funcionen y Notify está diseñado para eliminar parte de ese dolor.
Si tiene alguna pregunta o comentario, ¡asegúrese de dejarlos a continuación!
Gracias por leer este tutorial.
Añadir comentario