/// <summary> /// /// </summary> /// <param name="googlePlacesModel"></param> public void setGooglePlacesError(GooglePlacesApi.GooglePlacesModel googlePlacesModel) { switch (googlePlacesModel.Status) { case "RADIUS_OUT_OF_RANGE": Errors.Add( new RequestErrorModel(RequestErrorModel.RequestErrorType.LocationRequest, RequestErrorModel.RequestErrorMessage.RADIUS_OUT_OF_RANGE)); break; case "UNSUCCESSFUL_STATUS_CODE": Errors.Add(new RequestErrorModel(RequestErrorModel.RequestErrorType.LocationRequest, RequestErrorModel.RequestErrorMessage.UNSUCCESSFUL_STATUS_CODE)); break; case "ZERO_RESULTS": Errors.Add(new RequestErrorModel(RequestErrorModel.RequestErrorType.LocationRequest, RequestErrorModel.RequestErrorMessage.ZERO_RESULTS)); break; case "OVER_QUERY_LIMIT": Errors.Add(new RequestErrorModel(RequestErrorModel.RequestErrorType.LocationRequest, RequestErrorModel.RequestErrorMessage.OVER_QUERY_LIMIT)); break; case "REQUEST_DENIED": Errors.Add(new RequestErrorModel(RequestErrorModel.RequestErrorType.LocationRequest, RequestErrorModel.RequestErrorMessage.REQUEST_DENIED)); break; case "INVALID_REQUEST": Errors.Add(new RequestErrorModel(RequestErrorModel.RequestErrorType.LocationRequest, RequestErrorModel.RequestErrorMessage.INVALID_REQUEST)); break; case "OK": break; default: Errors.Add(new RequestErrorModel(RequestErrorModel.RequestErrorType.LocationRequest, RequestErrorModel.RequestErrorMessage.UNKNOWN)); SafeToContinue = false; break; } }
public async Task <List <POIWebModel> > Get(double lat, double lon, double radiusInMeters, string keyword = "") { GooglePlacesApi api = new GooglePlacesApi(); var list = await api.Search(new Location(lat, lon), radiusInMeters, keyword); return(list); }
public GooglePlacesApiTest() { IConfiguration config = new ConfigurationBuilder() .SetBasePath(Path.Combine(Directory.GetCurrentDirectory())) .AddJsonFile("appsettings.json", true, true) .Build(); var apiKey = config["GoogleApiKey"]; _googlePlacesApi = new GooglePlacesApi(apiKey); _googleGeocodingApi = new GoogleGeocodingApi(apiKey); _client = new HttpClient { MaxResponseContentBufferSize = MaxResponseContentBufferSize }; }
private void SearchCallback(GooglePlacesApi.PlacesList placesList) { RunOnUiThread(() => { // ToDo: Check Status and handle non-OK _placeResults = placesList.results; _nextPageToken = placesList.next_page_token; _loadMoreButton.Visibility = String.IsNullOrEmpty(_nextPageToken) ? ViewStates.Gone : ViewStates.Visible; _placesListView.Adapter = new PlacesListAdapter(this, _placeResults); _placesListView.ItemClick += PlacesListViewItemClick; _loading.Hide(); }); }
private void FetchMoreCallback(GooglePlacesApi.PlacesList placesList) { RunOnUiThread(() => { // ToDo: Check Status and handle non-OK _placeResults.AddRange(placesList.results); _nextPageToken = placesList.next_page_token; _loadMoreButton.Visibility = String.IsNullOrEmpty(_nextPageToken) ? ViewStates.Invisible : ViewStates.Visible; // Get ListView current position - used to maintain scroll position int currentPosition = _placesListView.FirstVisiblePosition; _placesListView.Adapter = new PlacesListAdapter(this, _placeResults); _placesListView.ItemClick += PlacesListViewItemClick; _placesListView.SetSelectionFromTop(currentPosition + 1, 0); _loading.Hide(); }); }