Exemple #1
0
        /// <seealso href="https://developer.foursquare.com/overview/auth#userless" />
        public FoursquareUserlessContext(HttpMessageHandler handler, UserlessAccessSettings settings)
        {
            if (handler == null)
            {
                throw new ArgumentNullException(nameof(handler));
            }
            if (settings == null)
            {
                throw new ArgumentNullException(nameof(settings));
            }

            var userlessHandler = HttpClientFactory.CreatePipeline(handler, new DelegatingHandler[]
            {
                new QueryAppenderHandler("client_id", settings.ClientId),
                new QueryAppenderHandler("client_secret", settings.ClientSecret)
            });

            _httpClient = new HttpClient(userlessHandler, false)
            {
                BaseAddress = new Uri(Constants.FoursquareApiBaseUrl)
            };

            Categories = new CategoriesClient(_httpClient);
            Venues     = new VenuesClient(_httpClient);
            Photos     = new PhotosClient(_httpClient);
        }
        /// <summary>
        /// Returns first 50 photos for a venue.
        /// </summary>
        /// <param name="venue">The venue you want photos for.</param>
        /// <exception cref="ArgumentNullException"></exception>
        public static Task <IReadOnlyCollection <VenuePhoto> > GetPhotos(this CompactVenue venue)
        {
            if (venue == null)
            {
                throw new ArgumentNullException(nameof(venue));
            }

            var client = new PhotosClient(venue.HttpClient);

            return(client.GetVenuePhotos(venue.Id, 50, 0));
        }
        public async Task SetElement(Photo photo)
        {
            Check.IsNull(photo);

            // Retrieve image data and use it to create UIImage
            var imageData = await PhotosClient.GetImageData(photo);

            var image = UIImage.LoadFromData(NSData.FromArray(imageData));

            // Set image and title
            ImagePhotoPreview.SetImage(image);
            LabelPhotoTitle.SetText(photo.Title);
        }
Exemple #4
0
        public async override void Awake(NSObject context)
        {
            base.Awake(context);

            SetTitle("Hello, watch!");

            // Disable button until the photos are downloaded
            ButtonDisplayPhotoList.SetEnabled(false);

            // Get photos from the web service (first album only)
            photos = await PhotosClient.GetByAlbumId(1);

            // Create actions for the alert
            CreateAlertActions();

            ButtonDisplayPhotoList.SetEnabled(true);
        }