SlideShare una empresa de Scribd logo
1 de 21
Descargar para leer sin conexión
Almacenamiento en
Azure storage con
Xamarin en Visual
Studio 2017
@enriqueaguilar
enriqueaguilarvargas.com
Agenda
1.- Características generales Azure Storage
2.- Demo Xamarin con Azure Storage
"We think about building technology so
other people can build technology and
make things happen”
Satya Nadella
CEO
Microsoft
Almacenamiento	Azure
Ideal para la Administración del
Centro de Datos:
• Gama de soluciones para cada
necesidad.
• La escalabilidad que nunca
sobrepasará.
• Flexible a medida que cambian las
necesidades.
• Costos más bajos y pago solo por lo
que necesita.
Almacenamiento	Azure
•Blobs.
Almacena datos de objetos no estructurados, como texto,
documentos, archivo multimedia o un instalador de
aplicación.
• Tablas
Almacena conjuntos de datos estructurados (NoSQL), que
permite el desarrollo rápido de grandes cantidades de datos
y el acceso inmediato a los mismos.
• Queue
Ofrece una solución de mensajería confiable para el
procesamiento de flujos de trabajo y para la
comunicación entre los componentes de los servicios
en la nube.
• Archivos Compartidos
Ofrece almacenamiento compartido para aplicaciones
heredadas que usan el protocolo SMB estándar. Las
máquinas virtuales y los servicios en la nube pueden
compartir datos de archivos entre componentes de
aplicaciones a través de recursos compartidos.
Ejemplo	de	
Almacenamiento	en	
Azure desde	Xamarin
Preparando	el	entorno	para	el	uso	de	Blobs
Preparando	el	entorno	para	el	uso	de	Blobs
Asignamos	un	nombre	a	la	cuenta de	Almacenamiento
Resource Manager	para	aplicaciones	nuevas	o	
clásica para	ya	implementadas	previamente.
Seleccione	uso	general	para	unificar	la	cuenta	de	
Almacenamiento	o	almacenamiento	de	blobs	para	
verificar	nivel	de	acceso.
Almacenamiento	en	cinta	magnética	o	en	disco	de	
estado	sólido.
Replicación	con	redundancia	geográfica
Suscripción	a	un	mismo	permiso,	ciclo	de	vida	y	directivas.
Preparando	el	entorno	para	el	uso	de	Blobs
Preparando	el	entorno	para	el	uso	de	Blobs
Preparando	el	entorno	para	el	uso	de	Blobs
Código	Xamarin– Azure Storage	Blob
string archivoLocal;
AVCaptureDevice dispositivodeCaptura;
AVCaptureSession sesiondeCaptura;
AVCaptureDeviceInput entradaDispositivo;
AVCaptureStillImageOutput salidaImagen;
AVCaptureVideoPreviewLayer preview;
string ruta;
byte[] arregloJpg;
async Task autorizacionCamara()
{
var estatus = AVCaptureDevice.GetAuthorizationStatus(AVMediaType.Video);
if (estatus != AVAuthorizationStatus.Authorized)
{
await AVCaptureDevice.RequestAccessForMediaTypeAsync(AVMediaType.Video);
}
}
using System;
using UIKit;
using System.Drawing;
using System.Threading.Tasks;
using AVFoundation;
using Foundation;
using System.IO;
using Microsoft.WindowsAzure.Storage;
using Microsoft.WindowsAzure.Storage.Blob;
Código	Xamarin – Azure Storage	Blob
btnRespaldar.TouchUpInside += async delegate
{
try
{
CloudStorageAccount cuentaAlmacenamiento = CloudStorageAccount.Parse
("DefaultEndpointsProtocol=https;AccountName=enriqueaguilar;AccountKey=UJ+
q1zwfv7lkb2d/cm8r9ycoc5ZgkNEbuypQYgM001p9E9CWChPtIBfW1A==");
CloudBlobClient clienteBlob = cuentaAlmacenamiento.CreateCloudBlobClient();
CloudBlobContainer contenedor = clienteBlob.GetContainerReference("imagenes");
CloudBlockBlob recursoblob = contenedor.GetBlockBlobReference(archivoLocal);
await recursoblob.UploadFromFileAsync(ruta);
MessageBox("Guardado en", "Azure Storage - Blob");
}
catch (StorageException ex)
{
MessageBox("Error: ", ex.Message);
}
};
Código	Xamarin.iOS – Azure Storage	Blob
btnRespaldar.TouchUpInside += async delegate
{
try
{
CloudStorageAccount cuentaAlmacenamiento = CloudStorageAccount.Parse
("DefaultEndpointsProtocol=https;AccountName=enriqueaguilar;AccountKey=UJ+
q1zwfv7lkb2d/cm8r9ycoc5ZgkNEbuypQYgM001p9E9CWChPtIBfW1A==");
CloudBlobClient clienteBlob = cuentaAlmacenamiento.CreateCloudBlobClient();
CloudBlobContainer contenedor = clienteBlob.GetContainerReference("imagenes");
CloudBlockBlob recursoblob = contenedor.GetBlockBlobReference(archivoLocal);
await recursoblob.UploadFromFileAsync(ruta);
MessageBox("Guardado en", "Azure Storage - Blob");
}
catch (StorageException ex)
{
MessageBox("Error: ", ex.Message);
}
};
Código	Xamarin.iOS – Azure Storage	Blob
btnRespaldar.TouchUpInside += async delegate
{
try
{
CloudStorageAccount cuentaAlmacenamiento = CloudStorageAccount.Parse
("DefaultEndpointsProtocol=https;AccountName=enriqueaguilar;AccountKey=UJ+
q1zwfv7lkb2d/cm8r9ycoc5ZgkNEbuypQYgM001p9E9CWChPtIBfW1A==");
CloudBlobClient clienteBlob = cuentaAlmacenamiento.CreateCloudBlobClient();
CloudBlobContainer contenedor = clienteBlob.GetContainerReference("imagenes");
CloudBlockBlob recursoblob = contenedor.GetBlockBlobReference(archivoLocal);
await recursoblob.UploadFromFileAsync(ruta);
MessageBox("Guardado en", "Azure Storage - Blob");
}
catch (StorageException ex)
{
MessageBox("Error: ", ex.Message);
}
};
Código	Xamarin – Azure Storage	Blob
btnImagen.Click += async delegate{
try {
string carpeta = System.Environment.GetFolderPath
(System.Environment.SpecialFolder.Personal);
string archivoLocal = "Foto.jpg";
string ruta = System.IO.Path.Combine(carpeta, archivoLocal);
CloudStorageAccount cuentaAlmacenamiento = CloudStorageAccount.Parse
("DefaultEndpointsProtocol=https;AccountName=enriqueaguilar;AccountKey=UJ+q1z
wfv7lkb2d/cm8riq9E9CWChPtIBfW1A==");
CloudBlobClient clienteBlob = cuentaAlmacenamiento.CreateCloudBlobClient();
CloudBlobContainer contenedor = clienteBlob.GetContainerReference("imagenes");
CloudBlockBlob recursoBlob = contenedor.GetBlockBlobReference("Foto.jpg");
var stream = File.OpenWrite(ruta);
await recursoBlob.DownloadToStreamAsync(stream);
Android.Net.Uri rutaImagen = Android.Net.Uri.Parse(ruta);
Imagen.SetImageURI(rutaImagen);
}
catch (StorageException ex)
{
Toast.MakeText(this, ex.Message, ToastLength.Short);
}
};
Código	Xamarin.Android – Azure Storage	Blob
btnImagen.Click += async delegate{
try {
string carpeta = System.Environment.GetFolderPath
(System.Environment.SpecialFolder.Personal);
string archivoLocal = "Foto.jpg";
string ruta = System.IO.Path.Combine(carpeta, archivoLocal);
CloudStorageAccount cuentaAlmacenamiento = CloudStorageAccount.Parse
("DefaultEndpointsProtocol=https;AccountName=enriqueaguilar;AccountKey=UJ+q1z
wfv7lkb2d/cm8riq9E9CWChPtIBfW1A==");
CloudBlobClient clienteBlob = cuentaAlmacenamiento.CreateCloudBlobClient();
CloudBlobContainer contenedor = clienteBlob.GetContainerReference("imagenes");
CloudBlockBlob recursoBlob = contenedor.GetBlockBlobReference("Foto.jpg");
var stream = File.OpenWrite(ruta);
await recursoBlob.DownloadToStreamAsync(stream);
Android.Net.Uri rutaImagen = Android.Net.Uri.Parse(ruta);
Imagen.SetImageURI(rutaImagen);
}
catch (StorageException ex)
{
Toast.MakeText(this, ex.Message, ToastLength.Short);
}
};
Código	Xamarin.Android – Azure Storage	Blob
btnImagen.Click += async delegate{
try {
string carpeta = System.Environment.GetFolderPath
(System.Environment.SpecialFolder.Personal);
string archivoLocal = "Foto.jpg";
string ruta = System.IO.Path.Combine(carpeta, archivoLocal);
CloudStorageAccount cuentaAlmacenamiento = CloudStorageAccount.Parse
("DefaultEndpointsProtocol=https;AccountName=enriqueaguilar;AccountKey=UJ+q1z
wfv7lkb2d/cm8riq9E9CWChPtIBfW1A==");
CloudBlobClient clienteBlob = cuentaAlmacenamiento.CreateCloudBlobClient();
CloudBlobContainer contenedor = clienteBlob.GetContainerReference("imagenes");
CloudBlockBlob recursoBlob = contenedor.GetBlockBlobReference("Foto.jpg");
var stream = File.OpenWrite(ruta);
await recursoBlob.DownloadToStreamAsync(stream);
Android.Net.Uri rutaImagen = Android.Net.Uri.Parse(ruta);
Imagen.SetImageURI(rutaImagen);
}
catch (StorageException ex)
{
Toast.MakeText(this, ex.Message, ToastLength.Short);
}
};
DEMO
Por donde empezar?
• channel9.msdn.com
• azure.microsoft.com
@enriqueaguilar
enriqueaguilarvargas.com

Más contenido relacionado

Similar a Xamarin storage Azure

CloudStorage - Almacenamiento en la Nube
CloudStorage - Almacenamiento en la NubeCloudStorage - Almacenamiento en la Nube
CloudStorage - Almacenamiento en la NubeArsys
 
Servicios de datos en la nube
Servicios de datos en la nubeServicios de datos en la nube
Servicios de datos en la nubeJuan Pablo
 
azure_Storage.docx
azure_Storage.docxazure_Storage.docx
azure_Storage.docxhefloca
 
Xamarin Diplomado Intermedio
Xamarin Diplomado IntermedioXamarin Diplomado Intermedio
Xamarin Diplomado Intermedioenriqueaguilar
 
Arquitectura Data Warehousing PaaS de Azure #sqlsatbi905
Arquitectura Data Warehousing PaaS de Azure #sqlsatbi905Arquitectura Data Warehousing PaaS de Azure #sqlsatbi905
Arquitectura Data Warehousing PaaS de Azure #sqlsatbi905Germán Cayo Morales
 
Azure Storage, Cognitive Services y Xamarin - Universidad Tecnológica de León
Azure Storage, Cognitive Services y Xamarin - Universidad Tecnológica de LeónAzure Storage, Cognitive Services y Xamarin - Universidad Tecnológica de León
Azure Storage, Cognitive Services y Xamarin - Universidad Tecnológica de Leónenriqueaguilar
 
Cloud Storage
Cloud StorageCloud Storage
Cloud StorageGabySac
 
Santiago de Chile - Seguridad Continua en Cloud Computing
Santiago de Chile - Seguridad Continua en Cloud ComputingSantiago de Chile - Seguridad Continua en Cloud Computing
Santiago de Chile - Seguridad Continua en Cloud ComputingWalter Vargas
 
Experts Live 2018: Azure Storage y la plataforma de datos
Experts Live 2018: Azure Storage y la plataforma de datosExperts Live 2018: Azure Storage y la plataforma de datos
Experts Live 2018: Azure Storage y la plataforma de datosCesar Herrada
 
Migrando mis datos a la nube con Azure Data Factory
Migrando mis datos a la nube con Azure Data FactoryMigrando mis datos a la nube con Azure Data Factory
Migrando mis datos a la nube con Azure Data FactoryRaul Martin Sarachaga Diaz
 
Los beneficios de migrar sus cargas de trabajo de big data a AWS
Los beneficios de migrar sus cargas de trabajo de big data a AWSLos beneficios de migrar sus cargas de trabajo de big data a AWS
Los beneficios de migrar sus cargas de trabajo de big data a AWSAmazon Web Services LATAM
 
Bases de datos SQL Azure en Microsoft Azure con C#
Bases de datos SQL Azure en Microsoft Azure con C#Bases de datos SQL Azure en Microsoft Azure con C#
Bases de datos SQL Azure en Microsoft Azure con C#Víctor Moreno
 

Similar a Xamarin storage Azure (20)

CloudStorage - Almacenamiento en la Nube
CloudStorage - Almacenamiento en la NubeCloudStorage - Almacenamiento en la Nube
CloudStorage - Almacenamiento en la Nube
 
Servicios de datos en la nube
Servicios de datos en la nubeServicios de datos en la nube
Servicios de datos en la nube
 
azure_Storage.docx
azure_Storage.docxazure_Storage.docx
azure_Storage.docx
 
Xamarin Diplomado Intermedio
Xamarin Diplomado IntermedioXamarin Diplomado Intermedio
Xamarin Diplomado Intermedio
 
Gestión de data y Storage en Azure
Gestión de data y Storage en AzureGestión de data y Storage en Azure
Gestión de data y Storage en Azure
 
Arquitectura Data Warehousing PaaS de Azure #sqlsatbi905
Arquitectura Data Warehousing PaaS de Azure #sqlsatbi905Arquitectura Data Warehousing PaaS de Azure #sqlsatbi905
Arquitectura Data Warehousing PaaS de Azure #sqlsatbi905
 
Cloud Computing: Windows Azure
Cloud Computing: Windows AzureCloud Computing: Windows Azure
Cloud Computing: Windows Azure
 
Cbs aws-fundamentals-3
Cbs aws-fundamentals-3Cbs aws-fundamentals-3
Cbs aws-fundamentals-3
 
Azure Storage, Cognitive Services y Xamarin - Universidad Tecnológica de León
Azure Storage, Cognitive Services y Xamarin - Universidad Tecnológica de LeónAzure Storage, Cognitive Services y Xamarin - Universidad Tecnológica de León
Azure Storage, Cognitive Services y Xamarin - Universidad Tecnológica de León
 
Cloud Storage
Cloud StorageCloud Storage
Cloud Storage
 
Implementando DRP en AWS
Implementando DRP en AWSImplementando DRP en AWS
Implementando DRP en AWS
 
Como reducir costos en AWS
Como reducir costos en AWSComo reducir costos en AWS
Como reducir costos en AWS
 
Cloud computing
Cloud computingCloud computing
Cloud computing
 
Santiago de Chile - Seguridad Continua en Cloud Computing
Santiago de Chile - Seguridad Continua en Cloud ComputingSantiago de Chile - Seguridad Continua en Cloud Computing
Santiago de Chile - Seguridad Continua en Cloud Computing
 
Experts Live 2018: Azure Storage y la plataforma de datos
Experts Live 2018: Azure Storage y la plataforma de datosExperts Live 2018: Azure Storage y la plataforma de datos
Experts Live 2018: Azure Storage y la plataforma de datos
 
Azure DataFactory
Azure DataFactoryAzure DataFactory
Azure DataFactory
 
Migrando mis datos a la nube con Azure Data Factory
Migrando mis datos a la nube con Azure Data FactoryMigrando mis datos a la nube con Azure Data Factory
Migrando mis datos a la nube con Azure Data Factory
 
Los beneficios de migrar sus cargas de trabajo de big data a AWS
Los beneficios de migrar sus cargas de trabajo de big data a AWSLos beneficios de migrar sus cargas de trabajo de big data a AWS
Los beneficios de migrar sus cargas de trabajo de big data a AWS
 
Bases de datos SQL Azure en Microsoft Azure con C#
Bases de datos SQL Azure en Microsoft Azure con C#Bases de datos SQL Azure en Microsoft Azure con C#
Bases de datos SQL Azure en Microsoft Azure con C#
 
AWSome Day - Conferencia Online
AWSome Day - Conferencia OnlineAWSome Day - Conferencia Online
AWSome Day - Conferencia Online
 

Más de Ivan Martinez

Novedades Windows Server 2022.pdf
Novedades Windows Server 2022.pdfNovedades Windows Server 2022.pdf
Novedades Windows Server 2022.pdfIvan Martinez
 
Integracion de servicios en azure con windows admin center
Integracion de servicios en azure con  windows admin center  Integracion de servicios en azure con  windows admin center
Integracion de servicios en azure con windows admin center Ivan Martinez
 
Global Azure-Latam-2020
Global Azure-Latam-2020Global Azure-Latam-2020
Global Azure-Latam-2020Ivan Martinez
 
Tutorial instalacion windows terminal linux windows 10
Tutorial instalacion windows terminal linux windows 10Tutorial instalacion windows terminal linux windows 10
Tutorial instalacion windows terminal linux windows 10Ivan Martinez
 
Conferencia aumenta la productividad y seguridad Azure
Conferencia aumenta la productividad y seguridad AzureConferencia aumenta la productividad y seguridad Azure
Conferencia aumenta la productividad y seguridad AzureIvan Martinez
 
Tutorial como conectar recurso compartido de archivos de azure con windows-PART1
Tutorial como conectar recurso compartido de archivos de azure con windows-PART1Tutorial como conectar recurso compartido de archivos de azure con windows-PART1
Tutorial como conectar recurso compartido de archivos de azure con windows-PART1Ivan Martinez
 
Tutorial implementar hyper v a traves de powershell
Tutorial implementar hyper v a traves de powershellTutorial implementar hyper v a traves de powershell
Tutorial implementar hyper v a traves de powershellIvan Martinez
 
Consideraciones de networking en Azure
Consideraciones de networking en AzureConsideraciones de networking en Azure
Consideraciones de networking en AzureIvan Martinez
 
Conociendo Microsoft Dinamics
Conociendo Microsoft DinamicsConociendo Microsoft Dinamics
Conociendo Microsoft DinamicsIvan Martinez
 
Tutorial implementar alertas unificadas en azure monitor preview
Tutorial implementar alertas unificadas en azure monitor previewTutorial implementar alertas unificadas en azure monitor preview
Tutorial implementar alertas unificadas en azure monitor previewIvan Martinez
 
Microsoft ignite 2018
Microsoft ignite 2018Microsoft ignite 2018
Microsoft ignite 2018Ivan Martinez
 
Evento Share point preview 2018
Evento Share point  preview 2018Evento Share point  preview 2018
Evento Share point preview 2018Ivan Martinez
 
Planificando el Camino azure migracion
Planificando el Camino azure migracionPlanificando el Camino azure migracion
Planificando el Camino azure migracionIvan Martinez
 
INTRODUCCION ARM AZURE
INTRODUCCION ARM AZURE INTRODUCCION ARM AZURE
INTRODUCCION ARM AZURE Ivan Martinez
 
Windows Server Summit 2018 implementacion containers
Windows Server Summit 2018  implementacion containersWindows Server Summit 2018  implementacion containers
Windows Server Summit 2018 implementacion containersIvan Martinez
 
Desarrollo web migrando tus skills a la nube
Desarrollo web migrando tus skills a la nubeDesarrollo web migrando tus skills a la nube
Desarrollo web migrando tus skills a la nubeIvan Martinez
 
Escenarios de recuperacion de windows 10 en redes corporativas
Escenarios de recuperacion de windows 10 en redes corporativasEscenarios de recuperacion de windows 10 en redes corporativas
Escenarios de recuperacion de windows 10 en redes corporativasIvan Martinez
 
Introduccion Azure Containers
Introduccion Azure Containers Introduccion Azure Containers
Introduccion Azure Containers Ivan Martinez
 
La Transformación Digital a través de Nuevas Tecnologías Microsoft Azure
La Transformación Digital a través de Nuevas Tecnologías Microsoft Azure La Transformación Digital a través de Nuevas Tecnologías Microsoft Azure
La Transformación Digital a través de Nuevas Tecnologías Microsoft Azure Ivan Martinez
 

Más de Ivan Martinez (20)

Novedades Windows Server 2022.pdf
Novedades Windows Server 2022.pdfNovedades Windows Server 2022.pdf
Novedades Windows Server 2022.pdf
 
Integracion de servicios en azure con windows admin center
Integracion de servicios en azure con  windows admin center  Integracion de servicios en azure con  windows admin center
Integracion de servicios en azure con windows admin center
 
Global Azure-Latam-2020
Global Azure-Latam-2020Global Azure-Latam-2020
Global Azure-Latam-2020
 
Tutorial instalacion windows terminal linux windows 10
Tutorial instalacion windows terminal linux windows 10Tutorial instalacion windows terminal linux windows 10
Tutorial instalacion windows terminal linux windows 10
 
Conferencia aumenta la productividad y seguridad Azure
Conferencia aumenta la productividad y seguridad AzureConferencia aumenta la productividad y seguridad Azure
Conferencia aumenta la productividad y seguridad Azure
 
Tutorial como conectar recurso compartido de archivos de azure con windows-PART1
Tutorial como conectar recurso compartido de archivos de azure con windows-PART1Tutorial como conectar recurso compartido de archivos de azure con windows-PART1
Tutorial como conectar recurso compartido de archivos de azure con windows-PART1
 
Tutorial implementar hyper v a traves de powershell
Tutorial implementar hyper v a traves de powershellTutorial implementar hyper v a traves de powershell
Tutorial implementar hyper v a traves de powershell
 
Consideraciones de networking en Azure
Consideraciones de networking en AzureConsideraciones de networking en Azure
Consideraciones de networking en Azure
 
Conociendo Microsoft Dinamics
Conociendo Microsoft DinamicsConociendo Microsoft Dinamics
Conociendo Microsoft Dinamics
 
Tutorial implementar alertas unificadas en azure monitor preview
Tutorial implementar alertas unificadas en azure monitor previewTutorial implementar alertas unificadas en azure monitor preview
Tutorial implementar alertas unificadas en azure monitor preview
 
Microsoft ignite 2018
Microsoft ignite 2018Microsoft ignite 2018
Microsoft ignite 2018
 
Evento Share point preview 2018
Evento Share point  preview 2018Evento Share point  preview 2018
Evento Share point preview 2018
 
Planificando el Camino azure migracion
Planificando el Camino azure migracionPlanificando el Camino azure migracion
Planificando el Camino azure migracion
 
INTRODUCCION ARM AZURE
INTRODUCCION ARM AZURE INTRODUCCION ARM AZURE
INTRODUCCION ARM AZURE
 
Azure Functions
Azure FunctionsAzure Functions
Azure Functions
 
Windows Server Summit 2018 implementacion containers
Windows Server Summit 2018  implementacion containersWindows Server Summit 2018  implementacion containers
Windows Server Summit 2018 implementacion containers
 
Desarrollo web migrando tus skills a la nube
Desarrollo web migrando tus skills a la nubeDesarrollo web migrando tus skills a la nube
Desarrollo web migrando tus skills a la nube
 
Escenarios de recuperacion de windows 10 en redes corporativas
Escenarios de recuperacion de windows 10 en redes corporativasEscenarios de recuperacion de windows 10 en redes corporativas
Escenarios de recuperacion de windows 10 en redes corporativas
 
Introduccion Azure Containers
Introduccion Azure Containers Introduccion Azure Containers
Introduccion Azure Containers
 
La Transformación Digital a través de Nuevas Tecnologías Microsoft Azure
La Transformación Digital a través de Nuevas Tecnologías Microsoft Azure La Transformación Digital a través de Nuevas Tecnologías Microsoft Azure
La Transformación Digital a través de Nuevas Tecnologías Microsoft Azure
 

Último

Redes direccionamiento y subredes ipv4 2024 .pdf
Redes direccionamiento y subredes ipv4 2024 .pdfRedes direccionamiento y subredes ipv4 2024 .pdf
Redes direccionamiento y subredes ipv4 2024 .pdfsoporteupcology
 
pruebas unitarias unitarias en java con JUNIT
pruebas unitarias unitarias en java con JUNITpruebas unitarias unitarias en java con JUNIT
pruebas unitarias unitarias en java con JUNITMaricarmen Sánchez Ruiz
 
9egb-lengua y Literatura.pdf_texto del estudiante
9egb-lengua y Literatura.pdf_texto del estudiante9egb-lengua y Literatura.pdf_texto del estudiante
9egb-lengua y Literatura.pdf_texto del estudianteAndreaHuertas24
 
POWER POINT YUCRAElabore una PRESENTACIÓN CORTA sobre el video película: La C...
POWER POINT YUCRAElabore una PRESENTACIÓN CORTA sobre el video película: La C...POWER POINT YUCRAElabore una PRESENTACIÓN CORTA sobre el video película: La C...
POWER POINT YUCRAElabore una PRESENTACIÓN CORTA sobre el video película: La C...silviayucra2
 
EPA-pdf resultado da prova presencial Uninove
EPA-pdf resultado da prova presencial UninoveEPA-pdf resultado da prova presencial Uninove
EPA-pdf resultado da prova presencial UninoveFagnerLisboa3
 
Trabajo Mas Completo De Excel en clase tecnología
Trabajo Mas Completo De Excel en clase tecnologíaTrabajo Mas Completo De Excel en clase tecnología
Trabajo Mas Completo De Excel en clase tecnologíassuserf18419
 
Herramientas de corte de alta velocidad.pptx
Herramientas de corte de alta velocidad.pptxHerramientas de corte de alta velocidad.pptx
Herramientas de corte de alta velocidad.pptxRogerPrieto3
 
Global Azure Lima 2024 - Integración de Datos con Microsoft Fabric
Global Azure Lima 2024 - Integración de Datos con Microsoft FabricGlobal Azure Lima 2024 - Integración de Datos con Microsoft Fabric
Global Azure Lima 2024 - Integración de Datos con Microsoft FabricKeyla Dolores Méndez
 
Proyecto integrador. Las TIC en la sociedad S4.pptx
Proyecto integrador. Las TIC en la sociedad S4.pptxProyecto integrador. Las TIC en la sociedad S4.pptx
Proyecto integrador. Las TIC en la sociedad S4.pptx241521559
 
Presentación guía sencilla en Microsoft Excel.pptx
Presentación guía sencilla en Microsoft Excel.pptxPresentación guía sencilla en Microsoft Excel.pptx
Presentación guía sencilla en Microsoft Excel.pptxLolaBunny11
 
trabajotecologiaisabella-240424003133-8f126965.pdf
trabajotecologiaisabella-240424003133-8f126965.pdftrabajotecologiaisabella-240424003133-8f126965.pdf
trabajotecologiaisabella-240424003133-8f126965.pdfIsabellaMontaomurill
 
CLASE DE TECNOLOGIA E INFORMATICA PRIMARIA
CLASE  DE TECNOLOGIA E INFORMATICA PRIMARIACLASE  DE TECNOLOGIA E INFORMATICA PRIMARIA
CLASE DE TECNOLOGIA E INFORMATICA PRIMARIAWilbisVega
 
KELA Presentacion Costa Rica 2024 - evento Protégeles
KELA Presentacion Costa Rica 2024 - evento ProtégelesKELA Presentacion Costa Rica 2024 - evento Protégeles
KELA Presentacion Costa Rica 2024 - evento ProtégelesFundación YOD YOD
 
International Women's Day Sucre 2024 (IWD)
International Women's Day Sucre 2024 (IWD)International Women's Day Sucre 2024 (IWD)
International Women's Day Sucre 2024 (IWD)GDGSucre
 
guía de registro de slideshare por Brayan Joseph
guía de registro de slideshare por Brayan Josephguía de registro de slideshare por Brayan Joseph
guía de registro de slideshare por Brayan JosephBRAYANJOSEPHPEREZGOM
 

Último (15)

Redes direccionamiento y subredes ipv4 2024 .pdf
Redes direccionamiento y subredes ipv4 2024 .pdfRedes direccionamiento y subredes ipv4 2024 .pdf
Redes direccionamiento y subredes ipv4 2024 .pdf
 
pruebas unitarias unitarias en java con JUNIT
pruebas unitarias unitarias en java con JUNITpruebas unitarias unitarias en java con JUNIT
pruebas unitarias unitarias en java con JUNIT
 
9egb-lengua y Literatura.pdf_texto del estudiante
9egb-lengua y Literatura.pdf_texto del estudiante9egb-lengua y Literatura.pdf_texto del estudiante
9egb-lengua y Literatura.pdf_texto del estudiante
 
POWER POINT YUCRAElabore una PRESENTACIÓN CORTA sobre el video película: La C...
POWER POINT YUCRAElabore una PRESENTACIÓN CORTA sobre el video película: La C...POWER POINT YUCRAElabore una PRESENTACIÓN CORTA sobre el video película: La C...
POWER POINT YUCRAElabore una PRESENTACIÓN CORTA sobre el video película: La C...
 
EPA-pdf resultado da prova presencial Uninove
EPA-pdf resultado da prova presencial UninoveEPA-pdf resultado da prova presencial Uninove
EPA-pdf resultado da prova presencial Uninove
 
Trabajo Mas Completo De Excel en clase tecnología
Trabajo Mas Completo De Excel en clase tecnologíaTrabajo Mas Completo De Excel en clase tecnología
Trabajo Mas Completo De Excel en clase tecnología
 
Herramientas de corte de alta velocidad.pptx
Herramientas de corte de alta velocidad.pptxHerramientas de corte de alta velocidad.pptx
Herramientas de corte de alta velocidad.pptx
 
Global Azure Lima 2024 - Integración de Datos con Microsoft Fabric
Global Azure Lima 2024 - Integración de Datos con Microsoft FabricGlobal Azure Lima 2024 - Integración de Datos con Microsoft Fabric
Global Azure Lima 2024 - Integración de Datos con Microsoft Fabric
 
Proyecto integrador. Las TIC en la sociedad S4.pptx
Proyecto integrador. Las TIC en la sociedad S4.pptxProyecto integrador. Las TIC en la sociedad S4.pptx
Proyecto integrador. Las TIC en la sociedad S4.pptx
 
Presentación guía sencilla en Microsoft Excel.pptx
Presentación guía sencilla en Microsoft Excel.pptxPresentación guía sencilla en Microsoft Excel.pptx
Presentación guía sencilla en Microsoft Excel.pptx
 
trabajotecologiaisabella-240424003133-8f126965.pdf
trabajotecologiaisabella-240424003133-8f126965.pdftrabajotecologiaisabella-240424003133-8f126965.pdf
trabajotecologiaisabella-240424003133-8f126965.pdf
 
CLASE DE TECNOLOGIA E INFORMATICA PRIMARIA
CLASE  DE TECNOLOGIA E INFORMATICA PRIMARIACLASE  DE TECNOLOGIA E INFORMATICA PRIMARIA
CLASE DE TECNOLOGIA E INFORMATICA PRIMARIA
 
KELA Presentacion Costa Rica 2024 - evento Protégeles
KELA Presentacion Costa Rica 2024 - evento ProtégelesKELA Presentacion Costa Rica 2024 - evento Protégeles
KELA Presentacion Costa Rica 2024 - evento Protégeles
 
International Women's Day Sucre 2024 (IWD)
International Women's Day Sucre 2024 (IWD)International Women's Day Sucre 2024 (IWD)
International Women's Day Sucre 2024 (IWD)
 
guía de registro de slideshare por Brayan Joseph
guía de registro de slideshare por Brayan Josephguía de registro de slideshare por Brayan Joseph
guía de registro de slideshare por Brayan Joseph
 

Xamarin storage Azure

  • 1. Almacenamiento en Azure storage con Xamarin en Visual Studio 2017 @enriqueaguilar enriqueaguilarvargas.com
  • 2. Agenda 1.- Características generales Azure Storage 2.- Demo Xamarin con Azure Storage
  • 3. "We think about building technology so other people can build technology and make things happen” Satya Nadella CEO Microsoft
  • 4. Almacenamiento Azure Ideal para la Administración del Centro de Datos: • Gama de soluciones para cada necesidad. • La escalabilidad que nunca sobrepasará. • Flexible a medida que cambian las necesidades. • Costos más bajos y pago solo por lo que necesita.
  • 5. Almacenamiento Azure •Blobs. Almacena datos de objetos no estructurados, como texto, documentos, archivo multimedia o un instalador de aplicación. • Tablas Almacena conjuntos de datos estructurados (NoSQL), que permite el desarrollo rápido de grandes cantidades de datos y el acceso inmediato a los mismos. • Queue Ofrece una solución de mensajería confiable para el procesamiento de flujos de trabajo y para la comunicación entre los componentes de los servicios en la nube. • Archivos Compartidos Ofrece almacenamiento compartido para aplicaciones heredadas que usan el protocolo SMB estándar. Las máquinas virtuales y los servicios en la nube pueden compartir datos de archivos entre componentes de aplicaciones a través de recursos compartidos.
  • 8. Preparando el entorno para el uso de Blobs Asignamos un nombre a la cuenta de Almacenamiento Resource Manager para aplicaciones nuevas o clásica para ya implementadas previamente. Seleccione uso general para unificar la cuenta de Almacenamiento o almacenamiento de blobs para verificar nivel de acceso. Almacenamiento en cinta magnética o en disco de estado sólido. Replicación con redundancia geográfica Suscripción a un mismo permiso, ciclo de vida y directivas.
  • 12. Código Xamarin– Azure Storage Blob string archivoLocal; AVCaptureDevice dispositivodeCaptura; AVCaptureSession sesiondeCaptura; AVCaptureDeviceInput entradaDispositivo; AVCaptureStillImageOutput salidaImagen; AVCaptureVideoPreviewLayer preview; string ruta; byte[] arregloJpg; async Task autorizacionCamara() { var estatus = AVCaptureDevice.GetAuthorizationStatus(AVMediaType.Video); if (estatus != AVAuthorizationStatus.Authorized) { await AVCaptureDevice.RequestAccessForMediaTypeAsync(AVMediaType.Video); } } using System; using UIKit; using System.Drawing; using System.Threading.Tasks; using AVFoundation; using Foundation; using System.IO; using Microsoft.WindowsAzure.Storage; using Microsoft.WindowsAzure.Storage.Blob;
  • 13. Código Xamarin – Azure Storage Blob btnRespaldar.TouchUpInside += async delegate { try { CloudStorageAccount cuentaAlmacenamiento = CloudStorageAccount.Parse ("DefaultEndpointsProtocol=https;AccountName=enriqueaguilar;AccountKey=UJ+ q1zwfv7lkb2d/cm8r9ycoc5ZgkNEbuypQYgM001p9E9CWChPtIBfW1A=="); CloudBlobClient clienteBlob = cuentaAlmacenamiento.CreateCloudBlobClient(); CloudBlobContainer contenedor = clienteBlob.GetContainerReference("imagenes"); CloudBlockBlob recursoblob = contenedor.GetBlockBlobReference(archivoLocal); await recursoblob.UploadFromFileAsync(ruta); MessageBox("Guardado en", "Azure Storage - Blob"); } catch (StorageException ex) { MessageBox("Error: ", ex.Message); } };
  • 14. Código Xamarin.iOS – Azure Storage Blob btnRespaldar.TouchUpInside += async delegate { try { CloudStorageAccount cuentaAlmacenamiento = CloudStorageAccount.Parse ("DefaultEndpointsProtocol=https;AccountName=enriqueaguilar;AccountKey=UJ+ q1zwfv7lkb2d/cm8r9ycoc5ZgkNEbuypQYgM001p9E9CWChPtIBfW1A=="); CloudBlobClient clienteBlob = cuentaAlmacenamiento.CreateCloudBlobClient(); CloudBlobContainer contenedor = clienteBlob.GetContainerReference("imagenes"); CloudBlockBlob recursoblob = contenedor.GetBlockBlobReference(archivoLocal); await recursoblob.UploadFromFileAsync(ruta); MessageBox("Guardado en", "Azure Storage - Blob"); } catch (StorageException ex) { MessageBox("Error: ", ex.Message); } };
  • 15. Código Xamarin.iOS – Azure Storage Blob btnRespaldar.TouchUpInside += async delegate { try { CloudStorageAccount cuentaAlmacenamiento = CloudStorageAccount.Parse ("DefaultEndpointsProtocol=https;AccountName=enriqueaguilar;AccountKey=UJ+ q1zwfv7lkb2d/cm8r9ycoc5ZgkNEbuypQYgM001p9E9CWChPtIBfW1A=="); CloudBlobClient clienteBlob = cuentaAlmacenamiento.CreateCloudBlobClient(); CloudBlobContainer contenedor = clienteBlob.GetContainerReference("imagenes"); CloudBlockBlob recursoblob = contenedor.GetBlockBlobReference(archivoLocal); await recursoblob.UploadFromFileAsync(ruta); MessageBox("Guardado en", "Azure Storage - Blob"); } catch (StorageException ex) { MessageBox("Error: ", ex.Message); } };
  • 16. Código Xamarin – Azure Storage Blob btnImagen.Click += async delegate{ try { string carpeta = System.Environment.GetFolderPath (System.Environment.SpecialFolder.Personal); string archivoLocal = "Foto.jpg"; string ruta = System.IO.Path.Combine(carpeta, archivoLocal); CloudStorageAccount cuentaAlmacenamiento = CloudStorageAccount.Parse ("DefaultEndpointsProtocol=https;AccountName=enriqueaguilar;AccountKey=UJ+q1z wfv7lkb2d/cm8riq9E9CWChPtIBfW1A=="); CloudBlobClient clienteBlob = cuentaAlmacenamiento.CreateCloudBlobClient(); CloudBlobContainer contenedor = clienteBlob.GetContainerReference("imagenes"); CloudBlockBlob recursoBlob = contenedor.GetBlockBlobReference("Foto.jpg"); var stream = File.OpenWrite(ruta); await recursoBlob.DownloadToStreamAsync(stream); Android.Net.Uri rutaImagen = Android.Net.Uri.Parse(ruta); Imagen.SetImageURI(rutaImagen); } catch (StorageException ex) { Toast.MakeText(this, ex.Message, ToastLength.Short); } };
  • 17. Código Xamarin.Android – Azure Storage Blob btnImagen.Click += async delegate{ try { string carpeta = System.Environment.GetFolderPath (System.Environment.SpecialFolder.Personal); string archivoLocal = "Foto.jpg"; string ruta = System.IO.Path.Combine(carpeta, archivoLocal); CloudStorageAccount cuentaAlmacenamiento = CloudStorageAccount.Parse ("DefaultEndpointsProtocol=https;AccountName=enriqueaguilar;AccountKey=UJ+q1z wfv7lkb2d/cm8riq9E9CWChPtIBfW1A=="); CloudBlobClient clienteBlob = cuentaAlmacenamiento.CreateCloudBlobClient(); CloudBlobContainer contenedor = clienteBlob.GetContainerReference("imagenes"); CloudBlockBlob recursoBlob = contenedor.GetBlockBlobReference("Foto.jpg"); var stream = File.OpenWrite(ruta); await recursoBlob.DownloadToStreamAsync(stream); Android.Net.Uri rutaImagen = Android.Net.Uri.Parse(ruta); Imagen.SetImageURI(rutaImagen); } catch (StorageException ex) { Toast.MakeText(this, ex.Message, ToastLength.Short); } };
  • 18. Código Xamarin.Android – Azure Storage Blob btnImagen.Click += async delegate{ try { string carpeta = System.Environment.GetFolderPath (System.Environment.SpecialFolder.Personal); string archivoLocal = "Foto.jpg"; string ruta = System.IO.Path.Combine(carpeta, archivoLocal); CloudStorageAccount cuentaAlmacenamiento = CloudStorageAccount.Parse ("DefaultEndpointsProtocol=https;AccountName=enriqueaguilar;AccountKey=UJ+q1z wfv7lkb2d/cm8riq9E9CWChPtIBfW1A=="); CloudBlobClient clienteBlob = cuentaAlmacenamiento.CreateCloudBlobClient(); CloudBlobContainer contenedor = clienteBlob.GetContainerReference("imagenes"); CloudBlockBlob recursoBlob = contenedor.GetBlockBlobReference("Foto.jpg"); var stream = File.OpenWrite(ruta); await recursoBlob.DownloadToStreamAsync(stream); Android.Net.Uri rutaImagen = Android.Net.Uri.Parse(ruta); Imagen.SetImageURI(rutaImagen); } catch (StorageException ex) { Toast.MakeText(this, ex.Message, ToastLength.Short); } };
  • 19. DEMO
  • 20. Por donde empezar? • channel9.msdn.com • azure.microsoft.com