Injeção de código

Top  Previous  Next

Essa imagem resume tudo

 

solution

 

Na prática, um programa que retorna o número e IMEI no Android (não implementei do IOS)

 

Solução

 

injecao1

 

Projeto Multi-Plataforma - IInformacao.cs

 

using System;
 
namespace Vendas
{
 public interface IInformacao
 {
         string GetId();
 }
}
 

Projeto Multi-Plataforma - Principal.cs

 

using System;
using Xamarin.Forms;
using System.Diagnostics;
 
namespace Vendas
{
 public class Principal : ContentPage
 {
        // ......
         private async void ShowIMEI()
         {
                 var s = DependencyService.Get<IInformacao> ().GetId ();
                 await DisplayAlert ("IMEI", s, "Ok");
         }
 }
}
 

Projeto Android - Informacao.cs

 

using System;
using Android.Telephony;
using Xamarin.Forms;
using Vendas.Droid;
using Android.Content;
 
[assembly: Dependency (typeof(Informacao))]
 
namespace Vendas.Droid
{
 public class Informacao: IInformacao
 {
         public string GetId ()
         {
                 var telephonyManager = (TelephonyManager)Forms.Context.GetSystemService (Context.TelephonyService);
                 string id = telephonyManager.DeviceId;
                 return id;
         }
 }
}