Example #1
0
        protected override void Dispose(bool disposing)
        {
            base.Dispose(disposing);

            _fusedLocationProviderClientLastLocationListener?.Dispose();
            _fusedLocationProviderClientLastLocationListener = null;

            _fusedLocationProviderClient?.Dispose();
            _fusedLocationProviderClient = null;

            _latLng?.Dispose();
            _latLng = null;
        }
Example #2
0
        protected override void OnCreate(Bundle savedInstanceState)
        {
            TabLayoutResource = Resource.Layout.Tabbar;
            ToolbarResource   = Resource.Layout.Toolbar;

            base.OnCreate(savedInstanceState);

            Xamarin.Essentials.Platform.Init(this, savedInstanceState);
            global::Xamarin.Forms.Forms.Init(this, savedInstanceState);
            LoadApplication(new App());

            if (HuaweiApiAvailability.Instance.IsHuaweiMobileServicesAvailable(this) != ConnectionResult.Success)
            {
                return;
            }

            //ActivityCompat.RequestPermissions(this, permissions, 100);

            // Initialise huawei fused location provider
            _fusedLocationProviderClientLastLocationListener = new LastLocationListener(location =>
            {
                switch (location)
                {
                case null:
                    GetLocation();
                    break;

                default:
                    Toast.MakeText(this, location.ToString(), ToastLength.Long).Show();
                    //MoveToUserLocation(new LatLng(location.Latitude, location.Longitude));
                    break;
                }
            }, exception =>
            {
                Toast.MakeText(this, exception.Message, ToastLength.Long).Show();
            });

            _fusedLocationProviderClient = LocationServices.GetFusedLocationProviderClient(this);

            Android.Util.Log.Info(TAG, "CheckPermission");

            // Get last known location if permissions are granted
            if (CheckPermission(Permissions, 100))
            {
                GetLastLocation();
            }

            MapsInitializer.Initialize(this);
        }