void HandleAddContactButtonClicked(object sender, EventArgs e) { AppCenterHelpers.TrackEvent(MobileCenterConstants.AddContactButtonTapped); Device.BeginInvokeOnMainThread(async() => await Navigation.PushModalAsync(new BaseNavigationPage(new ContactDetailPage(new ContactModel(), true)))); }
protected static async Task <HttpResponseMessage> PatchObjectToAPI <T>(string apiUrl, T data) { var stringPayload = await Task.Run(() => JsonConvert.SerializeObject(data)).ConfigureAwait(false); var httpContent = new StringContent(stringPayload, Encoding.UTF8, "application/json"); var httpRequest = new HttpRequestMessage { Method = new HttpMethod("PATCH"), RequestUri = new Uri(apiUrl), Content = httpContent }; try { UpdateActivityIndicatorStatus(true); return(await Client.SendAsync(httpRequest).ConfigureAwait(false)); } catch (Exception e) { AppCenterHelpers.Log(e); return(null); } finally { UpdateActivityIndicatorStatus(false); } }
protected override void OnAppearing() { base.OnAppearing(); AppCenterHelpers.TrackEvent(MobileCenterConstants.ContactsListPageAppeared); Device.BeginInvokeOnMainThread(_contactsListView.BeginRefresh); }
protected static Task <HttpResponseMessage> DeleteObjectFromAPI(string apiUrl) { var httpRequest = new HttpRequestMessage(HttpMethod.Delete, new Uri(apiUrl)); try { UpdateActivityIndicatorStatus(true); return(Client.SendAsync(httpRequest)); } catch (Exception e) { AppCenterHelpers.Log(e); return(null); } finally { UpdateActivityIndicatorStatus(false); } }
protected static async Task <HttpResponseMessage> PostObjectToAPI <T>(string apiUrl, T data) { var stringPayload = await Task.Run(() => JsonConvert.SerializeObject(data)).ConfigureAwait(false); var httpContent = new StringContent(stringPayload, Encoding.UTF8, "application/json"); try { UpdateActivityIndicatorStatus(true); return(await Client.PostAsync(apiUrl, httpContent).ConfigureAwait(false)); } catch (Exception e) { AppCenterHelpers.LogException(e); return(null); } finally { UpdateActivityIndicatorStatus(false); } }
protected static async Task <TDataObject> GetDataObjectFromAPI <TDataObject, TPayloadData>(string apiUrl, TPayloadData data = default(TPayloadData)) { var stringPayload = string.Empty; if (data != null) { stringPayload = await Task.Run(() => JsonConvert.SerializeObject(data)).ConfigureAwait(false); } var httpContent = new StringContent(stringPayload, Encoding.UTF8, "application/json"); try { UpdateActivityIndicatorStatus(true); using (var stream = await Client.GetStreamAsync(apiUrl).ConfigureAwait(false)) using (var reader = new StreamReader(stream)) using (var json = new JsonTextReader(reader)) { if (json == null) { return(default(TDataObject)); } return(await Task.Run(() => Serializer.Deserialize <TDataObject>(json)).ConfigureAwait(false)); } } catch (Exception e) { AppCenterHelpers.Log(e); return(default(TDataObject)); } finally { UpdateActivityIndicatorStatus(false); } }
protected override void OnAppearing() { base.OnAppearing(); AppCenterHelpers.TrackEvent(AppCenterConstants.ContactDetailPageAppeared); }