Перейти к содержанию

Интеграция библиотеки Xamarin

1. Измените целевой фреймворк вашего Android-проекта на Android 8.0 или выше.
2. Добавьте nuget-пакет Pushwoosh в проекты Android и iOS.
3. Внесите следующие изменения в файл AppDelegate.cs вашего iOS-проекта:
3.1. В начале метода FinishedLaunching вставьте следующую строку:

Pushwoosh.iOS.PushManager.Init();

3.2. Добавьте эти методы в AppDelegate:

public override void RegisteredForRemoteNotifications(UIApplication application, NSData deviceToken)
{
Pushwoosh.iOS.PushManager.Instance.RegisteredForRemoteNotifications(deviceToken);
}
public override void FailedToRegisterForRemoteNotifications(UIApplication application, NSError error)
{
Pushwoosh.iOS.PushManager.Instance.FailedToRegisterForRemoteNotifications(error);
}
public override void ReceivedRemoteNotification(UIApplication application, NSDictionary userInfo)
{
Pushwoosh.iOS.PushManager.Instance.ReceivedRemoteNotification(userInfo);
}

4. В файле Info.plist измените значение Pushwoosh_APPID на ваш код приложения Pushwoosh (Application Code). Вы можете найти его в Контрольной панели.
5. Настройте ваш проект в консоли Firebase.
6.1. Добавьте файл google-services.json в ваш Android-проект.

6.2. В Visual Studio щелкните правой кнопкой мыши по файлу google-services.json и выберите опцию GoogleServicesJson в меню Build Action.

7. В файле MainActivity.cs вашего Android-проекта перед определением пространства имен (namespace) добавьте эти строки:

[assembly:MetaData("com.pushwoosh.appid", Value = "YOUR_PUSHWOOSH_APP_CODE")]
[assembly:MetaData("com.pushwoosh.senderid", Value = "@string/fcm_sender_id")]

Также в начале метода onCreate класса MainActivity инициализируйте PushManager с помощью строки Pushwoosh.Droid.PushManager.Init();.

8. В вашем Android-проекте найдите файл Resources/values/strings.xml или создайте его. Добавьте туда строку с вашим Sender ID:

strings.xml
<string name="fcm_sender_id">YOUR_SENDER_ID</string>

9. В кроссплатформенной части, в файле App.xaml.cs, добавьте регистрацию в метод onStart:

PushManager.Instance.Register();

Message Inbox

Anchor link to

1. Установите nuget-пакет Pushwoosh.Inbox в ваши проекты.
2.1. Для iOS добавьте следующую строку в ваш AppDelegate.cs (после Pushwoosh.iOS.PushManager.Init();):

Pushwoosh.Inbox.iOS.InboxManager.Init();

2.2. Для Android добавьте следующую строку в ваш MainActivity.cs (после Pushwoosh.Droid.PushManager.Init();):

Pushwoosh.Inbox.Droid.InboxManager.Init();

3. Чтобы отобразить UI Message Inbox в вашем приложении:

3.1. Создайте экземпляр PushwooshInboxStyle:

PushwooshInboxStyle inboxStyle = new PushwooshInboxStyle
{
AccentColor = Color.Violet,
BackgroundColor = Color.White,
BarAccentColor = Color.Blue,
BarBackgroundColor = Color.WhiteSmoke,
BarTextColor = Color.DarkGray,
DateColor = Color.Violet,
DefaultTextColor = Color.DarkBlue,
DescriptionColor = Color.DarkBlue,
SelectionColor = Color.Crimson,
SeparatorColor = Color.Crimson,
TitleColor = Color.DarkKhaki,
DefaultImageName = "inbox_message",
ListEmptyImageName = "inbox_empty",
ListErrorImageName = "inbox_error",
UnreadImageName = "inbox_unread",
BarTitle = "My custom title",
ListEmptyMessage = "There are no inbox messages yet",
ListErrorMessage = "Some error happened",
DateFormat = "dd.MM.yyyy"
};

3.2. Затем вызовите:

InboxManager.Instance.PresentInboxUI(inboxStyle);

Поделитесь с нами своим мнением

Anchor link to

Ваши отзывы помогают нам улучшать наш продукт, поэтому мы будем рады, если вы расскажете нам о любых проблемах, возникших в процессе интеграции SDK. Если вы столкнетесь с какими-либо трудностями, пожалуйста, поделитесь своими мыслями, заполнив эту форму.