SlideShare una empresa de Scribd logo
1 de 48
nsejos Heisenberg para
conseguir Apps Windows
10 con 99% de pureza
Talk4 he ds
Co
32
Ki
22
Javier Suárez Ruiz
2
lk4 KIDS 2015 con Fundación Theodora
Consejos Heisenberg para conseguir Apps W10 con 99% de pureza
Ta
99
Talks4Kids
Patrocinadores
Colabora
vier Suárez Ruiz
Talk4 he ds
Ja
99
Ki
22
Windows Platform Development MVP
Software Developer Plain Concepts
• Blog: http://geeks.ms/blogs/jsuarez
• Email: javiersuarezruiz@hotmail.com
• Twitter: @jsuarezruiz
5
¿Qué vamos a ver?
P
5
Ci
1
Tr
3
Ba
2
Ap
4
R
6
22
Talks4KidsConsejos Heisenberg para conseguir Apps W10 con 99% de pureza
clo de vida
ckgrounding
iggers
p Services
reguntas
espuestas
6
Para conseguir el éxito…
7
Hay que trabajar duro!
8 Consejos Heisenberg para conseguir Apps W10 con 99% de pureza Talks4Kids
El ciclo de vida de una
Aplicación
9
clo de vida
Consejos Heisenberg para conseguir Apps W10 con 99% de pureza
Ci
56
Las Apps pueden estar en 1 de los
siguientes 3 estados:
• Not Running
• Running
• Suspended
La App recibe eventos en la transición entre
diferentes estados
• Exceptuando de: Suspended->NotRunning
10 Consejos Heisenberg para conseguir Apps W10 con 99% de pureza Talks4Kids
DEMO I
Suspender y reanudar
11 Consejos Heisenberg para conseguir Apps W10 con 99% de pureza Talks4Kids
¿Y si necesitamos más?
12
tendiendo el modo de ejecución
Consejos Heisenberg para conseguir Apps W10 con 99% de pureza Talks4Kids
Ex
36
Continua una session
cuando la App ya no esta
en primer plano
13
tendiendo el modo de ejecución
Consejos Heisenberg para conseguir Apps W10 con 99% de pureza Talks4Kids
Ex
36
Las Apps deben facilitar una
razón
Eventos revocados cuentan
con <1 segundo
14 Consejos Heisenberg para conseguir Apps W10 con 99% de pureza Talks4Kids
DEMO II
Extendiendo el modo de
ejecución
15
A veces, hay que trabajar,
sin que nadie nos vea…
16 Consejos Heisenberg para conseguir Apps W10 con 99% de pureza Talks4Kids
Ejecución en Background
17 Consejos Heisenberg para conseguir Apps W10 con 99% de pureza Talks4Kids
Ej
23
Las Apps ofrecen contenido real-time incluso con la App suspendida
Atraer usuarios a la
App
Les ofrece información
y características
ecución en Background
18 Consejos Heisenberg para conseguir Apps W10 con 99% de pureza Talks4Kids
¿De dónde venimos?
19
viaje de la convergenciaEl
56
Windows 10
Convergencia en el
modelo de
Backgrounding
20
gistrar una Background Task
Consejos Heisenberg para conseguir Apps W10 con 99% de pureza Talks4Kids
Re
21
private void RegisterBackgroundTasks()
{
BackgroundTaskBuilder builder = new BackgroundTaskBuilder();
builder.Name = "Background Test Class";
builder.TaskEntryPoint = "BackgroundTaskLibrary.TestClass";
IBackgroundTrigger trigger = new TimeTrigger(30, true);
builder.SetTrigger(trigger);
IBackgroundCondition condition = new
SystemCondition(SystemConditionType.InternetAvailable);
builder.AddCondition(condition);
IBackgroundTaskRegistration task = builder.Register();
task.Progress += new BackgroundTaskProgressEventHandler(task_Progress);
task.Completed += new BackgroundTaskCompletedEventHandler(task_Completed);
}
21 Consejos Heisenberg para conseguir Apps W10 con 99% de pureza Talks4Kids
DEMO III
Background Task
22
iggers
Consejos Heisenberg para conseguir Apps W10 con 99% de pureza Talks4Kids
Tr
45
SystemTrigger
TimeTrigger
MaintenanceTrigger
DeviceUseTrigger
DeviceServicingTrigger
PushNotificationTrigger
CachedFileUpdaterTrigger
DeviceConnectionChangeTrigger
GattCharacteristicNotificationTrigger
RfcommConnectionTrigger
LocationTrigger
AppointmentStoreNotificationTrigger
ContactStoreNotificationTrigger
BluetoothLEAdvertisementWatcherTrigger
BluetoothLEAdvertisementPublisherTrigger
DeviceWatcherTrigger
ActivitySensorTrigger
SensorDataThresholdTrigger
ToastNotificationHistoryChangedTrigger
ToastNotificationActionTrigger
ApplicationTrigger
MediaProcessingTrigger
SocketActivityTrigger
23
iggers basados en tareas de fondo
Consejos Heisenberg para conseguir Apps W10 con 99% de pureza Talks4Kids
Tr
44
Las Apps pueden suscribirse a triggers
Solo se ejecutará *cuando* el trigger es lanzado
Ejemplos:
• Push notification
• Geofencing
• BLE device
• Timer
• App Services
24 Consejos Heisenberg para conseguir Apps W10 con 99% de pureza Talks4Kids
DEMO IV
TimeTrigger
25
stión de recursos
Consejos Heisenberg para conseguir Apps W10 con 99% de pureza Talks4Kids
Ge
56
Default Background Tasks
Guaranteed minimum execution time of 25 secs
Example 512MB Mobile device
Tipo de tarea
Límite
de
memori
a MB
Tiempo
de vida CPU
Bloquea
en
modo
Batt-Sav
Default Background Task 16 30 sec 10% S
Long-Running 16
∞ 10% S
Correrá durante el tiempo possible permitido por los recursos
disponibles
No hay garantía de ejecución
ApplicationTrigger, MaintenanceTrigger, DeviceUseTrigger
26
-Proc Background Tasks
Consejos Heisenberg para conseguir Apps W10 con 99% de pureza Talks4Kids
In
53
Default Background Task
Alojado en un proceso separado
Con límites de memoria diferentes
In Proc Background Task
Alojado en proceso específico
Comparte límites de memoria
<Extension Category="windows.backgroundTasks"
EntryPoint="BackgroundTasks.TimerTask“
Executable="InProcBackgroundTask.exe">
27
plication Trigger
Consejos Heisenberg para conseguir Apps W10 con 99% de pureza Talks4Kids
Ap
56
• Opportunistic task
• Lanzado de la App en foreground
• Muy útil para tareas de inicialización y sincronización de datos
28 Consejos Heisenberg para conseguir Apps W10 con 99% de pureza Talks4Kids
DEMO V
Application Trigger
29
La comunicación es clave!
30
rvicios de Aplicación?
Consejos Heisenberg para conseguir Apps W10 con 99% de pureza Talks4Kids
Se
56
UWP ofrece muchas APIs destinadas a interactuar con la plataforma
• Windows.ApplicationModel.Contacts
• Windows.ApplicationModel.Email
• Windows.System.Launcher.LaunchUriAsync para lanzar la configuración, mapas, la tienda,
etc…
• Y mucho más…
UWP también ofrece APIs para interactuar con otras Apps
• Asociaciones Uri usando LaunchUriAsync
• Asociaciones de ficheros con LaunchFileAsync
• LaunchUriForResultsAsync
• App Services
31 Consejos Heisenberg para conseguir Apps W10 con 99% de pureza Talks4Kids
Con los App Services, las Apps
Windows pueden proveer servicios
a otras Apps Windows
32
ensa en “servicios web” en Apps
Consejos Heisenberg para conseguir Apps W10 con 99% de pureza Talks4Kids
Pi
33
App Cliente A
App Cliente B
Background Task
App con App Service
33
ensa en “servicios web” en Apps
Consejos Heisenberg para conseguir Apps W10 con 99% de pureza Talks4Kids
Pi
33
App Service que
decodifica códigos de
barras
Bytes de la imagen en
ValueSet o FileToken
Información
decodificada
34
p Services – El Cliente
Consejos Heisenberg para conseguir Apps W10 con 99% de pureza Talks4Kids
Ap
56
AppServiceConnection connection = new AppServiceConnection();
connection.AppServiceName = "microsoftDX-appservicesdemo";
connection.PackageFamilyName = "24919ArunjeetSingh.InstapaperIt";
AppServiceConnectionStatus connectionStatus = await connection.OpenAsync();
if (connectionStatus == AppServiceConnectionStatus.Success)
{
//Send data to the service
var message = new ValueSet();
message.Add("Command", "CalcSum");
message.Add("Value1", Int32.Parse(Value1.Text));
message.Add("Value2", Int32.Parse(Value2.Text));
//Send message and wait for response
AppServiceResponse response = await connection.SendMessageAsync(message);
if (response.Status == AppServiceResponseStatus.Success)
{
int sum = (int)response.Message["Result"];
new MessageDialog("Result=" + sum).ShowAsync();
}
}
else
{
//Drive the user to store to install the app that provides the app service
}
35
p Services – El servicio (1/2)
Consejos Heisenberg para conseguir Apps W10 con 99% de pureza Talks4Kids
Ap
56
namespace AppServicesDemoTask
{
public sealed class AppServiceTask : IBackgroundTask
{
private static BackgroundTaskDeferral _serviceDeferral;
public void Run(IBackgroundTaskInstance taskInstance)
{
// Associate a cancellation handler with the background task.
taskInstance.Canceled += TaskInstance_Canceled;
// Get the deferral object from the task instance
_serviceDeferral = taskInstance.GetDeferral();
var appService = taskInstance.TriggerDetails as AppServiceTriggerDetails;
if (appService.Name == "microsoftDX-appservicesdemo")
{
//Maybe ValidateCaller(appService.CallerPackageFamilyName) ??
appService.AppServiceConnection.RequestReceived += RequestReceived;
}
}
...
36
p Services – El servicio (2/2)
Consejos Heisenberg para conseguir Apps W10 con 99% de pureza Talks4Kids
Ap
56
namespace AppServicesDemoTask
{
public sealed class AppServiceTask : IBackgroundTask
{
private static BackgroundTaskDeferral _serviceDeferral;
public void Run(IBackgroundTaskInstance taskInstance)
{
// Associate a cancellation handler with the background task.
taskInstance.Canceled += TaskInstance_Canceled;
// Get the deferral object from the task instance
_serviceDeferral = taskInstance.GetDeferral();
var appService = taskInstance.TriggerDetails as AppServiceTriggerDetails;
if (appService.Name == "microsoftDX-appservicesdemo")
{
//Maybe ValidateCaller(appService.CallerPackageFamilyName) ??
appService.AppServiceConnection.RequestReceived += RequestReceived;
}
}
...
37
clarando el servicio
Consejos Heisenberg para conseguir Apps W10 con 99% de pureza Talks4Kids
De
56
<?xml version="1.0" encoding="utf-8"?>
<Package xmlns="http://schemas.microsoft.com/appx/manifest/foundation/windows10" ... >
<Applications>
<Application Id="App“
... >
<Extensions>
<uap:Extension Category="windows.appService“
EntryPoint="AppServicesDemoTask.AppServiceTask">
<uap:AppService Name="microsoftDX-appservicesdemo" />
</uap:Extension>
</Extensions>
</Application>
</Applications>
<Capabilities>
<Capability Name="internetClient" />
</Capabilities>
</Package>
38
municación en dos sentidos
Consejos Heisenberg para conseguir Apps W10 con 99% de pureza Talks4Kids
Co
56
Cliente y servidor pueden mantener abierto una canal de comunicación en dos sentidos
El cliente puede utilizar el evento RequestReceived en su propia
instancia de AppServiceConnection
Ambos, cliente y servidor, pueden enviar y recibir mensajes
AppServiceConnectionStatus connectionStatus = await connection.OpenAsync();
if (connectionStatus == AppServiceConnectionStatus.Success)
{
connection.RequestReceived += OnRequestReceived;
}
39
tendiendo el PackageFamilyName
Consejos Heisenberg para conseguir Apps W10 con 99% de pureza Talks4Kids
Ob
27
En, ‘Tienda– Asociar App con la tienda’ establecemos el PackageFamilyName
Podemos usar Package.Current.Id.FamilyName para obtener el PFN y usarlo depurando
40 Consejos Heisenberg para conseguir Apps W10 con 99% de pureza Talks4Kids
Consejos en depuración
41
purando App Services
Consejos Heisenberg para conseguir Apps W10 con 99% de pureza Talks4Kids
De
56
1. Establecemos breakpoints en el
código del servicio
2. Marcamos ‘Do not launch but
debug my code when it starts’ en
las propiedades del proyecto
3. Lanzamos la App del servicio en en
el debugger – nada ocurre!
4. Lanzamos la App cliente que se
conecta al servicio
5. El debugger se para en nuestros
breakpoints del servicio!
42
clo de vida de un App Service
Consejos Heisenberg para conseguir Apps W10 con 99% de pureza Talks4Kids
Ci
56
El servicio se active bajo demanda
La Background Task es activada por medio de un AppServiceTrigger
El cliente puede terminar con el servicio hacienda un dispose de su
AppServiceConnection o bien, enviando un mensaje con instrucciones
al servicio para que realice shutdown
La falta de recursos puede provocar la terminación del servicio
La App que usa el servicio obtendrá AppServiceConnectionStatus.ResourcesNotAvailable
cuando intenta conectar
Obtendrá AppServiceResponseStatus.ResourceLimitsExceeded cuando envía mensajes
43 Consejos Heisenberg para conseguir Apps W10 con 99% de pureza Talks4Kids
DEMO VI
App Service
44 Consejos Heisenberg para conseguir Apps W10 con 99% de pureza Talks4Kids
Otros detalles a tener en cuenta
45
otocolo
Consejos Heisenberg para conseguir Apps W10 con 99% de pureza Talks4Kids
Pr
56
Los App Services han sido diseñados para ser ligeros y flexibles
inspirados en el modelo de servicios web REST
API simple basada en mensajes Petición-Respuesta
Datos empaquetados en ValueSets
Fácil de usar con diferentes payloads
Cuando se publica un App Service, se esta definiendo un endpoint de
comunicación
Un endpoint de un App Service otorga a la App que lo utiliza un camino para enviar
información
También otorga a la App que lo utiliza una vía para recibir información
46 Consejos Heisenberg para conseguir Apps W10 con 99% de pureza Talks4Kids
Los App services nos ofrecen
una nueva vía de Comunicación
entre aplicaciones
eguntasPr
¿?
22
spuestasRe
¿?
y
nsejos Heisenberg para
conseguir Apps Windows
10 con 99% de pureza
Talk4 he ds
Co
32
Ki
22
Javier Suárez Ruiz
Muchas gracias por
vuestro tiempo!

Más contenido relacionado

La actualidad más candente

WinObjC: Windows Bridge para iOS
WinObjC: Windows Bridge para iOSWinObjC: Windows Bridge para iOS
WinObjC: Windows Bridge para iOSJavier Suárez Ruiz
 
Tus aplicaciones en pantalla grande con Xbox One
Tus aplicaciones en pantalla grande con Xbox One Tus aplicaciones en pantalla grande con Xbox One
Tus aplicaciones en pantalla grande con Xbox One Javier Suárez Ruiz
 
Introducción al desarrollo de apps móviles multiplataforma con Xamarin.Forms
Introducción al desarrollo de apps móviles multiplataforma con Xamarin.FormsIntroducción al desarrollo de apps móviles multiplataforma con Xamarin.Forms
Introducción al desarrollo de apps móviles multiplataforma con Xamarin.FormsJavier Suárez Ruiz
 
Codemotion 2015: UI Tests, Test Cloud y CI con Apps Xamarin
Codemotion 2015: UI Tests, Test Cloud y CI con Apps XamarinCodemotion 2015: UI Tests, Test Cloud y CI con Apps Xamarin
Codemotion 2015: UI Tests, Test Cloud y CI con Apps XamarinJavier Suárez Ruiz
 
Xamarin Dev Days Málaga 2017 - Apps conectadas con Azure
Xamarin Dev Days Málaga 2017 - Apps conectadas con AzureXamarin Dev Days Málaga 2017 - Apps conectadas con Azure
Xamarin Dev Days Málaga 2017 - Apps conectadas con AzureJavier Suárez Ruiz
 
Microsoft Tech Summit - Taller Xamarin
Microsoft Tech Summit - Taller XamarinMicrosoft Tech Summit - Taller Xamarin
Microsoft Tech Summit - Taller XamarinJavier Suárez Ruiz
 
Introducción a Xamarin Forms con XAML
Introducción a Xamarin Forms con XAMLIntroducción a Xamarin Forms con XAML
Introducción a Xamarin Forms con XAMLSorey García
 
Plain Concepts Tech Day: Desarrollo de aplicaciones multiplataforma con Xamarin
Plain Concepts Tech Day:  Desarrollo de aplicaciones multiplataforma con XamarinPlain Concepts Tech Day:  Desarrollo de aplicaciones multiplataforma con Xamarin
Plain Concepts Tech Day: Desarrollo de aplicaciones multiplataforma con XamarinJavier Suárez Ruiz
 
Crear Apps móviles multiplataforma con Xamarin compartiendo la mayor cantidad...
Crear Apps móviles multiplataforma con Xamarin compartiendo la mayor cantidad...Crear Apps móviles multiplataforma con Xamarin compartiendo la mayor cantidad...
Crear Apps móviles multiplataforma con Xamarin compartiendo la mayor cantidad...Javier Suárez Ruiz
 
Integración Continua con Apps Xamarin
Integración Continua con Apps XamarinIntegración Continua con Apps Xamarin
Integración Continua con Apps XamarinJavier Suárez Ruiz
 
Windows 10: Hel10 World! - Novedades XAML
Windows 10: Hel10 World! - Novedades XAMLWindows 10: Hel10 World! - Novedades XAML
Windows 10: Hel10 World! - Novedades XAMLJavier Suárez Ruiz
 
Introducción a las Aplicaciones Universales
Introducción a las Aplicaciones UniversalesIntroducción a las Aplicaciones Universales
Introducción a las Aplicaciones UniversalesJavier Suárez Ruiz
 
[dotNetSpain2016] Aumentando nuestra productividad en Xamarin
[dotNetSpain2016] Aumentando nuestra productividad en Xamarin[dotNetSpain2016] Aumentando nuestra productividad en Xamarin
[dotNetSpain2016] Aumentando nuestra productividad en XamarinJavier Suárez Ruiz
 
Arquitectura en Aplicaciones Xamarin
Arquitectura en Aplicaciones XamarinArquitectura en Aplicaciones Xamarin
Arquitectura en Aplicaciones XamarinJavier Suárez Ruiz
 

La actualidad más candente (20)

Desktop App Converter
Desktop App ConverterDesktop App Converter
Desktop App Converter
 
WinObjC: Windows Bridge para iOS
WinObjC: Windows Bridge para iOSWinObjC: Windows Bridge para iOS
WinObjC: Windows Bridge para iOS
 
Reconnect(); Sevilla - Keynote
Reconnect(); Sevilla - KeynoteReconnect(); Sevilla - Keynote
Reconnect(); Sevilla - Keynote
 
Tus aplicaciones en pantalla grande con Xbox One
Tus aplicaciones en pantalla grande con Xbox One Tus aplicaciones en pantalla grande con Xbox One
Tus aplicaciones en pantalla grande con Xbox One
 
Windows 10: Novedades en XAML
Windows 10: Novedades en XAMLWindows 10: Novedades en XAML
Windows 10: Novedades en XAML
 
Introducción al desarrollo de apps móviles multiplataforma con Xamarin.Forms
Introducción al desarrollo de apps móviles multiplataforma con Xamarin.FormsIntroducción al desarrollo de apps móviles multiplataforma con Xamarin.Forms
Introducción al desarrollo de apps móviles multiplataforma con Xamarin.Forms
 
Codemotion 2015: UI Tests, Test Cloud y CI con Apps Xamarin
Codemotion 2015: UI Tests, Test Cloud y CI con Apps XamarinCodemotion 2015: UI Tests, Test Cloud y CI con Apps Xamarin
Codemotion 2015: UI Tests, Test Cloud y CI con Apps Xamarin
 
Xamarin Dev Days Málaga 2017 - Apps conectadas con Azure
Xamarin Dev Days Málaga 2017 - Apps conectadas con AzureXamarin Dev Days Málaga 2017 - Apps conectadas con Azure
Xamarin Dev Days Málaga 2017 - Apps conectadas con Azure
 
Microsoft Tech Summit - Taller Xamarin
Microsoft Tech Summit - Taller XamarinMicrosoft Tech Summit - Taller Xamarin
Microsoft Tech Summit - Taller Xamarin
 
Introducción a Xamarin Forms con XAML
Introducción a Xamarin Forms con XAMLIntroducción a Xamarin Forms con XAML
Introducción a Xamarin Forms con XAML
 
Novedades de Xamarin 4
Novedades de Xamarin 4Novedades de Xamarin 4
Novedades de Xamarin 4
 
Plain Concepts Tech Day: Desarrollo de aplicaciones multiplataforma con Xamarin
Plain Concepts Tech Day:  Desarrollo de aplicaciones multiplataforma con XamarinPlain Concepts Tech Day:  Desarrollo de aplicaciones multiplataforma con Xamarin
Plain Concepts Tech Day: Desarrollo de aplicaciones multiplataforma con Xamarin
 
Crear Apps móviles multiplataforma con Xamarin compartiendo la mayor cantidad...
Crear Apps móviles multiplataforma con Xamarin compartiendo la mayor cantidad...Crear Apps móviles multiplataforma con Xamarin compartiendo la mayor cantidad...
Crear Apps móviles multiplataforma con Xamarin compartiendo la mayor cantidad...
 
Integración Continua con Apps Xamarin
Integración Continua con Apps XamarinIntegración Continua con Apps Xamarin
Integración Continua con Apps Xamarin
 
Windows 10: Hel10 World! - Novedades XAML
Windows 10: Hel10 World! - Novedades XAMLWindows 10: Hel10 World! - Novedades XAML
Windows 10: Hel10 World! - Novedades XAML
 
Introducción a Windows UI
Introducción a Windows UIIntroducción a Windows UI
Introducción a Windows UI
 
Introducción a las Aplicaciones Universales
Introducción a las Aplicaciones UniversalesIntroducción a las Aplicaciones Universales
Introducción a las Aplicaciones Universales
 
[dotNetSpain2016] Aumentando nuestra productividad en Xamarin
[dotNetSpain2016] Aumentando nuestra productividad en Xamarin[dotNetSpain2016] Aumentando nuestra productividad en Xamarin
[dotNetSpain2016] Aumentando nuestra productividad en Xamarin
 
Xamarin y Microsoft Azure
Xamarin y Microsoft AzureXamarin y Microsoft Azure
Xamarin y Microsoft Azure
 
Arquitectura en Aplicaciones Xamarin
Arquitectura en Aplicaciones XamarinArquitectura en Aplicaciones Xamarin
Arquitectura en Aplicaciones Xamarin
 

Destacado

Regreso al futuro, la proposición indecente de Microsoft
Regreso al futuro, la proposición indecente de MicrosoftRegreso al futuro, la proposición indecente de Microsoft
Regreso al futuro, la proposición indecente de MicrosoftJavier Suárez Ruiz
 
Windows 10: One SDK to rule them all
Windows 10: One SDK to rule them allWindows 10: One SDK to rule them all
Windows 10: One SDK to rule them allJavier Suárez Ruiz
 
Crear Apps Multiplataforma compartiendo la mayor cantidad con Xamarin
Crear Apps Multiplataforma compartiendo la mayor cantidad con XamarinCrear Apps Multiplataforma compartiendo la mayor cantidad con Xamarin
Crear Apps Multiplataforma compartiendo la mayor cantidad con XamarinJavier Suárez Ruiz
 
Introducción al desarrollo de Apps en Windows 10
Introducción al desarrollo de Apps en  Windows 10Introducción al desarrollo de Apps en  Windows 10
Introducción al desarrollo de Apps en Windows 10Javier Suárez Ruiz
 
Interfaces Adaptativas en Windows 10
Interfaces Adaptativas en Windows 10Interfaces Adaptativas en Windows 10
Interfaces Adaptativas en Windows 10Javier Suárez Ruiz
 
Creando Aplicaciones UWP para Xbox One
Creando Aplicaciones UWP para Xbox OneCreando Aplicaciones UWP para Xbox One
Creando Aplicaciones UWP para Xbox OneJavier Suárez Ruiz
 

Destacado (9)

Regreso al futuro, la proposición indecente de Microsoft
Regreso al futuro, la proposición indecente de MicrosoftRegreso al futuro, la proposición indecente de Microsoft
Regreso al futuro, la proposición indecente de Microsoft
 
Windows 10: One SDK to rule them all
Windows 10: One SDK to rule them allWindows 10: One SDK to rule them all
Windows 10: One SDK to rule them all
 
Taller Windows 10 TLP Innova
Taller Windows 10 TLP InnovaTaller Windows 10 TLP Innova
Taller Windows 10 TLP Innova
 
Crear Apps Multiplataforma compartiendo la mayor cantidad con Xamarin
Crear Apps Multiplataforma compartiendo la mayor cantidad con XamarinCrear Apps Multiplataforma compartiendo la mayor cantidad con Xamarin
Crear Apps Multiplataforma compartiendo la mayor cantidad con Xamarin
 
Introducción al desarrollo de Apps en Windows 10
Introducción al desarrollo de Apps en  Windows 10Introducción al desarrollo de Apps en  Windows 10
Introducción al desarrollo de Apps en Windows 10
 
Interfaces Adaptativas en Windows 10
Interfaces Adaptativas en Windows 10Interfaces Adaptativas en Windows 10
Interfaces Adaptativas en Windows 10
 
Novedades en XAML
Novedades en XAMLNovedades en XAML
Novedades en XAML
 
Extendiendo Xamarin.Forms
Extendiendo Xamarin.FormsExtendiendo Xamarin.Forms
Extendiendo Xamarin.Forms
 
Creando Aplicaciones UWP para Xbox One
Creando Aplicaciones UWP para Xbox OneCreando Aplicaciones UWP para Xbox One
Creando Aplicaciones UWP para Xbox One
 

Similar a Talks4Kids 2015 - Consejos Heisenberg para conseguir Apps Windows 10 con 99% de pureza

Presentación Evenge #hackathonugr
Presentación Evenge #hackathonugrPresentación Evenge #hackathonugr
Presentación Evenge #hackathonugrIvan Ortega
 
Manual de programas ivan lopez g264 b24
Manual de programas ivan lopez g264   b24Manual de programas ivan lopez g264   b24
Manual de programas ivan lopez g264 b24ivansh1990
 
Analitics: Monitoriza tus aplicaciones móviles
Analitics: Monitoriza tus aplicaciones móvilesAnalitics: Monitoriza tus aplicaciones móviles
Analitics: Monitoriza tus aplicaciones móvilesPlain Concepts
 
Tutorial windows azure con visual studio 2010
Tutorial windows azure con visual studio 2010Tutorial windows azure con visual studio 2010
Tutorial windows azure con visual studio 2010Naim Jhon Cruzado Paredes
 
Visual Studio 2017 Launch Event Sevilla
Visual Studio 2017 Launch Event SevillaVisual Studio 2017 Launch Event Sevilla
Visual Studio 2017 Launch Event SevillaJavier Suárez Ruiz
 
Mi primera aplicación para windows 10
Mi primera aplicación para windows 10Mi primera aplicación para windows 10
Mi primera aplicación para windows 10Víctor Moreno
 
Appcircus Academy: Integración de Social Media en Android
Appcircus Academy: Integración de Social Media en AndroidAppcircus Academy: Integración de Social Media en Android
Appcircus Academy: Integración de Social Media en AndroidAlberto Ruibal
 
Desarrollo de Aplicaciones Metro en Windows 8
Desarrollo de Aplicaciones Metro en Windows 8Desarrollo de Aplicaciones Metro en Windows 8
Desarrollo de Aplicaciones Metro en Windows 8Rodolfo Finochietti
 
Programación web con PHP con Tecnología Bootstrap.
Programación web con PHP con Tecnología Bootstrap.Programación web con PHP con Tecnología Bootstrap.
Programación web con PHP con Tecnología Bootstrap.Jose Fernandez
 
EFC-Programación .net-Luis Fernando Aguas - 15012022 1500.pptx
EFC-Programación .net-Luis Fernando Aguas - 15012022 1500.pptxEFC-Programación .net-Luis Fernando Aguas - 15012022 1500.pptx
EFC-Programación .net-Luis Fernando Aguas - 15012022 1500.pptxLuis Fernando Aguas Bucheli
 
"Los Imprescindibles de .NetCore"
"Los Imprescindibles de .NetCore""Los Imprescindibles de .NetCore"
"Los Imprescindibles de .NetCore"www.encamina.com
 
Prepara tus apps de SharePoint y Office 365 para el futuro
Prepara tus apps de SharePoint y Office 365 para el futuroPrepara tus apps de SharePoint y Office 365 para el futuro
Prepara tus apps de SharePoint y Office 365 para el futuroMiguel Tabera
 
Meetup Madrid 6 Marzo 2024 - MuleSoft en el mundo real: ejemplos de casos de ...
Meetup Madrid 6 Marzo 2024 - MuleSoft en el mundo real: ejemplos de casos de ...Meetup Madrid 6 Marzo 2024 - MuleSoft en el mundo real: ejemplos de casos de ...
Meetup Madrid 6 Marzo 2024 - MuleSoft en el mundo real: ejemplos de casos de ...jorgelebrato
 

Similar a Talks4Kids 2015 - Consejos Heisenberg para conseguir Apps Windows 10 con 99% de pureza (20)

Presentación Evenge #hackathonugr
Presentación Evenge #hackathonugrPresentación Evenge #hackathonugr
Presentación Evenge #hackathonugr
 
Manual de programas ivan lopez g264 b24
Manual de programas ivan lopez g264   b24Manual de programas ivan lopez g264   b24
Manual de programas ivan lopez g264 b24
 
DevOps on AZURE
DevOps on AZUREDevOps on AZURE
DevOps on AZURE
 
Analitics: Monitoriza tus aplicaciones móviles
Analitics: Monitoriza tus aplicaciones móvilesAnalitics: Monitoriza tus aplicaciones móviles
Analitics: Monitoriza tus aplicaciones móviles
 
Visual studio 2010
Visual studio 2010Visual studio 2010
Visual studio 2010
 
Aws Elastic Beanstalk + Docker
Aws Elastic Beanstalk + DockerAws Elastic Beanstalk + Docker
Aws Elastic Beanstalk + Docker
 
Tutorial windows azure con visual studio 2010
Tutorial windows azure con visual studio 2010Tutorial windows azure con visual studio 2010
Tutorial windows azure con visual studio 2010
 
Visual Studio 2017 Launch Event Sevilla
Visual Studio 2017 Launch Event SevillaVisual Studio 2017 Launch Event Sevilla
Visual Studio 2017 Launch Event Sevilla
 
Mi primera aplicación para windows 10
Mi primera aplicación para windows 10Mi primera aplicación para windows 10
Mi primera aplicación para windows 10
 
Appcircus Academy: Integración de Social Media en Android
Appcircus Academy: Integración de Social Media en AndroidAppcircus Academy: Integración de Social Media en Android
Appcircus Academy: Integración de Social Media en Android
 
Programacion2
Programacion2Programacion2
Programacion2
 
Contenedores como Servicio con Docker
Contenedores como Servicio con DockerContenedores como Servicio con Docker
Contenedores como Servicio con Docker
 
Desarrollo de Aplicaciones Metro en Windows 8
Desarrollo de Aplicaciones Metro en Windows 8Desarrollo de Aplicaciones Metro en Windows 8
Desarrollo de Aplicaciones Metro en Windows 8
 
Programación web con PHP con Tecnología Bootstrap.
Programación web con PHP con Tecnología Bootstrap.Programación web con PHP con Tecnología Bootstrap.
Programación web con PHP con Tecnología Bootstrap.
 
Microservicios con Quarkus
Microservicios con QuarkusMicroservicios con Quarkus
Microservicios con Quarkus
 
EFC-Programación .net-Luis Fernando Aguas - 15012022 1500.pptx
EFC-Programación .net-Luis Fernando Aguas - 15012022 1500.pptxEFC-Programación .net-Luis Fernando Aguas - 15012022 1500.pptx
EFC-Programación .net-Luis Fernando Aguas - 15012022 1500.pptx
 
"Los Imprescindibles de .NetCore"
"Los Imprescindibles de .NetCore""Los Imprescindibles de .NetCore"
"Los Imprescindibles de .NetCore"
 
Prepara tus apps de SharePoint y Office 365 para el futuro
Prepara tus apps de SharePoint y Office 365 para el futuroPrepara tus apps de SharePoint y Office 365 para el futuro
Prepara tus apps de SharePoint y Office 365 para el futuro
 
DotNetDom: El futuro de Xamarin
DotNetDom: El futuro de XamarinDotNetDom: El futuro de Xamarin
DotNetDom: El futuro de Xamarin
 
Meetup Madrid 6 Marzo 2024 - MuleSoft en el mundo real: ejemplos de casos de ...
Meetup Madrid 6 Marzo 2024 - MuleSoft en el mundo real: ejemplos de casos de ...Meetup Madrid 6 Marzo 2024 - MuleSoft en el mundo real: ejemplos de casos de ...
Meetup Madrid 6 Marzo 2024 - MuleSoft en el mundo real: ejemplos de casos de ...
 

Más de Javier Suárez Ruiz

Cape Town MS Developer User Group: Xamarin Community Toolkit
Cape Town MS Developer User Group: Xamarin Community ToolkitCape Town MS Developer User Group: Xamarin Community Toolkit
Cape Town MS Developer User Group: Xamarin Community ToolkitJavier Suárez Ruiz
 
Tech Club Asturias: Un vistazo al presente y futuro de Xamarin.Forms
Tech Club Asturias: Un vistazo al presente y futuro de Xamarin.FormsTech Club Asturias: Un vistazo al presente y futuro de Xamarin.Forms
Tech Club Asturias: Un vistazo al presente y futuro de Xamarin.FormsJavier Suárez Ruiz
 
Monkey Conf 2020: Xamarin Community Toolkit: More possibilities with Xamarin....
Monkey Conf 2020: Xamarin Community Toolkit: More possibilities with Xamarin....Monkey Conf 2020: Xamarin Community Toolkit: More possibilities with Xamarin....
Monkey Conf 2020: Xamarin Community Toolkit: More possibilities with Xamarin....Javier Suárez Ruiz
 
Monkey Conf 2020: .NET MAUI Handlers
Monkey Conf 2020: .NET MAUI HandlersMonkey Conf 2020: .NET MAUI Handlers
Monkey Conf 2020: .NET MAUI HandlersJavier Suárez Ruiz
 
Creando controles para Xamarin.Forms
Creando controles para Xamarin.FormsCreando controles para Xamarin.Forms
Creando controles para Xamarin.FormsJavier Suárez Ruiz
 
Monkey Conf 2019: Presente y futuro de Xamarin.Forms
Monkey Conf 2019: Presente y futuro de Xamarin.FormsMonkey Conf 2019: Presente y futuro de Xamarin.Forms
Monkey Conf 2019: Presente y futuro de Xamarin.FormsJavier Suárez Ruiz
 
Crear interfaces de usuario atractivas con Xamarin.Forms
Crear interfaces de usuario atractivas con Xamarin.FormsCrear interfaces de usuario atractivas con Xamarin.Forms
Crear interfaces de usuario atractivas con Xamarin.FormsJavier Suárez Ruiz
 
DotNet 2019: Optimizando Apps con Xamarin.Forms
DotNet 2019: Optimizando Apps con Xamarin.FormsDotNet 2019: Optimizando Apps con Xamarin.Forms
DotNet 2019: Optimizando Apps con Xamarin.FormsJavier Suárez Ruiz
 
Monkey Conf 2018: Conociendo Xamarin.Forms Shell
Monkey Conf 2018: Conociendo Xamarin.Forms ShellMonkey Conf 2018: Conociendo Xamarin.Forms Shell
Monkey Conf 2018: Conociendo Xamarin.Forms ShellJavier Suárez Ruiz
 
Analizando interfaces de usuario avanzadas con Xamarin.Forms
Analizando interfaces de usuario avanzadas con Xamarin.FormsAnalizando interfaces de usuario avanzadas con Xamarin.Forms
Analizando interfaces de usuario avanzadas con Xamarin.FormsJavier Suárez Ruiz
 
OpenSouthCode 2018: Taller Xamarin
OpenSouthCode 2018: Taller XamarinOpenSouthCode 2018: Taller Xamarin
OpenSouthCode 2018: Taller XamarinJavier Suárez Ruiz
 
DotNet2018: Xamarin.Forms Everywhere!
DotNet2018: Xamarin.Forms Everywhere!DotNet2018: Xamarin.Forms Everywhere!
DotNet2018: Xamarin.Forms Everywhere!Javier Suárez Ruiz
 
Desarrollo Xamarin, más allá del desarrollo
Desarrollo Xamarin, más allá del desarrolloDesarrollo Xamarin, más allá del desarrollo
Desarrollo Xamarin, más allá del desarrolloJavier Suárez Ruiz
 
Aumento de productividad, herramientas Xamarin
Aumento de productividad, herramientas XamarinAumento de productividad, herramientas Xamarin
Aumento de productividad, herramientas XamarinJavier Suárez Ruiz
 

Más de Javier Suárez Ruiz (20)

Cape Town MS Developer User Group: Xamarin Community Toolkit
Cape Town MS Developer User Group: Xamarin Community ToolkitCape Town MS Developer User Group: Xamarin Community Toolkit
Cape Town MS Developer User Group: Xamarin Community Toolkit
 
Tech Club Asturias: Un vistazo al presente y futuro de Xamarin.Forms
Tech Club Asturias: Un vistazo al presente y futuro de Xamarin.FormsTech Club Asturias: Un vistazo al presente y futuro de Xamarin.Forms
Tech Club Asturias: Un vistazo al presente y futuro de Xamarin.Forms
 
Monkey Conf 2020: Xamarin Community Toolkit: More possibilities with Xamarin....
Monkey Conf 2020: Xamarin Community Toolkit: More possibilities with Xamarin....Monkey Conf 2020: Xamarin Community Toolkit: More possibilities with Xamarin....
Monkey Conf 2020: Xamarin Community Toolkit: More possibilities with Xamarin....
 
Monkey Conf 2020: .NET MAUI Handlers
Monkey Conf 2020: .NET MAUI HandlersMonkey Conf 2020: .NET MAUI Handlers
Monkey Conf 2020: .NET MAUI Handlers
 
Creando controles para Xamarin.Forms
Creando controles para Xamarin.FormsCreando controles para Xamarin.Forms
Creando controles para Xamarin.Forms
 
Monkey Conf 2019: Presente y futuro de Xamarin.Forms
Monkey Conf 2019: Presente y futuro de Xamarin.FormsMonkey Conf 2019: Presente y futuro de Xamarin.Forms
Monkey Conf 2019: Presente y futuro de Xamarin.Forms
 
Crear interfaces de usuario atractivas con Xamarin.Forms
Crear interfaces de usuario atractivas con Xamarin.FormsCrear interfaces de usuario atractivas con Xamarin.Forms
Crear interfaces de usuario atractivas con Xamarin.Forms
 
#XamarinUIJuly Summary
#XamarinUIJuly Summary#XamarinUIJuly Summary
#XamarinUIJuly Summary
 
DotNet 2019: Optimizando Apps con Xamarin.Forms
DotNet 2019: Optimizando Apps con Xamarin.FormsDotNet 2019: Optimizando Apps con Xamarin.Forms
DotNet 2019: Optimizando Apps con Xamarin.Forms
 
Taller Xamarin Monkey Conf 2018
Taller Xamarin Monkey Conf 2018Taller Xamarin Monkey Conf 2018
Taller Xamarin Monkey Conf 2018
 
Monkey Conf 2018: Conociendo Xamarin.Forms Shell
Monkey Conf 2018: Conociendo Xamarin.Forms ShellMonkey Conf 2018: Conociendo Xamarin.Forms Shell
Monkey Conf 2018: Conociendo Xamarin.Forms Shell
 
.Net Conf Sevilla 2018
.Net Conf Sevilla 2018.Net Conf Sevilla 2018
.Net Conf Sevilla 2018
 
Analizando interfaces de usuario avanzadas con Xamarin.Forms
Analizando interfaces de usuario avanzadas con Xamarin.FormsAnalizando interfaces de usuario avanzadas con Xamarin.Forms
Analizando interfaces de usuario avanzadas con Xamarin.Forms
 
OpenSouthCode 2018: Taller Xamarin
OpenSouthCode 2018: Taller XamarinOpenSouthCode 2018: Taller Xamarin
OpenSouthCode 2018: Taller Xamarin
 
DotNet2018: Xamarin.Forms Everywhere!
DotNet2018: Xamarin.Forms Everywhere!DotNet2018: Xamarin.Forms Everywhere!
DotNet2018: Xamarin.Forms Everywhere!
 
Novedades Xamarin 3.0 Preview
Novedades Xamarin 3.0 PreviewNovedades Xamarin 3.0 Preview
Novedades Xamarin 3.0 Preview
 
Desarrollo Xamarin, más allá del desarrollo
Desarrollo Xamarin, más allá del desarrolloDesarrollo Xamarin, más allá del desarrollo
Desarrollo Xamarin, más allá del desarrollo
 
Introducción a Xamarin.Forms
Introducción a Xamarin.FormsIntroducción a Xamarin.Forms
Introducción a Xamarin.Forms
 
Introducción a Xamarin
Introducción a XamarinIntroducción a Xamarin
Introducción a Xamarin
 
Aumento de productividad, herramientas Xamarin
Aumento de productividad, herramientas XamarinAumento de productividad, herramientas Xamarin
Aumento de productividad, herramientas Xamarin
 

Último

El_Blog_como_herramienta_de_publicacion_y_consulta_de_investigacion.pptx
El_Blog_como_herramienta_de_publicacion_y_consulta_de_investigacion.pptxEl_Blog_como_herramienta_de_publicacion_y_consulta_de_investigacion.pptx
El_Blog_como_herramienta_de_publicacion_y_consulta_de_investigacion.pptxAlexander López
 
Medidas de formas, coeficiente de asimetría y coeficiente de curtosis.pptx
Medidas de formas, coeficiente de asimetría y coeficiente de curtosis.pptxMedidas de formas, coeficiente de asimetría y coeficiente de curtosis.pptx
Medidas de formas, coeficiente de asimetría y coeficiente de curtosis.pptxaylincamaho
 
Actividad integradora 6 CREAR UN RECURSO MULTIMEDIA
Actividad integradora 6    CREAR UN RECURSO MULTIMEDIAActividad integradora 6    CREAR UN RECURSO MULTIMEDIA
Actividad integradora 6 CREAR UN RECURSO MULTIMEDIA241531640
 
tics en la vida cotidiana prepa en linea modulo 1.pptx
tics en la vida cotidiana prepa en linea modulo 1.pptxtics en la vida cotidiana prepa en linea modulo 1.pptx
tics en la vida cotidiana prepa en linea modulo 1.pptxazmysanros90
 
LUXOMETRO EN SALUD OCUPACIONAL(FINAL).ppt
LUXOMETRO EN SALUD OCUPACIONAL(FINAL).pptLUXOMETRO EN SALUD OCUPACIONAL(FINAL).ppt
LUXOMETRO EN SALUD OCUPACIONAL(FINAL).pptchaverriemily794
 
LAS_TIC_COMO_HERRAMIENTAS_EN_LA_INVESTIGACIÓN.pptx
LAS_TIC_COMO_HERRAMIENTAS_EN_LA_INVESTIGACIÓN.pptxLAS_TIC_COMO_HERRAMIENTAS_EN_LA_INVESTIGACIÓN.pptx
LAS_TIC_COMO_HERRAMIENTAS_EN_LA_INVESTIGACIÓN.pptxAlexander López
 
Presentación inteligencia artificial en la actualidad
Presentación inteligencia artificial en la actualidadPresentación inteligencia artificial en la actualidad
Presentación inteligencia artificial en la actualidadMiguelAngelVillanuev48
 
La Electricidad Y La Electrónica Trabajo Tecnología.pdf
La Electricidad Y La Electrónica Trabajo Tecnología.pdfLa Electricidad Y La Electrónica Trabajo Tecnología.pdf
La Electricidad Y La Electrónica Trabajo Tecnología.pdfjeondanny1997
 
GonzalezGonzalez_Karina_M1S3AI6... .pptx
GonzalezGonzalez_Karina_M1S3AI6... .pptxGonzalezGonzalez_Karina_M1S3AI6... .pptx
GonzalezGonzalez_Karina_M1S3AI6... .pptx241523733
 
tarea de exposicion de senati zzzzzzzzzz
tarea de exposicion de senati zzzzzzzzzztarea de exposicion de senati zzzzzzzzzz
tarea de exposicion de senati zzzzzzzzzzAlexandergo5
 
Excel (1) tecnologia.pdf trabajo Excel taller
Excel  (1) tecnologia.pdf trabajo Excel tallerExcel  (1) tecnologia.pdf trabajo Excel taller
Excel (1) tecnologia.pdf trabajo Excel tallerValentinaTabares11
 
Los Microcontroladores PIC, Aplicaciones
Los Microcontroladores PIC, AplicacionesLos Microcontroladores PIC, Aplicaciones
Los Microcontroladores PIC, AplicacionesEdomar AR
 
El uso de las TIC's en la vida cotidiana.
El uso de las TIC's en la vida cotidiana.El uso de las TIC's en la vida cotidiana.
El uso de las TIC's en la vida cotidiana.241514949
 
Modelo de Presentacion Feria Robotica Educativa 2024 - Versión3.pptx
Modelo de Presentacion Feria Robotica Educativa 2024 - Versión3.pptxModelo de Presentacion Feria Robotica Educativa 2024 - Versión3.pptx
Modelo de Presentacion Feria Robotica Educativa 2024 - Versión3.pptxtjcesar1
 
Trabajo de tecnología excel avanzado.pdf
Trabajo de tecnología excel avanzado.pdfTrabajo de tecnología excel avanzado.pdf
Trabajo de tecnología excel avanzado.pdfedepmariaperez
 
Red Dorsal Nacional de Fibra Óptica y Redes Regionales del Perú
Red Dorsal Nacional de Fibra Óptica y Redes Regionales del PerúRed Dorsal Nacional de Fibra Óptica y Redes Regionales del Perú
Red Dorsal Nacional de Fibra Óptica y Redes Regionales del PerúCEFERINO DELGADO FLORES
 
Crear un recurso multimedia. Maricela_Ponce_DomingoM1S3AI6-1.pptx
Crear un recurso multimedia. Maricela_Ponce_DomingoM1S3AI6-1.pptxCrear un recurso multimedia. Maricela_Ponce_DomingoM1S3AI6-1.pptx
Crear un recurso multimedia. Maricela_Ponce_DomingoM1S3AI6-1.pptxNombre Apellidos
 
El uso de las tic en la vida ,lo importante que son
El uso de las tic en la vida ,lo importante  que sonEl uso de las tic en la vida ,lo importante  que son
El uso de las tic en la vida ,lo importante que son241514984
 
Mapa-conceptual-del-Origen-del-Universo-3.pptx
Mapa-conceptual-del-Origen-del-Universo-3.pptxMapa-conceptual-del-Origen-del-Universo-3.pptx
Mapa-conceptual-del-Origen-del-Universo-3.pptxMidwarHenryLOZAFLORE
 
Presentación sobre la Inteligencia Artificial
Presentación sobre la Inteligencia ArtificialPresentación sobre la Inteligencia Artificial
Presentación sobre la Inteligencia Artificialcynserafini89
 

Último (20)

El_Blog_como_herramienta_de_publicacion_y_consulta_de_investigacion.pptx
El_Blog_como_herramienta_de_publicacion_y_consulta_de_investigacion.pptxEl_Blog_como_herramienta_de_publicacion_y_consulta_de_investigacion.pptx
El_Blog_como_herramienta_de_publicacion_y_consulta_de_investigacion.pptx
 
Medidas de formas, coeficiente de asimetría y coeficiente de curtosis.pptx
Medidas de formas, coeficiente de asimetría y coeficiente de curtosis.pptxMedidas de formas, coeficiente de asimetría y coeficiente de curtosis.pptx
Medidas de formas, coeficiente de asimetría y coeficiente de curtosis.pptx
 
Actividad integradora 6 CREAR UN RECURSO MULTIMEDIA
Actividad integradora 6    CREAR UN RECURSO MULTIMEDIAActividad integradora 6    CREAR UN RECURSO MULTIMEDIA
Actividad integradora 6 CREAR UN RECURSO MULTIMEDIA
 
tics en la vida cotidiana prepa en linea modulo 1.pptx
tics en la vida cotidiana prepa en linea modulo 1.pptxtics en la vida cotidiana prepa en linea modulo 1.pptx
tics en la vida cotidiana prepa en linea modulo 1.pptx
 
LUXOMETRO EN SALUD OCUPACIONAL(FINAL).ppt
LUXOMETRO EN SALUD OCUPACIONAL(FINAL).pptLUXOMETRO EN SALUD OCUPACIONAL(FINAL).ppt
LUXOMETRO EN SALUD OCUPACIONAL(FINAL).ppt
 
LAS_TIC_COMO_HERRAMIENTAS_EN_LA_INVESTIGACIÓN.pptx
LAS_TIC_COMO_HERRAMIENTAS_EN_LA_INVESTIGACIÓN.pptxLAS_TIC_COMO_HERRAMIENTAS_EN_LA_INVESTIGACIÓN.pptx
LAS_TIC_COMO_HERRAMIENTAS_EN_LA_INVESTIGACIÓN.pptx
 
Presentación inteligencia artificial en la actualidad
Presentación inteligencia artificial en la actualidadPresentación inteligencia artificial en la actualidad
Presentación inteligencia artificial en la actualidad
 
La Electricidad Y La Electrónica Trabajo Tecnología.pdf
La Electricidad Y La Electrónica Trabajo Tecnología.pdfLa Electricidad Y La Electrónica Trabajo Tecnología.pdf
La Electricidad Y La Electrónica Trabajo Tecnología.pdf
 
GonzalezGonzalez_Karina_M1S3AI6... .pptx
GonzalezGonzalez_Karina_M1S3AI6... .pptxGonzalezGonzalez_Karina_M1S3AI6... .pptx
GonzalezGonzalez_Karina_M1S3AI6... .pptx
 
tarea de exposicion de senati zzzzzzzzzz
tarea de exposicion de senati zzzzzzzzzztarea de exposicion de senati zzzzzzzzzz
tarea de exposicion de senati zzzzzzzzzz
 
Excel (1) tecnologia.pdf trabajo Excel taller
Excel  (1) tecnologia.pdf trabajo Excel tallerExcel  (1) tecnologia.pdf trabajo Excel taller
Excel (1) tecnologia.pdf trabajo Excel taller
 
Los Microcontroladores PIC, Aplicaciones
Los Microcontroladores PIC, AplicacionesLos Microcontroladores PIC, Aplicaciones
Los Microcontroladores PIC, Aplicaciones
 
El uso de las TIC's en la vida cotidiana.
El uso de las TIC's en la vida cotidiana.El uso de las TIC's en la vida cotidiana.
El uso de las TIC's en la vida cotidiana.
 
Modelo de Presentacion Feria Robotica Educativa 2024 - Versión3.pptx
Modelo de Presentacion Feria Robotica Educativa 2024 - Versión3.pptxModelo de Presentacion Feria Robotica Educativa 2024 - Versión3.pptx
Modelo de Presentacion Feria Robotica Educativa 2024 - Versión3.pptx
 
Trabajo de tecnología excel avanzado.pdf
Trabajo de tecnología excel avanzado.pdfTrabajo de tecnología excel avanzado.pdf
Trabajo de tecnología excel avanzado.pdf
 
Red Dorsal Nacional de Fibra Óptica y Redes Regionales del Perú
Red Dorsal Nacional de Fibra Óptica y Redes Regionales del PerúRed Dorsal Nacional de Fibra Óptica y Redes Regionales del Perú
Red Dorsal Nacional de Fibra Óptica y Redes Regionales del Perú
 
Crear un recurso multimedia. Maricela_Ponce_DomingoM1S3AI6-1.pptx
Crear un recurso multimedia. Maricela_Ponce_DomingoM1S3AI6-1.pptxCrear un recurso multimedia. Maricela_Ponce_DomingoM1S3AI6-1.pptx
Crear un recurso multimedia. Maricela_Ponce_DomingoM1S3AI6-1.pptx
 
El uso de las tic en la vida ,lo importante que son
El uso de las tic en la vida ,lo importante  que sonEl uso de las tic en la vida ,lo importante  que son
El uso de las tic en la vida ,lo importante que son
 
Mapa-conceptual-del-Origen-del-Universo-3.pptx
Mapa-conceptual-del-Origen-del-Universo-3.pptxMapa-conceptual-del-Origen-del-Universo-3.pptx
Mapa-conceptual-del-Origen-del-Universo-3.pptx
 
Presentación sobre la Inteligencia Artificial
Presentación sobre la Inteligencia ArtificialPresentación sobre la Inteligencia Artificial
Presentación sobre la Inteligencia Artificial
 

Talks4Kids 2015 - Consejos Heisenberg para conseguir Apps Windows 10 con 99% de pureza

  • 1. nsejos Heisenberg para conseguir Apps Windows 10 con 99% de pureza Talk4 he ds Co 32 Ki 22 Javier Suárez Ruiz
  • 2. 2 lk4 KIDS 2015 con Fundación Theodora Consejos Heisenberg para conseguir Apps W10 con 99% de pureza Ta 99 Talks4Kids
  • 4. vier Suárez Ruiz Talk4 he ds Ja 99 Ki 22 Windows Platform Development MVP Software Developer Plain Concepts • Blog: http://geeks.ms/blogs/jsuarez • Email: javiersuarezruiz@hotmail.com • Twitter: @jsuarezruiz
  • 5. 5 ¿Qué vamos a ver? P 5 Ci 1 Tr 3 Ba 2 Ap 4 R 6 22 Talks4KidsConsejos Heisenberg para conseguir Apps W10 con 99% de pureza clo de vida ckgrounding iggers p Services reguntas espuestas
  • 8. 8 Consejos Heisenberg para conseguir Apps W10 con 99% de pureza Talks4Kids El ciclo de vida de una Aplicación
  • 9. 9 clo de vida Consejos Heisenberg para conseguir Apps W10 con 99% de pureza Ci 56 Las Apps pueden estar en 1 de los siguientes 3 estados: • Not Running • Running • Suspended La App recibe eventos en la transición entre diferentes estados • Exceptuando de: Suspended->NotRunning
  • 10. 10 Consejos Heisenberg para conseguir Apps W10 con 99% de pureza Talks4Kids DEMO I Suspender y reanudar
  • 11. 11 Consejos Heisenberg para conseguir Apps W10 con 99% de pureza Talks4Kids ¿Y si necesitamos más?
  • 12. 12 tendiendo el modo de ejecución Consejos Heisenberg para conseguir Apps W10 con 99% de pureza Talks4Kids Ex 36 Continua una session cuando la App ya no esta en primer plano
  • 13. 13 tendiendo el modo de ejecución Consejos Heisenberg para conseguir Apps W10 con 99% de pureza Talks4Kids Ex 36 Las Apps deben facilitar una razón Eventos revocados cuentan con <1 segundo
  • 14. 14 Consejos Heisenberg para conseguir Apps W10 con 99% de pureza Talks4Kids DEMO II Extendiendo el modo de ejecución
  • 15. 15 A veces, hay que trabajar, sin que nadie nos vea…
  • 16. 16 Consejos Heisenberg para conseguir Apps W10 con 99% de pureza Talks4Kids Ejecución en Background
  • 17. 17 Consejos Heisenberg para conseguir Apps W10 con 99% de pureza Talks4Kids Ej 23 Las Apps ofrecen contenido real-time incluso con la App suspendida Atraer usuarios a la App Les ofrece información y características ecución en Background
  • 18. 18 Consejos Heisenberg para conseguir Apps W10 con 99% de pureza Talks4Kids ¿De dónde venimos?
  • 19. 19 viaje de la convergenciaEl 56 Windows 10 Convergencia en el modelo de Backgrounding
  • 20. 20 gistrar una Background Task Consejos Heisenberg para conseguir Apps W10 con 99% de pureza Talks4Kids Re 21 private void RegisterBackgroundTasks() { BackgroundTaskBuilder builder = new BackgroundTaskBuilder(); builder.Name = "Background Test Class"; builder.TaskEntryPoint = "BackgroundTaskLibrary.TestClass"; IBackgroundTrigger trigger = new TimeTrigger(30, true); builder.SetTrigger(trigger); IBackgroundCondition condition = new SystemCondition(SystemConditionType.InternetAvailable); builder.AddCondition(condition); IBackgroundTaskRegistration task = builder.Register(); task.Progress += new BackgroundTaskProgressEventHandler(task_Progress); task.Completed += new BackgroundTaskCompletedEventHandler(task_Completed); }
  • 21. 21 Consejos Heisenberg para conseguir Apps W10 con 99% de pureza Talks4Kids DEMO III Background Task
  • 22. 22 iggers Consejos Heisenberg para conseguir Apps W10 con 99% de pureza Talks4Kids Tr 45 SystemTrigger TimeTrigger MaintenanceTrigger DeviceUseTrigger DeviceServicingTrigger PushNotificationTrigger CachedFileUpdaterTrigger DeviceConnectionChangeTrigger GattCharacteristicNotificationTrigger RfcommConnectionTrigger LocationTrigger AppointmentStoreNotificationTrigger ContactStoreNotificationTrigger BluetoothLEAdvertisementWatcherTrigger BluetoothLEAdvertisementPublisherTrigger DeviceWatcherTrigger ActivitySensorTrigger SensorDataThresholdTrigger ToastNotificationHistoryChangedTrigger ToastNotificationActionTrigger ApplicationTrigger MediaProcessingTrigger SocketActivityTrigger
  • 23. 23 iggers basados en tareas de fondo Consejos Heisenberg para conseguir Apps W10 con 99% de pureza Talks4Kids Tr 44 Las Apps pueden suscribirse a triggers Solo se ejecutará *cuando* el trigger es lanzado Ejemplos: • Push notification • Geofencing • BLE device • Timer • App Services
  • 24. 24 Consejos Heisenberg para conseguir Apps W10 con 99% de pureza Talks4Kids DEMO IV TimeTrigger
  • 25. 25 stión de recursos Consejos Heisenberg para conseguir Apps W10 con 99% de pureza Talks4Kids Ge 56 Default Background Tasks Guaranteed minimum execution time of 25 secs Example 512MB Mobile device Tipo de tarea Límite de memori a MB Tiempo de vida CPU Bloquea en modo Batt-Sav Default Background Task 16 30 sec 10% S Long-Running 16 ∞ 10% S Correrá durante el tiempo possible permitido por los recursos disponibles No hay garantía de ejecución ApplicationTrigger, MaintenanceTrigger, DeviceUseTrigger
  • 26. 26 -Proc Background Tasks Consejos Heisenberg para conseguir Apps W10 con 99% de pureza Talks4Kids In 53 Default Background Task Alojado en un proceso separado Con límites de memoria diferentes In Proc Background Task Alojado en proceso específico Comparte límites de memoria <Extension Category="windows.backgroundTasks" EntryPoint="BackgroundTasks.TimerTask“ Executable="InProcBackgroundTask.exe">
  • 27. 27 plication Trigger Consejos Heisenberg para conseguir Apps W10 con 99% de pureza Talks4Kids Ap 56 • Opportunistic task • Lanzado de la App en foreground • Muy útil para tareas de inicialización y sincronización de datos
  • 28. 28 Consejos Heisenberg para conseguir Apps W10 con 99% de pureza Talks4Kids DEMO V Application Trigger
  • 30. 30 rvicios de Aplicación? Consejos Heisenberg para conseguir Apps W10 con 99% de pureza Talks4Kids Se 56 UWP ofrece muchas APIs destinadas a interactuar con la plataforma • Windows.ApplicationModel.Contacts • Windows.ApplicationModel.Email • Windows.System.Launcher.LaunchUriAsync para lanzar la configuración, mapas, la tienda, etc… • Y mucho más… UWP también ofrece APIs para interactuar con otras Apps • Asociaciones Uri usando LaunchUriAsync • Asociaciones de ficheros con LaunchFileAsync • LaunchUriForResultsAsync • App Services
  • 31. 31 Consejos Heisenberg para conseguir Apps W10 con 99% de pureza Talks4Kids Con los App Services, las Apps Windows pueden proveer servicios a otras Apps Windows
  • 32. 32 ensa en “servicios web” en Apps Consejos Heisenberg para conseguir Apps W10 con 99% de pureza Talks4Kids Pi 33 App Cliente A App Cliente B Background Task App con App Service
  • 33. 33 ensa en “servicios web” en Apps Consejos Heisenberg para conseguir Apps W10 con 99% de pureza Talks4Kids Pi 33 App Service que decodifica códigos de barras Bytes de la imagen en ValueSet o FileToken Información decodificada
  • 34. 34 p Services – El Cliente Consejos Heisenberg para conseguir Apps W10 con 99% de pureza Talks4Kids Ap 56 AppServiceConnection connection = new AppServiceConnection(); connection.AppServiceName = "microsoftDX-appservicesdemo"; connection.PackageFamilyName = "24919ArunjeetSingh.InstapaperIt"; AppServiceConnectionStatus connectionStatus = await connection.OpenAsync(); if (connectionStatus == AppServiceConnectionStatus.Success) { //Send data to the service var message = new ValueSet(); message.Add("Command", "CalcSum"); message.Add("Value1", Int32.Parse(Value1.Text)); message.Add("Value2", Int32.Parse(Value2.Text)); //Send message and wait for response AppServiceResponse response = await connection.SendMessageAsync(message); if (response.Status == AppServiceResponseStatus.Success) { int sum = (int)response.Message["Result"]; new MessageDialog("Result=" + sum).ShowAsync(); } } else { //Drive the user to store to install the app that provides the app service }
  • 35. 35 p Services – El servicio (1/2) Consejos Heisenberg para conseguir Apps W10 con 99% de pureza Talks4Kids Ap 56 namespace AppServicesDemoTask { public sealed class AppServiceTask : IBackgroundTask { private static BackgroundTaskDeferral _serviceDeferral; public void Run(IBackgroundTaskInstance taskInstance) { // Associate a cancellation handler with the background task. taskInstance.Canceled += TaskInstance_Canceled; // Get the deferral object from the task instance _serviceDeferral = taskInstance.GetDeferral(); var appService = taskInstance.TriggerDetails as AppServiceTriggerDetails; if (appService.Name == "microsoftDX-appservicesdemo") { //Maybe ValidateCaller(appService.CallerPackageFamilyName) ?? appService.AppServiceConnection.RequestReceived += RequestReceived; } } ...
  • 36. 36 p Services – El servicio (2/2) Consejos Heisenberg para conseguir Apps W10 con 99% de pureza Talks4Kids Ap 56 namespace AppServicesDemoTask { public sealed class AppServiceTask : IBackgroundTask { private static BackgroundTaskDeferral _serviceDeferral; public void Run(IBackgroundTaskInstance taskInstance) { // Associate a cancellation handler with the background task. taskInstance.Canceled += TaskInstance_Canceled; // Get the deferral object from the task instance _serviceDeferral = taskInstance.GetDeferral(); var appService = taskInstance.TriggerDetails as AppServiceTriggerDetails; if (appService.Name == "microsoftDX-appservicesdemo") { //Maybe ValidateCaller(appService.CallerPackageFamilyName) ?? appService.AppServiceConnection.RequestReceived += RequestReceived; } } ...
  • 37. 37 clarando el servicio Consejos Heisenberg para conseguir Apps W10 con 99% de pureza Talks4Kids De 56 <?xml version="1.0" encoding="utf-8"?> <Package xmlns="http://schemas.microsoft.com/appx/manifest/foundation/windows10" ... > <Applications> <Application Id="App“ ... > <Extensions> <uap:Extension Category="windows.appService“ EntryPoint="AppServicesDemoTask.AppServiceTask"> <uap:AppService Name="microsoftDX-appservicesdemo" /> </uap:Extension> </Extensions> </Application> </Applications> <Capabilities> <Capability Name="internetClient" /> </Capabilities> </Package>
  • 38. 38 municación en dos sentidos Consejos Heisenberg para conseguir Apps W10 con 99% de pureza Talks4Kids Co 56 Cliente y servidor pueden mantener abierto una canal de comunicación en dos sentidos El cliente puede utilizar el evento RequestReceived en su propia instancia de AppServiceConnection Ambos, cliente y servidor, pueden enviar y recibir mensajes AppServiceConnectionStatus connectionStatus = await connection.OpenAsync(); if (connectionStatus == AppServiceConnectionStatus.Success) { connection.RequestReceived += OnRequestReceived; }
  • 39. 39 tendiendo el PackageFamilyName Consejos Heisenberg para conseguir Apps W10 con 99% de pureza Talks4Kids Ob 27 En, ‘Tienda– Asociar App con la tienda’ establecemos el PackageFamilyName Podemos usar Package.Current.Id.FamilyName para obtener el PFN y usarlo depurando
  • 40. 40 Consejos Heisenberg para conseguir Apps W10 con 99% de pureza Talks4Kids Consejos en depuración
  • 41. 41 purando App Services Consejos Heisenberg para conseguir Apps W10 con 99% de pureza Talks4Kids De 56 1. Establecemos breakpoints en el código del servicio 2. Marcamos ‘Do not launch but debug my code when it starts’ en las propiedades del proyecto 3. Lanzamos la App del servicio en en el debugger – nada ocurre! 4. Lanzamos la App cliente que se conecta al servicio 5. El debugger se para en nuestros breakpoints del servicio!
  • 42. 42 clo de vida de un App Service Consejos Heisenberg para conseguir Apps W10 con 99% de pureza Talks4Kids Ci 56 El servicio se active bajo demanda La Background Task es activada por medio de un AppServiceTrigger El cliente puede terminar con el servicio hacienda un dispose de su AppServiceConnection o bien, enviando un mensaje con instrucciones al servicio para que realice shutdown La falta de recursos puede provocar la terminación del servicio La App que usa el servicio obtendrá AppServiceConnectionStatus.ResourcesNotAvailable cuando intenta conectar Obtendrá AppServiceResponseStatus.ResourceLimitsExceeded cuando envía mensajes
  • 43. 43 Consejos Heisenberg para conseguir Apps W10 con 99% de pureza Talks4Kids DEMO VI App Service
  • 44. 44 Consejos Heisenberg para conseguir Apps W10 con 99% de pureza Talks4Kids Otros detalles a tener en cuenta
  • 45. 45 otocolo Consejos Heisenberg para conseguir Apps W10 con 99% de pureza Talks4Kids Pr 56 Los App Services han sido diseñados para ser ligeros y flexibles inspirados en el modelo de servicios web REST API simple basada en mensajes Petición-Respuesta Datos empaquetados en ValueSets Fácil de usar con diferentes payloads Cuando se publica un App Service, se esta definiendo un endpoint de comunicación Un endpoint de un App Service otorga a la App que lo utiliza un camino para enviar información También otorga a la App que lo utiliza una vía para recibir información
  • 46. 46 Consejos Heisenberg para conseguir Apps W10 con 99% de pureza Talks4Kids Los App services nos ofrecen una nueva vía de Comunicación entre aplicaciones
  • 48. nsejos Heisenberg para conseguir Apps Windows 10 con 99% de pureza Talk4 he ds Co 32 Ki 22 Javier Suárez Ruiz Muchas gracias por vuestro tiempo!