public override bool FinishedLaunching(UIApplication app, NSDictionary options) { // Set log level for debugging config loading (optional) // It will be set to the value in the loaded config upon takeOff UAirship.LogLevel = UALogLevel.Trace; // Populate AirshipConfig.plist with your app's info from https://go.urbanairship.com // or set runtime properties here. UAConfig config = UAConfig.DefaultConfig(); if (!config.Validate()) { throw new RuntimeException("The AirshipConfig.plist must be a part of the app bundle and " + "include a valid appkey and secret for the selected production level."); } WarnIfSimulator(); // Bootstrap the Airship SDK UAirship.TakeOff(config, options); Console.WriteLine("Config:{0}", config); UAirship.Push.ResetBadge(); pushHandler = new PushHandler(); UAirship.Push.PushNotificationDelegate = pushHandler; UNNotificationAction sampleAction = UNNotificationAction.FromIdentifier("sampleAction", title: "Sample Action Title", options: UNNotificationActionOptions.Destructive); var sampleActions = new UNNotificationAction[] { sampleAction }; var intentIdentifiers = new string[] { }; // Create category for sample content extension UNNotificationCategory[] SampleCategoryArray = { UNNotificationCategory.FromIdentifier("sample-extension-category", actions: sampleActions, intentIdentifiers: intentIdentifiers, options: UNNotificationCategoryOptions.None) }; NSSet <UNNotificationCategory> categories = new NSSet <UNNotificationCategory>(SampleCategoryArray); // Add sample content extension category to Airship custom categories UAirship.Push.CustomCategories = categories; UAirship.Push.WeakRegistrationDelegate = this; NSNotificationCenter.DefaultCenter.AddObserver(new NSString("channelIDUpdated"), (notification) => { //FIXME: Find a way to call the refreshView from the HomeViewController }); InitFormsApp(); return(base.FinishedLaunching(app, options)); }
public override bool FinishedLaunching(UIApplication application, NSDictionary launchOptions) { this.FailIfSimulator(); Xamarin.Forms.Forms.Init(); // Set log level for debugging config loading (optional) // It will be set to the value in the loaded config upon takeOff UAirship.SetLogLevel(UALogLevel.Trace); // Populate AirshipConfig.plist with your app's info from https://go.urbanairship.com // or set runtime properties here. UAConfig config = UAConfig.DefaultConfig(); if (!config.Validate()) { this.ShowInvalidConfigAlert(); return(true); } config.MessageCenterStyleConfig = "UAMessageCenterDefaultStyle"; // Bootstrap the Urban Airship SDK UAirship.TakeOff(config); Console.WriteLine("Config:{0}", config); UAirship.Push.ResetBadge(); pushHandler = new PushHandler(); UAirship.Push.PushNotificationDelegate = pushHandler; inboxDelegate = new InboxDelegate(Window.RootViewController); UAirship.Inbox.Delegate = inboxDelegate; NSString messageListUpdated = new NSString("com.urbanairship.notification.message_list_updated"); NSNotificationCenter.DefaultCenter.AddObserver(messageListUpdated, (notification) => { refreshMessageCenterBadge(); }); return(true); }