README.ru.md 6,2 КБ
Newer Older
ovc-serega's avatar
ovc-serega включено в состав коммита
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
[EN](README.md) | **RU**

# flutter_local_notifications_aurora
Оригинальный [Readme](https://github.com/MaikuB/flutter_local_notifications/blob/master/flutter_local_notifications/README.md)

## Описание

Aurora-реализация [flutter_local_notifications](https://pub.dev/packages/flutter_local_notifications).

Плагин для отображения локальных уведомлений для ОС Аврора.

**Quickstart: Пример использования основной функциональности**
```dart
import 'package:flutter_local_notifications/flutter_local_notifications.dart';

final notificationID = 1;
final FlutterLocalNotificationsPlugin notification = FlutterLocalNotificationsPlugin();

await flutterLocalNotificationsPlugin.show(
  notificationID,
  "Title notification",
  "My long body text notification",
  null, // payload
);
```

## Содержание
- [Установка и сборка](#установка-и-сборка)
- [Подробное описание](#detailed-description)
- [Совместимость](#совместимость)
- [Условия использования и участие в разработке](#правила-использования-и-участие-в-разработке)

<a name="установка-и-сборка"></a>
## Установка и сборка

**pubspec.yaml**

```yaml
dependencies:
  flutter_local_notifications: ^18.0.1
  flutter_local_notifications_aurora:
    git:
      url: https://developer.auroraos.ru/git/flutter/flutter-community-plugins/flutter_local_notifications_aurora.git
```

<a name="detailed-description"></a>
## Подробное описание

### Методы
#### Базовое уведомление

```dart
await flutterLocalNotificationsPlugin.show(
  notificationID,
  "Title notification",
  "My long body text notification",
  null, // payload
);
```

#### Уведомление с payload

```dart
await flutterLocalNotificationsPlugin.showWithPayload(
  notificationID,
  "Title notification",
  "Body notification",
  payload: const Payload(
    hints: Hints(
      sound: Sound.messageNewInstant,
      urgency: 2, // critical
      desktopEntry: 'my_app.desktop',
    ),
  ),
);
```
#### Остановить определённое уведомление 

```dart
await flutterLocalNotificationsPlugin.cancel(notificationID);
```

#### Остановить все уведомления

```dart
await flutterLocalNotificationsPlugin.cancelAll();
```

### Модели
Пакет предоставляет строго типизированные модели для уведомлений:

- `Payload` - Основной контейнер уведомлений
  - `hints`: `Hints` - Подсказки по уведомлению
- `Hints` - Модель для подсказки уведомления
  - `sound`: `Sound` - Предопределенный звук
  - `urgency`: `int` - Уровень срочности
  - Другие стандартные свойства подсказок

Эти модели помогают избежать ошибок при работе с payload уведомлений.

### Подсказки
Пакет поддерживает стандартные уведомления-подсказки в соответствии с [Desktop Notifications Specification](https://galago-project.org/specs/notification/0.9/x344.html).

#### Поддерживаемые подсказки 

| Нзвание         | Тип     | Описание |
|-----------------|---------|-------------|
| `urgency`       | byte    | Уровень срочности (0-низкий, 1-нормальный, 2-срочный) |
| `category`      | string  | Категория уведомления |
| `desktop-entry` | string  | Название Desktop файла (например 'my_app.desktop') |
| `sound-file`    | string  | Адрес звкового файла (автоматически устанавливается при использовании перечисления "Sound") |
| `suppress-sound`| boolean | Отключить воспроизведение звука |
| `x`             | int     | X координата экрана (требует y) |
| `y`             | int     | Y координата экрана (требует x) |

### Предопределённые звуки

Пакет предоставляет enum с общими звуками уведомлений:

```dart
enum Sound {
  bell,
  complete,
  dialogError,
  dialogInformation,
  dialogWarning,
  messageNewInstant,
  message,
  networkConnectivityEstablished,
  networkConnectivityLost,
  phoneIncomingCall,
}
```

<a name="совместимость"></a>
## Совместимость
Приложение корректно работает начиная с 5.0.0 версии ОС Авроры и Flutter 3.32.7.

<a name="правила-использования-и-участие-в-разработке"></a>
## Правила использования и участие в разработке

Исходный код проекта предоставляется по [лицензии](LICENSE.BSD-3-Clause.md), которая позволяет использовать его в сторонних приложениях.

Для участия в развитии проекта, пожалуйста, ознакомьтесь с [cоглашением участника](CONTRIBUTING.md).
Если Вы планируете присылать свой исходный код для включения в состав проекта, Вам понадобится принять [условия CLA](https://developer.auroraos.ru/git/wiki/-/wikis/CLA.ru).

Информация об участниках указана в файле [AUTHORS](AUTHORS.md).

[Кодекс поведения](CODE_OF_CONDUCT.md) —  это действующий набор правил компании «Открытая Мобильная Платформа», который информирует об ожиданиях по взаимодействию между членами сообщества при общении и работе над проектами.