Push і локальні повідомлення

Реалізовано в версії 8.3.6.182 мобільної платформи.

У платформі 1С: Підприємство і в мобільній платформі ми реалізували механізм push-повідомлень і локальних повідомлень.

Push і локальні повідомлення це перш за все спосіб проінформувати користувача про подію. Причому подія це може статися навіть в той момент, коли мобільний додаток знаходиться в фоновому режимі (запущено, але неактивно), або коли воно просто вивантажено з пам'яті і не виконується.

локальні повідомлення

Локальні повідомлення це зручний інструмент для реалізації різноманітних нагадувань, які мобільний додаток встановлює саме для себе. Нагадувань, які можуть спрацювати вже в той момент, коли програма не активно.

Створення локального повідомлення в мобільному додатку може виглядати, наприклад, наступним чином:

Push і локальні повідомлення

А обробка локального повідомлення в мобільному додатку може виглядати так:

Push і локальні повідомлення

Локальні повідомлення можуть бути миттєвими (відображається відразу), запланованими (відображається в зазначений час) або періодичними (знов з'явився після закінчення зазначеного періоду).

Push-повідомлення

За допомогою push-повідомлень можна реалізовувати сценарії взаємодії основного і мобільного додатків з ініціативи основного додатка. Коли в основному додатку виникає деяка подія, додаток розсилає push-повідомлення одержувачам - мобільних додатків.

Далі можливі два сценарії взаємодії. По-перше, інформацію, пов'язану з подією, можна передати в самому push-повідомлення, але треба пам'ятати, що його розмір обмежений.

Тому якщо потрібно передати значний обсяг даних, можна використовувати інший сценарій взаємодії. У ньому push-повідомлення використовується тільки як сигнал мобільному додатку про те, що йому необхідно зв'язатися з основним додатком. Мобільний додаток, отримавши push-повідомлення, самостійно зв'язується з основним додатком тим способом, яким воно зазвичай це робить. Наприклад, через веб або http-сервіс. І отримує ті дані, які основну програму підготувало для нього.

Для передачі повідомлень від відправника до одержувача механізм push-повідомлень використовує сторонній компонент - сервіс доставки повідомлень. Ми реалізували підтримку двох таких сервісів:

В результаті загальна схема взаємодії виглядає наступним чином:

  • Відправник - основне додаток 1С: Підприємства;
  • Сервіс доставки повідомлень (APNs або GCM) - відправляє повідомлення мобільного пристрою, коли воно стає доступно в мережі Інтернет;
  • Одержувач - мобільний додаток 1С: Підприємства.

Наприклад, відправка push-повідомлення в основному додатку може виглядати наступним чином:

Push і локальні повідомлення

А отримання push-повідомлення в мобільному додатку на Android може виглядати так:

Push і локальні повідомлення

Отримання і обробка повідомлень

Якщо мобільний додаток активно. то повідомлення одразу доставляється в додаток. Якщо в додатку підключений обробник повідомлень, то він виконується. У цьому обробнику можна запросити у основного додатка великий пакет даних, якщо в цьому є необхідність. Тому що розмір push-повідомлення обмежений, і передавати значні обсяги даних в ньому самому неможливо.

Якщо мобільний додаток працює у фоновому режимі (неактивно) або взагалі не виконується (вивантажено з пам'яті), то повідомлення відображається операційною системою. При цьому використовується звукове сповіщення і наклейка. В iOS наклейка буде встановлена ​​у іконки мобільного застосування на домашньому екрані, а в Android вона задає число, яке буде відображено в повідомленні на панелі повідомлень. Після того, як користувач натисне на повідомлення, буде активізовано (або запущено) мобільний додаток, і буде виконаний (якщо він підключений) обробник повідомлень.