que permite ejecutar aplicaciones nativas Android sin necesidad de instalarlas. Anunciadas en el Google I/O del 2016 https://www.youtube.com/watch?v=iH7dNyJ8pFM En el ultimo I/O Google las empezo a llamar Google Play Instant
desactivado. A Partir de Android Oreo vienen activadas por default (puede variar segun fabricante). En devices compatibles se instala automáticamente Google Play services for Instant Apps Por lo gral no disponible en Custom Roms.
• BILLING • ACCESS_COARSE_LOCATION • ACCESS_FINE_LOCATION • ACCESS_NETWORK_STATE • CAMERA • INSTANT_APP_FOREGROUND_SERVICE Only in Android 8.0. • INTERNET • READ_PHONE_NUMBERS. Only in Android 8.0 • RECORD_AUDIO • VIBRATE
o tarea. App Mapa • Buscar una ubicación. • Buscar restaurantes cercanos. • Detalles de un lugar específico • Compartir ubicación de un lugar en redes sociales.
cercanos. Detalles de un lugar específico Compartir ubicación de un lugar en redes sociales. Separar cada funcionalidad en un módulo. Instant App Detalles de un lugar específico http://example.com/place/guerrin
or higher • Android SDK Platform Tools 25.x or higher • Android SDK Tools (latest) • Instant Apps Development SDK (latest) • Support Repository (latest) • All dependencies of Support Repository (latest version for each)
módulos: App Module: App tradicional incluye a todos los módulos. Instant App Module: Incluye solos los feature modules y el módulo base. Feature Module: Código específico para esa funcionalidad. Base Feature Module: Codigo requerido por todos.
de los que dependen otras funciones. • Parecido a una librería. • Todos los módulos depende de él. Build.gradle apply plugin: 'com.android.feature' android { baseFeature true … } dependencies { …… feature project(':feature1') feature project(':feature2') application project(':app') }
dependencies { …… api project(‘:base-module’) implementation project(':feature1) implementation project(':feature2) } • Módulo que representa a toda la app instalable. • Incluye a todos los módulos.
plugin: 'com.android.instantapp android { ... } dependencies { …… api project(‘:base-module’) implementation project(':feature1) } • Módulo que representa a la instant app. • Incluye a los features modules
appLinkIntent.getAction(); Uri uri = appLinkIntent.getData(); String id =uri.getQueryParameter(“id”); https://www.recipe-app.com/recipe&id=45454 Acceder a parametros:
posibilidad de mostar el dialogo de instalacion del playstore de la app completa. Necesario: implementation 'com.google.android.instantapps:instantapps:1.1.0' Intent postInstall = new Intent(); InstantApps.showInstallPrompt(@NonNull Activity activity, @NonNull Intent postInstallIntent, int requestCode, @Nullable String referrer); Permite detectar si estoy en una instant app o no if (!InstantApps.isInstantApp(this)) { //mostrar install prompt button }
Introduction to Android Instant Apps (Google I/O '17) https://www.youtube.com/watch?v=oispNrpGnIY&t=157s Google Play Instant: how app developers are finding success (Google I/O '18) https://www.youtube.com/watch?v=tXqat1JOmS8 UX best practices https://developer.android.com/topic/google-play-instant/best-practices/apps Refactoring an existing Android app to support Instant App. https://blog.mindorks.com/refactoring-an-existing-android-app-to-support-instant-app-aa11fe54fd73 Some useful insights on Instant apps https://medium.com/nos-digital/some-useful-insights-on-instant-apps-67cc7d177695 Android Instant Apps,All you need to know about.. https://hackernoon.com/android-instant-apps-all-you-need-to-know-about-d392a6e10584
Android Instant Apps, step-by-step: how Vimeo went about it https://medium.com/vimeo-engineering-blog/vimeo-android-instant-apps-2f8b1e94760c CodeLabs: Build your First Android Instant App https://codelabs.developers.google.com/codelabs/android-instant-apps/#0 Build a Multi-Feature Instant App https://codelabs.developers.google.com/codelabs/android-multi-feature-instant-app/#0 FAQ https://developer.android.com/topic/google-play-instant/faqs