public async Task <Bitmap> GetPhoto(string photoReference, int width) { if (NetworkAvailability.Check()) { Bitmap bitmap = null; await Task.Run(() => { try { URL url = new URL("https://maps.googleapis.com/maps/api/place/photo?maxwidth=" + width + "&photoreference=" + photoReference + "&key=" + StrGoogleApiKey); var connection = (HttpURLConnection)url.OpenConnection(); connection.Connect(); var stream = connection.InputStream; bitmap = BitmapFactory.DecodeStream(stream); } catch (Exception ex) { Console.WriteLine(ex.Message); } }); return(bitmap); } return(null); }
public async Task <List <GoogleResult> > GetNearByPlaces(LatLng location, int radius, string type, string keyword) { if (NetworkAvailability.Check()) { try { string json = string.Empty; if (type != null) { json = await DownloadString("https://maps.googleapis.com/maps/api/place/nearbysearch/json?location=" + LocationService.CorrectLocationFormat(location) + "&radius=" + radius *MetresInKm + "&type=" + type + "&keyword=" + keyword + "&key=" + StrGoogleApiKey); } else { json = await DownloadString("https://maps.googleapis.com/maps/api/place/nearbysearch/json?location=" + LocationService.CorrectLocationFormat(location) + "&radius=" + radius *MetresInKm + "&keyword=" + keyword + "&key=" + StrGoogleApiKey); } var result = JsonConvert.DeserializeObject <GooglePlaceDetailsModel>(json); var places = result.results.Where(p => p.opening_hours == null ? false : p.opening_hours.open_now).ToList(); return(places); } catch (Exception ex) { Console.WriteLine(ex.Message); } } return(null); }
private void GetLocationAndLoadResults() { (Activity as MainActivity).OnGpsEnabled -= OnDistanceFilterFragmentGpsEnabled; if (NetworkAvailability.Check()) { if ((Activity as MainActivity).GetCurrentLocation() != null) { //(Activity as MainActivity).OnGpsEnabled -= OnDistanceFilterFragmentGpsEnabled; var fragment = new ViewPagerFragment() { Arguments = new Bundle() }; fragment.Arguments.PutInt(Common.Constants.BundleKeys.Radius, DefaultRadius); Activity.SupportFragmentManager .BeginTransaction() .Replace(Resource.Id.Activity_MainActivity_FragmentContainer, fragment) .AddToBackStack(null) .Commit(); } else { LocationManager manager = (LocationManager)Activity.GetSystemService(Android.Content.Context.LocationService); if (!manager.IsProviderEnabled(LocationManager.GpsProvider)) { BuildAlertMessageNoGps(); } (Activity as MainActivity).OnGpsEnabled += OnDistanceFilterFragmentGpsEnabled; } } else { Toast.MakeText(Activity, GetString(Resource.String.Error_NoNetwork), ToastLength.Long).Show(); } }
private void AdapterItemClicked(object sender, GoogleResult e) { if (NetworkAvailability.Check()) { var fragment = new PlaceDetailsFragment() { Arguments = new Bundle() }; fragment.Arguments.PutString(Common.Constants.BundleKeys.Placeid, e.place_id); Activity.SupportFragmentManager .BeginTransaction() .Replace(Resource.Id.Activity_MainActivity_FragmentContainer, fragment) .AddToBackStack(null) .Commit(); } else { Toast.MakeText(Activity, GetString(Resource.String.Error_NoNetwork), ToastLength.Long).Show(); } }
public async Task <GooglePlaceDetailsModel> GetPlaceById(string placeId) { if (NetworkAvailability.Check()) { try { var json = await DownloadString("https://maps.googleapis.com/maps/api/place/details/json?placeid=" + placeId + "&key=" + StrGoogleApiKey); var result = JsonConvert.DeserializeObject <GooglePlaceDetailsModel>(json); var place = result; return(place); } catch (Exception ex) { Console.WriteLine(ex.Message); } } return(null); }