Esempio n. 1
0
        protected async override void OnCreate(Bundle bundle)
        {
            base.OnCreate(bundle);
            ActionBar.SetIcon(Android.Resource.Color.Transparent);

            Forms.Init(this, bundle);


            var a = new Adapter();

            Plugin.Permissions.Abstractions.PermissionStatus status = await Plugin.Permissions.CrossPermissions.Current.CheckPermissionStatusAsync(Plugin.Permissions.Abstractions.Permission.Location);

            if (status == Plugin.Permissions.Abstractions.PermissionStatus.Granted)
            {
                App.SetAdapter(a);
            }
            else
            {
                App.SetAdapterDontStartScanning(a);
            }

            //float widthDp = Resources.DisplayMetrics.WidthPixels / Resources.DisplayMetrics.Density;
            var IsTablet = Xamarin.Forms.Device.Idiom == TargetIdiom.Tablet;

            RequestedOrientation = IsTablet ? ScreenOrientation.Unspecified : ScreenOrientation.Portrait;

            //if (!HACCPAppSettings.SharedInstance.CheckPendingRecords) {
            //	HACCPAppSettings.SharedInstance.CheckPendingRecords = true;
            //}

            LoadApplication(new App());
        }
Esempio n. 2
0
        //public static ImageSource GetImageFromEntityAssoc(List<AssociationField> AssociationFieldCollection)
        //{
        //    try
        //    {
        //        var FileID = AssociationFieldCollection.Where(x => x.AssocSystemCode == "PHGAL").FirstOrDefault().AssocMetaDataText.FirstOrDefault().EntityFileID;

        //        var EntityID = AssociationFieldCollection.Where(x => x.AssocSystemCode == "PHGAL").FirstOrDefault().AssocMetaDataText.FirstOrDefault().EntityID;

        //        string fileStr = string.Empty;

        //        Task.Run(() =>
        //        {
        //            var d = EntityAPIMethods.GetFileFromEntity(EntityID.ToString(), FileID.ToString(), Functions.UserName);
        //            fileStr = d.GetValue("ResponseContent").ToString();
        //        }).Wait();

        //        FileItem fileResp = JsonConvert.DeserializeObject<FileItem>(fileStr);

        //        return ImageSource.FromStream(() => new MemoryStream(fileResp.BLOB));
        //    }
        //    catch (Exception ex)
        //    {
        //        return ImageSource.FromFile("Assets/na.png");
        //    }
        //}

        public static async Task <bool> IsMediaPermissionGrantedAsync()
        {
            Plugin.Permissions.Abstractions.PermissionStatus persmissionstatus = Plugin.Permissions.Abstractions.PermissionStatus.Unknown;

            if (Device.RuntimePlatform == Device.Android || Device.RuntimePlatform == Device.UWP)
            {
                persmissionstatus = await CrossPermissions.Current.CheckPermissionStatusAsync(Plugin.Permissions.Abstractions.Permission.Storage);

                if (persmissionstatus != Plugin.Permissions.Abstractions.PermissionStatus.Granted)
                {
                    await CrossPermissions.Current.RequestPermissionsAsync(Plugin.Permissions.Abstractions.Permission.Storage);

                    persmissionstatus = await CrossPermissions.Current.CheckPermissionStatusAsync(Plugin.Permissions.Abstractions.Permission.Storage);
                }
            }

            if (Device.RuntimePlatform == Device.iOS)
            {
                persmissionstatus = await CrossPermissions.Current.CheckPermissionStatusAsync(Plugin.Permissions.Abstractions.Permission.Photos);

                if (persmissionstatus != Plugin.Permissions.Abstractions.PermissionStatus.Granted)
                {
                    await CrossPermissions.Current.RequestPermissionsAsync(Plugin.Permissions.Abstractions.Permission.Photos);

                    persmissionstatus = await CrossPermissions.Current.CheckPermissionStatusAsync(Plugin.Permissions.Abstractions.Permission.Photos);
                }
            }

            if (persmissionstatus == Plugin.Permissions.Abstractions.PermissionStatus.Granted)
            {
                return(true);
            }

            return(false);
        }
Esempio n. 3
0
        /**
         * Includes code from https://github.com/jamesmontemagno/PermissionsPlugin
         * Returns if we have location permissions.
         * Will prompt users for permission if False (but will still return False regardless if they change settings)
         */
        async Task <bool> hasLocationPermissions()
        {
            Plugin.Permissions.Abstractions.PermissionStatus device_status = await CrossPermissions.Current.CheckPermissionStatusAsync <LocationPermission>();

            if (device_status != Plugin.Permissions.Abstractions.PermissionStatus.Granted)
            {
                await DisplayAlert("Location required", "Location permissions are required to look up destination.", "OK");

                //Open prompt to settings:
                await Utils.CheckPermissions(new LocationPermission());

                //The next lines dont wait for you to return from the Settings app. It'll think you denied permissions
                Console.WriteLine("refreshing");
                device_status = await CrossPermissions.Current.RequestPermissionAsync <LocationPermission>();
            }
            return(device_status == Plugin.Permissions.Abstractions.PermissionStatus.Granted);
        }
Esempio n. 4
0
        public override async Task <bool> AskForRequiredPermission()
        {
            bool permissionGranted = true;

            if (Build.VERSION.SdkInt >= BuildVersionCodes.M)
            {
                //Android 6.0 Upper
                Plugin.Permissions.Abstractions.PermissionStatus status = await Plugin.Permissions.CrossPermissions.Current.CheckPermissionStatusAsync(Plugin.Permissions.Abstractions.Permission.Storage);

                permissionGranted = ContextCompat.CheckSelfPermission(Android.App.Application.Context, Manifest.Permission.WriteExternalStorage) == (int)Android.Content.PM.Permission.Granted &&
                                    ContextCompat.CheckSelfPermission(Android.App.Application.Context, Manifest.Permission.ReadExternalStorage) == (int)Android.Content.PM.Permission.Granted;
                if (!permissionGranted)
                {
                    await Plugin.Permissions.CrossPermissions.Current.RequestPermissionsAsync(Plugin.Permissions.Abstractions.Permission.Storage);

                    permissionGranted = ContextCompat.CheckSelfPermission(Android.App.Application.Context, Manifest.Permission.WriteExternalStorage) == (int)Android.Content.PM.Permission.Granted &&
                                        ContextCompat.CheckSelfPermission(Android.App.Application.Context, Manifest.Permission.ReadExternalStorage) == (int)Android.Content.PM.Permission.Granted;
                }
            }
            return(permissionGranted);
        }