Согласитесь с Джейсоном, вы можете использовать для этого зависимый сервис.
Прежде всего, создайте интерфейс в PCL.
public interface ICellphoneProvider
{
string GetCellphoneProvider();
}
Используйте его со следующим кодом
string phoneProvider =DependencyService.Get<ICellphoneProvider>().GetCellphoneProvider();
Достигните интерфейса ICellphoneProvider
в Android.
[assembly: Dependency(typeof(CellPhoneProviderService))]
namespace Xaminals.Droid
{
class CellPhoneProviderService : ICellphoneProvider
{
public string GetCellphoneProvider()
{
Android.Telephony.TelephonyManager manager = (Android.Telephony.TelephonyManager)Android.App.Application.Context.GetSystemService(Context.TelephonyService);
string carrierName = manager.NetworkOperatorName;
return carrierName;
}
}
}
Пожалуйста, добавьте android.permission.READ_PHONE_STATE
разрешение в AndroidManifest.xml
Достигните ICellphoneProvider
интерфейс в iOS.
[assembly: Dependency(typeof(CellPhoneProvideService))]
namespace Xaminals.iOS
{
class CellPhoneProvideService : ICellphoneProvider
{
public string GetCellphoneProvider()
{
using (var info = new CTTelephonyNetworkInfo())
{
return info.SubscriberCellularProvider.CarrierName;
}
}
}
}