From c120c8d4a1bcc84d9b0ee17c9f018abbd130c2ee Mon Sep 17 00:00:00 2001 From: Josh Yaganeh <319444+jyaganeh@users.noreply.github.com> Date: Tue, 28 Feb 2023 17:04:31 -0800 Subject: [PATCH] Prep release 17.0.0 (#211) --- CHANGELOG.md | 12 +++++ GettingStarted.md | 109 ---------------------------------------------- README.md | 6 +-- 3 files changed, 14 insertions(+), 113 deletions(-) delete mode 100644 GettingStarted.md diff --git a/CHANGELOG.md b/CHANGELOG.md index 6e14b928..ee0d5407 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,5 +1,17 @@ # Airship Xamarin Changelog +## Version 17.0.0 - February 28, 2023 +Major release to support MAUI. The Airship .NET SDK now targets .NET 6.0, and is compatible with +Android 5.0 (API 21) or higher, and iOS 13 or higher, using the latest supported release of Xcode (currently 14.2). + +### Changes +- Updated bindings and cross-platform libraries to target `net6.0`, `net6.0-android`, and `net6.0-ios` +- Updated Android SDK to 16.8.1 +- Updated iOS SDK to 16.11.1 +- Renamed Airship.NETStandard to Airship.NET (`namespace AirshipDotNet`) +- Added a new `airship.net.messagecenter` that provides a cross-platform control that can be used to display Message Center messages. +- Created a new MAUI Sample App + ## Version 16.3.0 - December 23, 2022 Minor release to support iOS SDK 16.10.6 and Android SDK 16.8.0 and fix an issue with the Message Center NativeBridge on iOS. diff --git a/GettingStarted.md b/GettingStarted.md deleted file mode 100644 index b7471e27..00000000 --- a/GettingStarted.md +++ /dev/null @@ -1,109 +0,0 @@ -# Airship SDK - -Here are some examples to help get you started integrating the Airship SDK with your -Xamarin application. - -### iOS Setup - -1. In the Application's delegate, call `TakeOff` in `FinishedLaunching`: - ``` - [Register ("AppDelegate")] - public class AppDelegate : UIApplicationDelegate - { - public override bool FinishedLaunching (UIApplication application, NSDictionary launchOptions) - { - UAirship.TakeOff (); - // Configure airship here - return true; - } - } - ``` - - Note that if the TakeOff process fails due to improper or missing configuration, the shared - UAirship instance will be null. The Airship SDK always logs implementation errors at - high visibility. - -2. Provide `AirshipConfig.plist` file with the application's configuration: - ``` - - - - - inProduction - - developmentAppKey - Your Development App Key - developmentAppSecret - Your Development App Secret - productionAppKey - Your Production App Key - productionAppSecret - Your Production App Secret - - - ``` - - In order for this file to be visible to the SDK during TakeOff, be sure that its BuildAction - is set to "Bundle Resource" in your app project. - -3. Enable user notifications: - ``` - UAirship.Push().UserPushNotificationsEnabled = true; - ``` -4. Because of some [Xamarin limitations](https://docs.microsoft.com/en-us/xamarin/xamarin-forms/xaml/hot-reload#known-limitations) related to XAML Hot Reload and Linker, you need to set some settings in the iOS Build from the project options: - - - Enable the Mono interpreter when debugging on a physical device. - - Set the linker behavior to: "Don't Link". - -### Android Setup - -1. Create a class that extends Application and call `TakeOff` in `OnCreate`: - ``` - [Application] - public class MainApp : Application - { - public MainApp(IntPtr handle, JniHandleOwnership ownerShip) : base(handle, ownerShip) - { - } - - public override void OnCreate() - { - base.OnCreate(); - - // Call takeOff - UAirship.TakeOff(this, (UAirship airship) => { - // Configure airship here - }); - } - } - ``` - -2. Provide `airshipconfig.properties` file in the Assets directory with the application's configuration: - ``` - developmentAppKey = Your Development App Key - developmentAppSecret = Your Development App Secret - - productionAppKey = Your Production App Key - productionAppSecret = Your Production Secret - - # Toggles between the development and production app credentials - # Before submitting your application to an app store set to true - inProduction = false - - # LogLevel is "VERBOSE", "DEBUG", "INFO", "WARN", "ERROR" or "ASSERT" - developmentLogLevel = DEBUG - productionLogLevel = ERROR - ``` - -3. Enable user notifications: - ``` - UAirship.Shared().PushManager.UserNotificationsEnabled = true; - ``` - -### Platform Documentation -- iOS: http://docs.airship.com/platform/ios.html -- Android: http://docs.airship.com/platform/android.html -- Topic guides: http://docs.airship.com/topic-guides/index.html - -### Support -- https://support.airship.com diff --git a/README.md b/README.md index 0c0ab17e..64fbebd4 100644 --- a/README.md +++ b/README.md @@ -1,10 +1,10 @@ -# Airship Xamarin Library +# Airship .Net Library This library provides official bindings to the Airship SDK, as well as a [cross-platform sample application](SampleApp). ## Resources -- [Xamarin Platform Doc](http://docs.urbanairship.com/platform/xamarin.html) +- [Platform Documentation](http://docs.urbanairship.com/platform/xamarin.html) - [Getting Started](GettingStarted.md) - [CHANGELOG](CHANGELOG.md) - [Cross-platform sample application](SampleApp) @@ -13,5 +13,3 @@ This library provides official bindings to the Airship SDK, as well as a [cross- To build all of the artifacts, run `./gradlew build` in the root of the repository. The build requires Carthage, which can be installed with `brew update && brew install carthage`. - -To install required Python scripts and dependencies, run `pip install -r requirements.txt`