/// <summary> /// Push Notification registration example's main logic. /// Doesn't support captcha verification. /// </summary> /// <param name="url">Publicapi's URL</param> /// <param name="user">Username</param> /// <param name="password">Password</param> /// <returns>Async task</returns> private async Task InitializeClient(string url, string user, string password) { _debugLabel.Text = "In progress..."; // Saving active URL to preferences var prefsEditor = _prefs.Edit(); prefsEditor.PutString(Constants.PrefsBaseUrl, url); prefsEditor.Commit(); // Resolving cached variables var guid = new Guid(_prefs.GetString(Constants.PrefsDeviceGuid, "Guid is missing")); var token = _prefs.GetString(Constants.PrefsFcmToken, "Token is missing"); // Client initialization var settings = new ClientSettings(guid, PlatformType.Android); var client = new MobileClient(settings) { BaseUrl = url }; await client.Authorization(user, password); //Push registration var model = new NotificationRegisterModel { PlatformType = PlatformType.Android, Token = token }; await client.PushNotification_RegisterAsync(model); // Finalizing _debugLabel.Text = "Push notifications successfully registered"; }