public override void ViewWillAppear(bool animated) { base.ViewWillAppear(animated); ConfigureTitleMenu(); if (Reachability.IsNetworkAvailable()) { InvokeInBackground(() => { if (!isNavigatedForward) { CreateMqttConnection(); } }); } }
public override void ViewDidLoad() { base.ViewDidLoad(); // Perform any additional setup after loading the view, typically from a nib. View.BackgroundColor = UIColor.White; Title = "Movie Searching App "; TableView.Source = new TableSource(this); TableView.RowHeight = UITableView.AutomaticDimension; TableView.EstimatedRowHeight = 400f; TableView.SeparatorStyle = 0; searchBar = new UISearchBar(); searchBar.Placeholder = "Enter Movie Title"; searchBar.SizeToFit(); searchBar.AutocorrectionType = UITextAutocorrectionType.No; searchBar.AutocapitalizationType = UITextAutocapitalizationType.None; searchBar.SearchButtonClicked += (sender, e) => { // check whetehr seach has string or not if (!string.IsNullOrEmpty(searchBar.Text)) { // first check network if (Reachability.IsNetworkAvailable()) { Search(); } else { new UIAlertView("", "No network connection is available. Please check your netowrk.", null, "OK").Show(); } } else { new UIAlertView("", "Please enter searching string", null, "OK").Show(); } }; TableView.TableHeaderView = searchBar; }
public override async void PressedSendButton(UIButton button, string text, string senderId, string senderDisplayName, NSDate date) { if (!Reachability.IsNetworkAvailable()) { new UIAlertView("Alert", "Please check your internet connection!", null, "Ok", null).Show(); return; } SystemSoundPlayer.PlayMessageSentSound(); if (client == null) { CreateMqttConnection(); } client.Publish(TOPIC_PUBLISH, Encoding.UTF8.GetBytes(text), MqttMsgBase.QOS_LEVEL_AT_LEAST_ONCE, false); var message = new Message(SenderId, SenderDisplayName, NSDate.Now, text); if (message != null) { messages.Add(message); var conn = new SQLiteConnection(ChatterDatabase.DatabasePath()); var s = conn.Insert(new ChatUserModel() { Id = SenderId, DisplayName = SenderDisplayName, ChatDate = DateTime.Now, Text = text }); } FinishSendingMessage(true); await Task.Delay(500); }
protected void FinishedPickingImageFromMedia(object sender, UIImagePickerMediaPickedEventArgs e) { var galleryController = sender as UIImagePickerController; bool isImage = false; switch (e.Info[UIImagePickerController.MediaType].ToString()) { case "public.image": isImage = true; break; case "public.video": break; } if (isImage) { var image = e.Info[UIImagePickerController.OriginalImage] as UIImage; if (image != null) { string imageName = null; string extension = null; var refUrl = e.Info[UIImagePickerController.ReferenceUrl] as NSUrl; if (refUrl != null) { var assetsLibrary = new ALAssetsLibrary(); assetsLibrary.AssetForUrl(refUrl, async resultBlock => { var imageRepresentation = resultBlock.DefaultRepresentation; imageName = imageRepresentation.Filename; imageName = imageName.ToLower(); extension = imageName.Split('.')[1]; var imageData = image.AsJPEG(0.3f); var photoMediaItem = new PhotoMediaItem(image); if (!Reachability.IsNetworkAvailable()) { new UIAlertView("Alert", "Please check your internet connection!", null, "Ok", null).Show(); return; } SystemSoundPlayer.PlayMessageSentSound(); if (client == null) { CreateMqttConnection(); } client.Publish(TOPIC_PUBLISH, imageData.ToArray(), MqttMsgBase.QOS_LEVEL_AT_LEAST_ONCE, false); var message1 = new Message(SenderId, SenderDisplayName, NSDate.Now, photoMediaItem); if (message1 != null) { messages.Add(message1); var conn = new SQLiteConnection(ChatterDatabase.DatabasePath()); var s = conn.Insert(new ChatUserModel() { Id = SenderId, DisplayName = SenderDisplayName, ChatDate = DateTime.Now, Text = imageName }); } FinishSendingMessage(true); await Task.Delay(500); var message2 = new Message(friend.Id, friend.DisplayName, NSDate.Now, "Hello, Ramakant!!! your State: Maharashtra, Town: Sangali, Fruit: Mango, Current Rate: 150/Kg, Logistics: Rajeev Transport 400 per trip"); if (message2 != null) { messages.Add(message2); var conn = new SQLiteConnection(ChatterDatabase.DatabasePath()); var s = conn.Insert(new ChatUserModel() { Id = friend.Id, DisplayName = friend.DisplayName, ChatDate = DateTime.Now, Text = "Hello, Ramakant!!! your State: Maharashtra, Town: Sangali, Fruit: Mango, Current Rate: 150/Kg, Logistics: Rajeev Transport 400 per trip" }); } FinishSendingMessage(true); await Task.Delay(500); }, failureBlock => { }); } else { } } } galleryController.DismissViewController(true, null); }
private void FetchLyrics() { stateMachine.StartLoading(); if (Reachability.IsNetworkAvailable()) { script = new NSAppleScript(File.ReadAllText("Scripts/GetCurrentSong.txt")); result = script.ExecuteAndReturnError(out errors); //The NumberofItems property is being used to handle different use cases. Check GetCurrentSong.txt in Scripts folder to know more if (result.NumberOfItems == 3) { artist = result.DescriptorAtIndex(1).StringValue; track = result.DescriptorAtIndex(2).StringValue; app = result.DescriptorAtIndex(3).StringValue; var lyrics = lyricsHelper.GetLyrics(track, artist, (response, artist_name, share_url) => { tracklyrics = JsonConvert.DeserializeObject <TrackLyrics.RootObject>(response); if (tracklyrics.message.body.lyrics.instrumental == 0) { track_share_url = share_url; stateMachine.ShowContent(); } else { stateMachine.ShowEmpty(); } }); } else if (result.NumberOfItems == 0) { switch (result.StringValue) { //Transitioning to error state of state machine and calling the corresponding delegate method //These delegates method are being used so that one view can be reused for various error cases. case "1": stateMachine.ShowError(); NothingPlayingFound?.Invoke(this, null); break; case "2": stateMachine.ShowError(); NoMusicAppRunningFound?.Invoke(this, null); break; case "3": stateMachine.ShowError(); MultiPlayingFound?.Invoke(this, null); break; } } else { stateMachine.ShowError(); LyricsNotFoundOccurred?.Invoke(this, null); } } else { stateMachine.ShowError(); NetworkErrorOccurred?.Invoke(this, null); } }
/// <summary> /// Determines whether the device is connected or not. /// </summary> /// <returns><c>true</c>, if device connected was ised, <c>false</c> otherwise.</returns> internal static bool IsDeviceConnected() { return(Reachability.IsNetworkAvailable()); }