Publicado por Morgan Dollard, gerente de producto de Google Play Games

Con jugadores de plataformas móviles en 190 países, Google Play Games es una comunidad de juegos diversa y llena de vida, y el entusiasmo de sus jugadores es más grande que nunca. Durante el año pasado, la cantidad de juegos que se instaló más de 1 millón de veces experimentó un aumento del 50 por ciento.

Publicado por Morgan Dollard, gerente de producto de Google Play Games

Con jugadores de plataformas móviles en 190 países, Google Play Games es una comunidad de juegos diversa y llena de vida, y el entusiasmo de sus jugadores es más grande que nunca. Durante el año pasado, la cantidad de juegos que se instaló más de 1 millón de veces experimentó un aumento del 50 por ciento.

Hoy, en nuestro Día anual del desarrollador, celebrado en la conferencia de desarrolladores de juegos, anunciamos nuevas herramientas de plataformas y anuncios para que los desarrolladores, sin importar su alcance, lleguen a este público mundial y aceleren el crecimiento de sus negocios de juegos. A continuación, podrás ver toda la variedad de funciones que permitirán a los desarrolladores de juegos crear sus aplicaciones, hacer crecer su base de usuarios y obtener más ingresos.







Estamos mejorando Google Play Games para los jugadores


En febrero, presentamos las Id. de jugadores para que todos pudieran crear roles de juego. También simplificamos el proceso de inicio de sesión en Google Play Games para que los jugadores pudieran reanudar sus juegos de manera más rápida. A su vez, estamos trabajando en mejoras del producto para que Google Play Games sea un poco más social y divertido. Con esto, habrá más jugadores atraídos que usarán tu juego en forma más prolongada. Un ejemplo de esto es el lanzamiento de Gamer friends (amigos jugadores, próximamente), un sistema que permite a tus jugadores agregar amigos e interactuar con ellos desde la aplicación de Google Play Games (sin necesitar una cuenta de Google+).

También lanzaremos Indie Corner (el rincón independiente), una nueva colección de Google Play en la que se destacarán fabulosos juegos creados por desarrolladores independientes. Puedes nominar tu fabuloso juego independiente para que se incluya en g.co/indiecornersubmission. Seleccionaremos los mejores juegos para exhibirlos. Tendremos en cuenta la calidad de la experiencia que ofrezcan y el ejemplo transmitido en términos de uso de Google Play Games Services.






Haz crecer tu juego con las poderosas funciones nuevas de Google Play Game Services


En enero, agregamos funciones a Player Analytics, la herramienta de informes gratuita de Google Play Game Services que permite comprender la manera en que los jugadores progresan, gastan su dinero y migran. Actualmente, accedimos a una vista previa de algunas futuras herramientas nuevas que estarán disponibles en los próximos meses. Entre ellas se incluyen las siguientes:

  • Administración de parámetros de juegos: con la administración de parámetros de juegos, podrás actualizar parámetros relacionados con los juegos y con sus aspectos económicos sin necesidad de realizar cambios en los APK o reenviar tu aplicación. Podrás optimizar productos y monedas virtuales a través de la Consola para desarrolladores o la API para desarrolladores de Google Play.

Administración de parámetros de juegos de la Consola para desarrolladores de Google Play
  • API de grabación de video: podrás agregar fácilmente grabaciones de video a tu aplicación y permitir que los usuarios compartan los suyos con amigos en YouTube mediante una serie de simples pasos. También agregaremos funcionalidades de transmisión en tiempo real para que tus seguidores transmitan sus experiencias de juego en YouTube mientras se desarrollan.

  • Análisis predictivo: la API de Player Stats ahora viene con análisis predictivo para ayudarte a identificar los grupos de jugadores que pueden gastar dinero o migrar. También agregaremos predicciones nuevas para calcular los posibles gastos mensuales de un jugador y la probabilidad de que tenga un nivel de consumo elevado. Esto te permite adaptar las experiencias en función de jugadores como estos, para intentar que sus gastos o su captación aumenten. Obtén más información sobre la API de Player Stats



  • “El hecho de no mostrar anuncios a los usuarios con probabilidades de gastar dinero 
    aumentó las transacciones de CDA en un 15 %”. – Avetis Zakharyan, director ejecutivo de Underwater Apps






Nuevos formatos y perfilamientos de anuncios para encontrar, retener y monetizar jugadores valiosos


Es importante promocionar tu juego y hacer crecer tu público, pero la misma importancia tiene llegar al público adecuado para tu juego, a jugadores que deseen abrirlo una y otra vez. Por ello, hoy revelamos nuevas funciones que permiten llegar con mayor facilidad, y a escala, al público correcto.
  • Anuncios de ejecución de versiones de prueba para búsquedas: en las próximas semanas, lanzaremos un nuevo método para que los usuarios prueben tu juego cuando realicen una búsqueda de juegos en Google a través de un nuevo formato de anuncios, los anuncios de ejecución de versiones de prueba para búsquedas. Al tocar “Probar ahora”, un usuario puede usar tu juego durante un plazo de hasta 10 minutos y luego descargar la versión completa si lo desea. Estos anuncios se mostrarán a usuarios de teléfonos inteligentes en redes WiFi. A través de este formato, puedes atraer a usuarios calificados que puedan continuar usando tu juego después de la instalación.

Anuncio de ejecución de versiones de prueba para búsquedas de SGN aplicado a Panda Pop
  • Anuncios de video en formato vertical: Más del 80 % de los videos y las vistas de dispositivos móviles de la Red de Display de Google provienen de dispositivos sostenidos en sentido vertical, pero a menudo estos videos se destinan a visualizaciones en sentido horizontal. En las próximas semanas, lanzaremos anuncios de video en formato vertical para ofrecer una experiencia inmersiva de video vertical en pantalla completa. Los desarrolladores han observado un incremento significativo en las tasas de clics y conversión, lo cual ha reducido los costos por instalación y aumentado el número de instalaciones.
  • Perfilamiento para usuarios activos de juegos: En las próximas semanas, implementaremos una nueva clase de perfilamiento para aplicaciones de Android. Te permitirá mostrar anuncios a quienes hayan dedicado más de 30 minutos a un juego o hayan usado un juego integrado de Google Play Games durante los últimos 30 días.





Logra mayores ingresos en tu juego con AdMob


AdMob permite a los desarrolladores de todo el mundo maximizar sus ingresos a través de la publicidad directa en la aplicación. En la conferencia de desarrolladores de videojuegos (GDC), también anunciamos una nueva manera de obtener mayores ganancias a través de AdMob Mediation. La publicidad con premios es una forma popular de monetización para juegos; los usuarios tienen la opción de interactuar con anuncios a cambio de un premio en la aplicación. AdMob Mediationte permitirá monetizar fácilmente tus aplicaciones mediante anuncios de video con premios de varios proveedores de anuncios. Entre las redes y plataformas compatibles se encuentran AdColony, AppLovin, Chartboost, Fyber, Upsight y Vungle. Constantemente se agregan más plataformas.

Puedes obtener más información acerca de esto y de todos nuestros anuncios en el blog Dentro de AdWords.



Esta es solo la primera parte de lo que tenemos planeado para 2016. Esperamos que puedas usar estas herramientas para mejorar tu juego, atraer a tu audiencia, hacer crecer tu negocio y aumentar tus ingresos.

Publicado por Matteo Vallone, Administrador de desarrollo de negocios de Google Play

(Para llegar a más desarrolladores de aplicaciones y ayudarlos a lograr negocios exitosos en Google Play, esta publicación vio la luz por ...
Publicado por Matteo Vallone, Administrador de desarrollo de negocios de Google Play

(Para llegar a más desarrolladores de aplicaciones y ayudarlos a lograr negocios exitosos en Google Play, esta publicación vio la luz por primera vez en The Next Web; Ed).

Cuando se trata de alcanzar el éxito, hay mucho en común entre los negocios de las aplicaciones y los juegos “freemium”. Sin embargo, los usuarios están más acostumbrados a pagar por juegos que por aplicaciones, un fenómeno asociado con la historia de las consolas de videojuegos tradicionales. A su vez, en los juegos móviles también se pueden ofrecer fácilmente “productos virtuales” con varios precios para abarcar las diferentes capacidades de compra. Esto significa que los desarrolladores de juegos han tenido muchísimas oportunidades de aprender a mejorar la incorporación, la conversión y, en última instancia, el valor de duración (LTV) de los usuarios. Entonces, ¿qué pueden aprender los desarrolladores de aplicaciones de los desarrolladores de juegos? A continuación, se ofrecen prácticas recomendadas y datos de desarrolladores exitosos de juegos que pueden implementarse hoy en muchas aplicaciones.

Impulsar el éxito de las aplicaciones al estilo de los desarrolladores de juegos:

1. Optimizar la retención antes de invertir en la adquisición


La retención es lo más importante y la retención impulsa la conversión. Para los desarrolladores de juegos, la retención es el patrón de medida clave de la calidad de un juego y de la atracción que genera o no en los jugadores.

La mayoría de los desarrolladores de juegos realizan “prelanzamientos” para comunidades de pruebas beta o mercados de prueba. Durante esta etapa, el juego se somete a ajustes para optimizar la retención centrando la atención en áreas específicas, como el uso completo de tutoriales, la dificultad de los niveles y la conversión. Posteriormente, los desarrolladores pueden realizar un seguimiento de la retención usando los informes de cohortes de Google Analytics. Una vez que la retención es satisfactoria, pueden emprender el lanzamiento completo y comenzar a invertir en la adquisición de usuarios.

2. Retener usuarios logrando su captación paso a paso


Los primeros siete días posteriores a la instalación son los más críticos para la retención. Los usuarios instalan varias aplicaciones para probarlas y deciden, en los primeros días, las que desean seguir usando. Si logras la retención durante ese período, es más probable que tu aplicación pase a formar parte de la rutina diaria del usuario.

Hay más maneras simples de lograr la captación del usuario progresivamente. Es importante presentar una historia sólida en la que se explique la razón por la cual la aplicación es relevante para el usuario y, al mismo tiempo, mostrarle las funciones claves. Luego se deben disponer las funciones que ofrezcan valor al usuario en forma rápida, de modo que puedan hallarse sin mucho esfuerzo.

Esta no es una receta universal. Para encontrar la solución adecuada, un desarrollador primero debe realizar conjeturas sobre los flujos de usuarios que pueden mejorar la retención y luego pruebas A/B para validarlos o corregirlos. Por ejemplo, un desarrollador podría pensar que introducir el inicio de sesión posteriormente en el flujo de usuarios podría mejorar la retención. A su vez, debe tener en cuenta las métricas de captación a largo plazo para la aplicación (como las fotos cargadas o el número de artículos leídos) y también medir el impacto de los diferentes flujos de incorporación sobre dichas métricas.

En general, estos principios son buenos puntos de partida para comenzar a optimizar la incorporación:
  • Busca maneras de permitir que los usuarios experimenten la aplicación de inmediato en lugar de llevarlos por un camino largo y complejo.
  • Presenta “momentos de activación”, como el registro de una cuenta, la carga de un video o la búsqueda de amigos, en forma gradual.
  • Comienza solicitando una inversión mínima al usuario. Luego, pídele más detalles a medida que sean necesarios para usar las funciones de las aplicaciones.
  • Considera los permisos como un servicio para el usuario. Por ejemplo, si deseas que los usuarios se registren, muéstrales en primer lugar que al dar un toque más personalizado a su experiencia obtendrán un mayor valor de la aplicación.

En este ejemplo, OkCupid probó diferentes flujos de incorporación y descubrió que la versión más atractiva aumentó la retención de siete días en más de un 20 por ciento.

Por último, asegúrate de que el usuario pueda comprender el valor de tu aplicación antes de comenzar a solicitarle pagos. Los desarrolladores de juegos tienen una capacidad especial de permitir que sus clientes prueben gratuitamente la mayoría de las funciones de un producto, o todas ellas, en una cantidad fija de días o sesiones.

Una excelente herramienta para analizar la manera en que la herramienta atrae (o no) a los usuarios es el análisis de flujo de Google Analytics. A través de este informe, un desarrollador puede ver la forma en que los usuarios recorren la aplicación y el punto en el cual la abandonan, a fin de identificar posibles obstáculos.

3. Dirigir las ofertas correctas a los usuarios correctos


Comprender el comportamiento relacionado con compras directas desde la aplicación por parte de los diferentes grupos de usuarios es clave para establecer estrategias que los incentiven a gastar dinero.

Comienza a identificar grupos de usuarios por la manera en que gastan dinero y por la cantidad que probablemente inviertan. Puede ser por grupos etarios, canales que propiciaron la instalación o comportamientos en la aplicación. Usa elgenerador de segmentos de Google Analytics para identificar y definir estos grupos de usuarios. Luego, personaliza las ofertas de compra directa desde la aplicación para que se adecue al comportamiento de gasto de los segmentos. Por ejemplo, para los segmentos en los cuales varios usuarios tengan tendencia a gastar más dinero a la vez, pero lo hagan con poca frecuencia, ofrece a estos funciones agrupadas en la aplicación.


4. Ofrecer compras directas desde la aplicación cuando sea más probable que los usuarios gasten dinero


Las probabilidades de que los usuarios gasten dinero son mayores si la experiencia no presenta obstáculos, y aumentan más aún cuando estos pueden ver el valor agregado que implicará el gasto. Entonces:
  • Presenta oportunidades de compra a los usuarios cuando haya más posibilidades de que necesiten o deseen la aplicación, y explícales por qué es relevante.
  • Facilita el acceso a la compra desde la aplicación con una cantidad mínima de toques. Por ejemplo, ofrece un botón de actualización en la parte inferior de las pantallas importantes.

TomTom agregó una cuenta regresiva (en kilómetros recorridos) para indicar la finalización del servicio gratuito. El contador incluye un botón de actualización que permite la compra directa desde la aplicación con un toque.

Como todo buen desarrollador de juegos, la empresa hace hincapié en brindar buenas experiencias que retengan y atraigan a los usuarios a través de pruebas y análisis constantes. Las primeras impresiones son importantes. Por lo tanto, es necesario que los usuarios puedan comprender rápidamente la importancia de la aplicación y recorrer con facilidad la experiencia de incorporación. Para comenzar a generar ingresos, es importante considerar la manera de hacer que las compras directas desde la aplicación sean prácticas.

Mira la sesión “Las reglas de los juegos, en las aplicaciones” (The rules of games, for apps) de Google Playtime 2015, llevada a cabo por Matteo, para hallar más información detallada que los desarrolladores de aplicaciones pueden obtener de los juegos con prácticas recomendadas y ejemplos de desarrolladores:



También puedes ver las demás sesiones de Playtime 2015 para obtener más información sobre herramientas y prácticas recomendadas que pueden ayudarte a encontrar el éxito en los negocios en Google Play.

Publicado por Anton Vayvod, Consultor de administración de presentaciones

A menos que se realicen otras observaciones, los cambios que se describen a continuación se aplican a la versión más reciente del canal de Chrome ...
Publicado por Anton Vayvod, Consultor de administración de presentaciones

A menos que se realicen otras observaciones, los cambios que se describen a continuación se aplican a la versión más reciente del canal de Chrome Beta para Android, Chrome OS, Linux, Mac y Windows.

API de presentación

Históricamente, desde los sitios no se ha podido presentar contenido a los dispositivos cercanos, lo cual dificultó la creación de experiencias como el “modo de presentación” de diapositivas para la Web móvil. La última versión de Chrome para Android ahora permite que desde los sitios móviles se realicen presentaciones en dispositivos con Google Cast a través de la API de presentación basada en estándares y el SDK de la Web de Cast.


Botones personalizados en las notificaciones

En Chrome 42, se presentó a los usuarios la capacidad de recibir notificaciones de inserción de sitios web. Esto les permitió a los usuarios relacionarse de manera más estrecha con sus sitios preferidos. El uso de la función aumentó rápidamente, y ahora Chrome brinda más de 350 millones de notificaciones de inserción todos los días. En la última versión de Chrome, los sitios ahora pueden agregar botones personalizados a las notificaciones. Esto permite a los usuarios completar tareas directamente desde las notificaciones.

Acciones de notificación en Chrome 48 para Android

Cómo detectar la velocidad de conexión máxima

El teléfono móvil de un usuario se conecta a Internet a través de cualquier medio, desde una red wifi de alta calidad hasta una red 2G. Esto ha generado dificultades a la hora de diseñar la experiencia móvil adecuada. Los desarrolladores ahora pueden usar NetworkInformation.downlinkMax para detectar el ancho de banda máximo de un dispositivo y así poder enviar los recursos óptimos de acuerdo a la velocidad de conexión. Los sitios también pueden responder ante cambios en la calidad de la conexión gracias al controlador de eventos NetworkInformation.onChange.

Otras opciones de esta versión


Cambios de menor importancia




Publicado por Ian Lake, Representante de desarrolladores

Biblioteca de compatibilidad de Android 23.2


Cuando hablamos de la biblioteca de compatibilidad de Android, es importante observar que no se trata de una biblioteca monolítica, sino de una ...
Publicado por Ian Lake, Representante de desarrolladores

Biblioteca de compatibilidad de Android 23.2


Cuando hablamos de la biblioteca de compatibilidad de Android, es importante observar que no se trata de una biblioteca monolítica, sino de una colección completa de bibliotecas con las que se intenta ofrecer versiones de API compatibles con lanzamientos anteriores y, además, funciones exclusivas sin necesidad de contar con la última versión de la plataforma. En la versión 23.2 se suman nuevas bibliotecas de compatibilidad y nuevas funciones a muchas de las bibliotecas existentes.

Compatibilidad con interfaces dibujables en vector convencionales y animadas


Las interfaces dibujables en vector te permiten reemplazar varios recursos png por un único gráfico vectorial definido en XML. Aunque antes VectorDrawable y AnimatedVectorDrawable estaban limitados a dispositivos con Lollipop o versiones superiores, ahora se encuentran disponibles a través de dos bibliotecas de compatibilidad nuevas: support-vector-drawable y animated-vector-drawable, respectivamente.

En Android Studio 1.4, se presentó una compatibilidad limitada con interfaces dibujables en vector mediante la generación de recursos png en el momento de la compilación. Para deshabilitar esta funcionalidad (y acceder a la ventaja y el ahorro de espacio reales de esta biblioteca de compatibilidad), debes agregar vectorDrawables.useSupportLibrary = true a tu archivo build.gradle:
 // Gradle Plugin 2.0+  
 android {  
   defaultConfig {  
     vectorDrawables.useSupportLibrary = true  
    }  
 }  

Notarás que este nuevo atributo solo existe en la versión 2.0 del complemento de Gradle. Si estás usando Gradle 1.5, aplicarás:

 // Gradle Plugin 1.5  
 android {  
   defaultConfig {  
     generatedDensities = []  
  }  

  // This is handled for you by the 2.0+ Gradle Plugin  
  aaptOptions {  
    additionalParameters "--no-version-vectors"  
  }  
 }  


Podrás usar VectorDrawableCompat hasta la API 7 y AnimatedVectorDrawableCompat en todos los dispositivos que tengan la API 11 y versiones posteriores. Debido a la manera en que Android carga las interfaces dibujables, no todos los sitios en los que se acepte un Id. de interfáz dibujable (como un archivo XML) admitirán la carga de interfaces dibujables en vector. Afortunadamente, en AppCompat se agregaron varias funciones para facilitar el uso de tus nuevas interfaces dibujables en vector.

En primer lugar, cuando uses AppCompat con ImageView (o subclases como ImageButton y FloatingActionButton), podrás emplear el nuevo atributo app:srcCompat para hacer referencia a interfaces dibujables en vector (y a cualquier otra interfaz dibujable disponible para android:src):
 <ImageView  
  android:layout_width="wrap_content"  
  android:layout_height="wrap_content"  
  app:srcCompat="@drawable/ic_add" />  


Si modificas interfaces dibujables en el tiempo de ejecución, podrás usar el mismo método setImageResource() de antes; no hay cambios en este aspecto. El uso de AppCompat y app:srcCompat es el método más infalible para integrar interfaces dibujables en vector a tu aplicación.

Podrás observar que la referencia directa a interfaces dibujables en vector fuera de app:srcCompat no funcionará en versiones anteriores a Lollipop. Sin embargo, AppCompat admite la carga de interfaces dibujables en vector cuando se hace referencia a ellas en otro contenedor de interfaces dibujables, como StateListDrawable, InsetDrawable,LayerDrawable, LevelListDrawable y RotateDrawable. Con este direccionamiento indirecto, puedes usar interfaces dibujables en vector en casos como los del atributo android:drawableLeft de TextView, que normalmente no podría admitirlas.

Tema DayNight de AppCompat


Si bien la posibilidad de habilitar el uso de gráficos vectoriales en tu aplicación representa ya un enorme cambio para AppCompat, se agregó un nuevo tema en esta versión: Theme.AppCompat.DayNight.

Antes de la API 14, el tema DayNight y sus derivados DayNight.NoActionBar, DayNight.DarkActionBar y DayNight.Dialog, entre otros, se convierten en sus equivalentes de Light. Sin embargo, en dispositivos con la API 14 y versiones posteriores, este tema permite que las aplicaciones admitan fácilmente un tema Light y uno Dark, lo cual hace posible un cambio efectivo entre estos, según sean “night”.

De manera predeterminada, el hecho de que sean “night” supondrá una coincidencia con el valor de sistema (de UiModeManager.getNightMode()), pero puedes sobrescribir dicho valor con métodos de AppCompatDelegate. Podrás configurar el valor predeterminado en toda tu aplicación (hasta el reinicio del proceso) con el método estático AppCompatDelegate.setDefaultNightMode() o recuperar un elemento AppCompatDelegate a través de getDelegate() y usar setLocalNightMode() para modificar únicamente los elementos Activity o Dialog actuales.

Al usar AppCompatDelegate.MODE_NIGHT_AUTO, se emplean la hora del día y tu última ubicación conocida (si tu aplicación cuenta con los permisos de ubicación) para aplicar automáticamente el cambio del día a la noche, mientras que MODE_NIGHT_NO y MODE_NIGHT_YES hacen de manera forzosa que no se use nunca o se use siempre un tema Dark, respectivamente.

Es esencial que pruebes por completo tu aplicación al usar los temas DayNight, ya que los colores codificados pueden fácilmente hacer que el texto o los iconos se vuelvan ilegibles. Si usas los estilos estándares TextAppearance.AppCompat para el texto o los colores extraídos de tu tema (por ejemplo,android:textColorPrimary), verás que estos se actualizarán automáticamente.

Sin embargo, si deseas personalizar los recursos específicamente para el modo noche, AppCompat reutiliza la carpeta de calificadores de recursos de noche. Esto permite personalizar todos los recursos que puedas necesitar. Considera usar los colores estándares o aprovechar la compatibilidad con matices de AppCompat para simplificar mucho más la compatibilidad con este modo.


Biblioteca de compatibilidad de diseño: hojas inferiores


La biblioteca de compatibilidad de diseño ofrece implementaciones de numerosos patrones de Material Design. Esta versión permite que los desarrolladores agreguen fácilmente hojas inferiores a sus aplicaciones.

Al adjuntar un elemento BottomSheetBehavior a un View secundario de un elemento CoordinatorLayout (es decir, al agregar app:layout_behavior="android.support.design.widget.BottomSheetBehavior"), podrás obtener en forma automática la detección de toques correspondiente para la transición entre cinco estados:
  • STATE_COLLAPSED: este estado de contracción es el valor predeterminado y muestra solo una parte del diseño en la parte inferior. Se puede controlar la altura con el atributo app:behavior_peekHeight (su valor predeterminado es 0).
  • STATE_DRAGGING: estado intermedio que tiene lugar mientras el usuario arrastra en forma directa la hoja inferior hacia arriba o abajo.
  • STATE_SETTLING: momento breve que tiene lugar entre el inicio de View y su posicionamiento en el lugar final que ocupará.
  • STATE_EXPANDED: estado de expansión total de la hoja inferior, en el cual esta es totalmente visible (si su altura es inferior a la del elemento CoordinatorLayout que la contiene) o el elemento CoordinatorLayout se rellena.
  • STATE_HIDDEN: se encuentra deshabilitado de manera predeterminada (se habilita con el atributo app:behavior_hideable) y su habilitación permite a los usuarios deslizar la hoja inferior para ocultarla por completo.


Ten en cuenta que los contenedores de desplazamiento de tu hoja inferior deben admitir el desplazamiento anidado (por ejemplo, NestedScrollView, RecyclerView o ListView/ScrollView en la API 21 y versiones posteriores).

Si deseas recibir callbacks de cambios de estado, puedes agregar un elemento BottomSheetCallback:
 // The View with the BottomSheetBehavior  
 View bottomSheet = coordinatorLayout.findViewById(R.id.bottom_sheet);  
 BottomSheetBehavior behavior = BottomSheetBehavior.from(bottomSheet);  
 behavior.setBottomSheetCallback(new BottomSheetCallback() {  
    @Override  
    public void onStateChanged(@NonNull View bottomSheet, int newState) {  
      // React to state change  
    }  
      @Override  
      public void onSlide(@NonNull View bottomSheet, float slideOffset) {  
       // React to dragging events  
   }  
 });  
Aunque BottomSheetBehavior se aplica al caso de las hojas inferiores persistentes, en esta versión también se proporcionan elementos BottomSheetDialog y BottomSheetDialogFragment para abarcar el caso de las hojas inferiores modales. Simplemente, reemplaza AppCompatDialog o AppCompatDialogFragment por sus equivalentes de hojas inferiores para dar a tu cuadro de diálogo el estilo de una de estas.

Biblioteca de compatibilidad v4: MediaBrowserServiceCompat


La biblioteca de compatibilidad v4 sirve como base para gran parte de las bibliotecas de compatibilidad y en ella se incluyen backports de muchas funciones de framework presentadas en nuevas versiones de la plataforma (además de varias funciones exclusivas).

Como complemento de la clase MediaSessionCompat lanzada previamente, y con el propósito de brindar una base sólida para la reproducción de medios, esta versión suma MediaBrowserServiceCompat y MediaBrowserCompat, lo cual proporciona una solución compatible que acerca las últimas API (incluso las que se agregaron en Marshmallow) a todos los dispositivos con la API 4 y versiones posteriores. Esto hace que resulte mucho más sencillo ofrecer compatibilidad con la reproducción de audio en Android Auto y la exploración de medios en Android Wear. Además, brinda una interfaz estándar que puedes usar para conectar tu servicio de reproducción de medios y tu IU.

RecyclerView


El widget RecyclerView proporciona una base avanzada y flexible para crear listas y cuadrículas, además de admitir animaciones. Esta versión aporta una fabulosa función nueva a la API de LayoutManager: el dimensionamiento automático. Esto permite que RecyclerView ajuste su tamaño en forma automática según el tamaño de su contenido. Esto significa que ahora son posibles acciones que previamente no lo eran; por ejemplo, el uso de WRAP_CONTENT para una dimensión de RecyclerView. Verás que todos los elementos LayoutManagers integrados ahora admiten el dimensionamiento automático.

Debido a este cambio, debes controlar muy bien los parámetros de diseño de tus vistas de elementos. Ahora se respetarán los parámetros de diseño previamente ignorados (como MATCH_PARENT en la dirección de desplazamiento).

Si dispones de un elemento LayoutManager personalizado que no extiende uno de los elementos LayoutManagers integrados, se trata de una API de inclusión. Deberás llamar a setAutoMeasureEnabled(true) y realizar algunos cambios menores según lo detallado en el Javadoc del método.

Ten en cuenta que si bien RecyclerView anima a sus hijos, no anima sus propios cambios de límites. Si deseas animar los límites de RecyclerView a medida que cambien, puedes usar las API de transición.

Pestañas personalizadas


Las pestañas personalizadas hacen posible la transición a contenido web sin inconvenientes y, al mismo tiempo, conservan el aspecto de tu aplicación. Con esta versión, ahora podrás agregar acciones a una barra inferior para que se visualicen junto al contenido web.


Con el nuevo método addToolbarItem(), podrás agregar hasta 5 acciones (MAX_TOOLBAR_ITEMS) a la barra inferior y actualizarlas con setToolbarItem() una vez que se inicie la sesión. De una manera similar a la que ofrecía el método setToolbarColor() anterior, también podrás hallar un método setSecondaryToolbarColor() para personalizar el color de fondo de la barra inferior.


Leanback para Android TV


La biblioteca Leanback te proporciona las herramientas que necesitas para llevar fácilmente tu aplicación a Android TV, con muchos componentes estándares optimizados para la experiencia de TV. El elemento GuidedStepFragment recibió un conjunto importante de mejoras con esta versión.


El cambio más visible probablemente sea la introducción de una segunda columna para botones de acción (se agrega sobrescribiendo onCreateButtonActions() o llamando a setButtonActions()). Esto hace que sea mucho más fácil acceder a acciones de finalización sin necesidad de recorrer la lista de GuidedActions disponibles.

Ya que se mencionó GuidedActions... hay varias funciones nuevas que permiten entradas de mayor contenido, como descripciones editables (a través de descriptionEditable()), subacciones bajo la forma de menús desplegables (con subActions()) y un elemento GuidedDatePickerAction.





Estos componentes deberían hacer que te resulte mucho más sencillo obtener información del usuario cuando sea absolutamente obligatorio.


Disponible ahora


La versión 23.2 de la biblioteca de compatibilidad de Android se encuentra disponible a través de tu SDK Manager y de Android Studio. ¡Aprovecha hoy mismo todas las funciones nuevas y las correcciones de errores adicionales! Como siempre, registra informes de errores en b.android.com y conéctate con otros desarrolladores en la comunidad de Google+ para el desarrollo de Android.




La empresa desarrolladora de juegos coreana Daeri Soft, fundada en 2008, es famosa por juegos multijugador en tiempo real como Freestyle Baseball 2, cuyas descargas alcanzan hoy los 13 millones por día en el mundo. Un 15 % de estas tienen lugar en Estados Unidos y un 28 % se producen entre Corea, Japón y Taiwán.


Mira la descripción de Dael Yu, director ejecutivo de Daeri Soft, sobre la manera en que los experimentos de listados de tiendas permitieron aumentar las descargas de la empresa en más de un 200 % al probar diferentes iconos. A su vez, Dael detalla la forma en que la empresa usó con éxito los servicios de Google Play Games con el fin de admitir una funcionalidad coincidente para servidores y jugadores en todo el mundo.

Publicado por Hidenori Fujii, equipo de Google Play


La empresa desarrolladora de juegos coreana Daeri Soft, fundada en 2008, es famosa por juegos multijugador en tiempo real como Freestyle Baseball 2, cuyas descargas alcanzan hoy los 13 millones por día en el mundo. Un 15 % de estas tienen lugar en Estados Unidos y un 28 % se producen entre Corea, Japón y Taiwán.


Mira la descripción de Dael Yu, director ejecutivo de Daeri Soft, sobre la manera en que los experimentos de listados de tiendas permitieron aumentar las descargas de la empresa en más de un 200 % al probar diferentes iconos. A su vez, Dael detalla la forma en que la empresa usó con éxito los servicios de Google Play Games con el fin de admitir una funcionalidad coincidente para servidores y jugadores en todo el mundo.



Publicado por Laurence Moroney, Representante de desarrolladores

Google Cloud Messaging (GCM) es una infraestructura que te permite aplicar mensajería simple y confiable para distribuir tus mensajes en muchos dispositivos.


Todos los días, GCM hace llegar más de ...


Publicado por Laurence Moroney, Representante de desarrolladores

Google Cloud Messaging (GCM) es una infraestructura que te permite aplicar mensajería simple y confiable para distribuir tus mensajes en muchos dispositivos.


Todos los días, GCM hace llegar más de 150 mil millones de mensajes a dispositivos de varias plataformas, como Android e iOS, y a navegadores web. Incluye varias técnicas diferentes para enviar mensajes:

Dispositivos simples. Cada dispositivo cuenta con un token de registro único. Si deseas alcanzar ese dispositivo (por ejemplo, usando GCM para crear una aplicación de chat personalizado), puedes hacerlo dirigiéndote a él a través de este token.

Los grupos de dispositivos te permiten agrupar dispositivos. Por ejemplo, uno de tus usuarios podría tener varios dispositivos. Por ejemplo, cuenta con un teléfono y una tablet (una situación muy común). Usando grupos de dispositivos en GCM, puedes enviar un mensaje a todos sus dispositivos y, si lo deseas, implementar tu aplicación de modo que el envío en uno implique el envío en todos.

Los temas te permiten crear grupos de interés para tus usuarios. Una vez que los usuarios se suscriban a un tema, puedes enviar mensajes a este y los recibirán. No existen límites de suscripción. Por lo tanto, no deberás preocuparte por la cantidad de usuarios que se incorporen a tus temas. En esta publicación del blog podrás hallar excelentes ejemplos de temas usados para mejorar la experiencia del usuario.

En un estudio interno realizado en Google, en relación con la confiabilidad de los mensajes, se descubrió que la mayoría de los mensajes de notificación (percentil 95) se entregan a los dispositivos conectados en un plazo máximo de 250 ms. La conectividad se ve afectada por muchos factores, como los proveedores, los enrutadores y la conectividad local. De hecho, en algunas configuraciones regionales es común que las personas deshabiliten los datos móviles durante períodos prolongados del día para ahorrar costos de ancho de banda. En esta situación, los usuarios recibirán de todos modos las notificaciones una vez que reactiven su conexión de datos.

Hemos proporcionado varios recursos para ayudarte a crear aplicaciones usando GCM. Mira esta charla en la que se muestra paso a paso la creación de una aplicación de Android y un servidor asociado en PHP. También hay disponible un “área de juegos de GCM” en GitHub aquí, en la que se proporciona un ejemplo de implementación de servidor que funciona en Google Cloud Platform.

En caso de que desees llegar a usuarios de iOS, hoy agregaremos una API que te permitirá migrar tu infraestructura existente para enviar notificaciones a dispositivos con este sistema operativo sin necesidad de cambiar códigos de cliente. Con la nueva API de importación por lotes, puedes importar a GCM los token de dispositivos de APN que hayas recopilado de tu público de iOS y comenzar a enviar notificaciones de inmediato a través de GCM. Después de importar los token de dispositivos de APN, también puedes usar la API de InstanceID para suscribir usuarios a temas de GCM en forma transparente y lograr la distribución eficaz de notificaciones conforme a grupos de interés, una vez más, sin necesidad de cambiar códigos de cliente.

Continuamos aportando creación e innovación en esta plataforma. No te pierdas las numerosas funciones nuevas que llegarán pronto.

Puedes obtener más información sobre Google Cloud Messaging en el sitio de desarrolladores aquí. Se incluyen guías de inicio rápido para Android y iOS.



Publicado por Joe Salisbury, Especialista en productos, AdMob



Publicado por Joe Salisbury, Especialista en productos, AdMob

Esta es la segunda de la serie de 5 publicaciones de nuestro blog, en la que se ofrecen consejos relacionados con la monetización aportados directamente por desarrolladores de aplicaciones exitosos. Si la pregunta que ocupa tus pensamientos es “¿cuál es la mejor manera de monetizar mi aplicación?”, prueba también la Guía práctica sobre monetización de aplicaciones disponible sin costo a través de AdMob.



Esta semana, conocimos a Sebastiaan Moeys, cofundador de Poki, una empresa que publica juegos multiplataforma. Poki desarrolla y publica juegos en formato web y de aplicaciones para niños de todas las edades, y tiene 30 millones de usuarios activos por mes. En sus inicios, la empresa desarrollaba sus operaciones exclusivamente en la Web, pero con el auge de las plataformas móviles lanzó su primera aplicación, llamada “Zoi”. Zoi superó las 500 000 descargas y tiene una calificación de 4.4 puntos en las tiendas de aplicaciones. Miren, a continuación, los consejos de Sebastiaan.



1. Procede con simpleza al encarar por primera vez el análisis de uso de aplicacionesEl equipo de Sebastiaan logra un nivel de complejidad importante a través de su plataforma de análisis de uso de aplicaciones, y todas sus decisiones se basan en estos datos.

Para ver el contexto, en Poki se controlan continuamente tres aspectos. En primer lugar, se mide una métrica personalizada conocida como “tiempo puro de juego”. Esta métrica permite hacer un seguimiento del tiempo que un jugador dedica al uso de la aplicación, sin incluir los lapsos en que no se ocupa exclusivamente de jugar (es decir, se resta el tiempo durante el cual los usuarios interactúan con anuncios o esperan la carga del juego). En segundo lugar, se controlan las tasas de retención del día 1, 3 y 7. Con esto, se obtiene un valor de referencia del desempeño de los juegos de la empresa respecto de los más destacados en el mercado. Por último, se mide la tasa de abandono.

Sebastiaan tiene el objetivo claro de crear una estructura analítica sólida con el tiempo, pero cree que es importante comenzar con simpleza:

“El comienzo debe ser simple. El análisis de uso de aplicaciones puede ser una tarea exhaustiva, y no es posible determinar todo en una noche. La clave es dar pequeños pasos, asegurarse de comprender bien las métricas que se observan y repetir el procedimiento. Es un modo de pensar”.

Elige una única métrica que sea significativa para comenzar; puede ser la tasa de abandono. Luego, comienza a incorporar la rutina de usar esos datos para mejorar la calidad de tu aplicación.


2. Somete a prueba tus suposiciones con bajos costos y rápidamente, antes de invertir en desarrollos más importantes.

En todo el mundo, los aficionados a los juegos han adoptado las opciones multipantalla, para jugar en muchísimas plataformas diferentes. Para Poki, esto implicó una transición en el desarrollo basado en la Web y la inclusión del desarrollo de plataformas móviles. A pesar de ser emocionante, el nuevo desafío planteó un nuevo problema.
Desde entonces, cada vez que la empresa intentó lanzar un nuevo juego, fue necesario un equipo más grande y más dinero por adelantado. Cada proyecto se convirtió en una apuesta mayor.

Para resolver esto, Poki usa un enfoque inteligente que le ha dado muy buenos resultados. En lugar de realizar los lanzamientos en todas las plataformas a la vez, en la empresa se usa la Web para el lanzamiento gradual, la prueba y la repetición. Una vez que el nuevo lanzamiento brinda satisfacción, se realiza el desarrollo para plataformas móviles. La información que se obtiene de la Web permite someter a prueba muchísimas decisiones que deben tomarse para el negocio.

“Al desarrollar juegos de una manera inteligente e iterativa, no solo tuvimos tiempo de asegurarnos de que los clientes estuvieran encantados; también pudimos canalizar el impulso y la información para expandir más nuestra base de usuarios. Con los conocimientos que incorporamos a través de la Web, podemos perfeccionar la experiencia de juego, realizar rápidamente pruebas A/B de los mejores espacios para los anuncios en la versión de nuestra aplicación, determinar las regiones del mundo para las cuales debemos localizarla e incluso pedir a nuestros usuarios que nos ayuden a difundir el lanzamiento de nuestra próxima aplicación”.


Los resultados que el proceso tuvo para Zoi fueron tan positivos que ya comenzaron a cobrar dimensión. Actualmente, la empresa tiene 3 juegos nuevos en desarrollo y está recopilando datos para aumentar las posibilidades de que tengan éxito en plataformas móviles. Sebastiaan cree que otros desarrolladores de juegos también pueden imitar el enfoque de la prueba rápida con bajos costos antes del lanzamiento. Según explica: “los nuevos desarrolladores de juegos pueden intentar poner a prueba sus suposiciones lo más pronto posible; probar sus prototipos rápido, encaminar el diseño y la monetización de sus juegos y luego lanzar las aplicaciones”.

Quienes integran Google Ventures, la firma de inversiones de Google, también creen en el método de poner a prueba las ideas antes de invertir en el desarrollo. Para que más empresas lo hagan, la firma creó un enfoque denominado Design Sprint, “un proceso de cinco días para obtener respuestas a interrogantes empresariales críticos a través del diseño, la generación de prototipos y la prueba de ideas con clientes”. Puedes obtener más información sobre el enfoque de Google Venture sobre la generación de prototipos con bajos costos aquí.


3. Busca oportunidades más allá de tu paísSebastiaan inició lo que hoy es Poki cuando aún era estudiante en la escuela secundaria, en Holanda. Se sentía muy atraído hacia la tendencia popular de los juegos basados en la Web. Todos sus amigos eran aficionados a ellos, y sabía que su popularidad se extendía por todo el país. Cuando se encontraba de vacaciones en Francia, se asombró al descubrir que allí la tendencia aún no cobraba popularidad. Al regresar, codificó un sitio y tradujo todo su contenido al francés con un diccionario de sus padres. El resto es historia. Hoy, Poki cuenta con 29 traductores dedicados que colaboran con el equipo para hacer llegar más juegos a más regiones del mundo.

Sebastiaan recurre al mismo principio en la búsqueda de los mejores mercados para promocionar juegos. Además, le encanta usar AdMob para su estrategia de monetización internacional porque es posible aprender a usarlo en forma rápida y sencilla. Su consejo para los desarrolladores que busquen proyectarse al mundo:

“Trabaja junto a Google, como punto de partida, y aplica una visión simple a tu implementación de anuncios. Una vez que comiences a crecer en un mercado determinado, busca socios que tengan experiencia en él a nivel local y usa las herramientas de Google para aplicar anuncios localizados según la demanda de anuncios en la red de Google. Hemos aplicado este enfoque a muchos mercados y los resultados que obtuvimos fueron fabulosos”.


Si estos consejos te resultaron útiles, no olvides ver la Guía práctica sobre monetización de aplicaciones. Permanece conectado con AdMob siguiendo la actividad de nuestras páginas de Twitter y Google+, y no olvides visitar Poki en Twitter.

Publicado por Roy Glasberg, Director mundial, Programa de Launchpad y Launchpad Accelerator

El mes pasado, 24 startups prometedoras de la India, Indonesia y Brasil vinieron a Silicon Valley para participar de ...
Publicado por Roy Glasberg, Director mundial, Programa de Launchpad y Launchpad Accelerator

El mes pasado, 24 startups prometedoras de la India, Indonesia y Brasil vinieron a Silicon Valley para participar deLaunchpad Accelerator de Google, un nuevo programa en el que se ofrecen consejos y recursos a startups en etapas avanzadas (aplicaciones móviles) para que logren expandirse con éxito en sus economías locales.


Durante la puesta en marcha intensiva de dos semanas de Accelerator, en nuestra sede de Mountain View, ingenieros de Google de 11 áreas de productos y expertos de otras empresas estuvieron disponibles para brindar asesoramiento a las startups sobre la manera de expandir y monetizar sus aplicaciones y, finalmente, generar negocios exitosos. Tras regresar a sus países, los equipos continuarán desarrollando sus productos con un respaldo de hasta $ 50 000 en financiación sin participación en el capital, seis meses más de asesoramiento continuo y varias herramientas para desarrolladores del programa de Launchpad Accelerator.

Hasta ahora, muchas startups que participan han observado un impacto inmediato. Dos semanas después de asistir al evento de puesta en marcha, después de su presentación en Google Play, la empresa desarrolladora de juegos móvilesUpBeat Games experimentó un aumento del 1000 % en concepto de instalaciones en Asia y una expansión general del 200 % en el número de usuarios activos, gracias a que aprovechó las estadísticas para comprenderlos mejor.


Según Vinicius Heimbeck, fundador de UpBeat Games, “Al trabajar codo a codo con los mentores, descubrimos que necesitábamos ser una empresa basada en los datos. Ahora contamos con las herramientas adecuadas para medir los resultados de nuestros esfuerzos y aprender de ellos, y así optimizar la experiencia del usuario. Todo esto incidió directamente en el enorme éxito que alcanzamos después de nuestra presentación en Google Play”.

eFishery, una startup de indonesia que produce sistemas inteligentes y automatizados para alimentar peces, orientó su enfoque hacia la expansión tras participar de Launchpad Accelerator. “Los mentores nos aportaron fabulosa información sobre la manera de crear un producto escalable y atraer a miles de millones de usuarios”, dijo Gibran Chuzaefah Amsi El Farizy, cofundador y director ejecutivo. “Recibimos asesoramiento técnico y práctico acerca de nuestro negocio, desde la creación de tecnología de backend hasta la aceptación del fracaso con la mentalidad adecuada”.

Inscríbete ahora para participar de Launchpad Accelerator
. Es, también, motivo de entusiasmo para nosotros anunciar que la segunda clase de Launchpad Accelerator comenzará en junio de 2016.



Si tu startup está radicada en la India, Indonesia, Brasil o México (¡nuevo integrante!) y estás interesado en participar de la próxima etapa, te invitamos a inscribirte aquí hasta el 31 de marzo. Esperamos continuar sumando países al programa en el futuro, ¡así que mantente al tanto!