1 В избранное 0 Ответвления 0

OSCHINA-MIRROR/huatech2016-jpush-phonegap-plugin

Присоединиться к Gitlife
Откройте для себя и примите участие в публичных проектах с открытым исходным кодом с участием более 10 миллионов разработчиков. Приватные репозитории также полностью бесплатны :)
Присоединиться бесплатно
Клонировать/Скачать
Android_detail_api.md 16 КБ
Копировать Редактировать Web IDE Исходные данные Просмотреть построчно История
gitlife-traslator Отправлено 25.11.2024 05:12 cda85ed

Android API: краткое введение

  1. Получение содержимого уведомления при его получении.

    • Содержимое: window.plugins.jPushPlugin.receiveNotification.alert.
    • Заголовок: window.plugins.jPushPlugin.receiveNotification.title.
    • Дополнительные поля: window.plugins.jPushPlugin.receiveNotification.extras.yourKey.
  2. Получение содержимого уведомления при открытии уведомления.

    • Содержимое: window.plugins.jPushPlugin.openNotification.alert.
    • Заголовок: window.plugins.jPushPlugin.openNotification.title.
    • Дополнительные поля: window.plugins.jPushPlugin.openNotification.extras.yourKey.
  3. Получение содержимого сообщения при получении пользовательского сообщения.

    • Содержимое: window.plugins.jPushPlugin.receiveMessage.message.
    • Дополнительные поля: window.plugins.jPushPlugin.receiveMessage.extras.yourKey.
  4. Сбор интегрированных журналов.

    • API — setDebugMode используется для включения режима отладки, который позволяет просматривать журналы интеграции JPush в процессе. Если интеграция не удалась, это поможет определить проблему.
    • Интерфейс:
      • window.plugins.jPushPlugin.setDebugMode(mode).
    • Описание параметров:
      • mode: true — отображает журналы интеграции; false — не отображает журналы интеграции.
  5. Приём сообщений и реагирование на уведомления.

    • API — receiveMessageInAndroidCallback используется для обратного вызова функции Android при получении сообщения в приложении. Эту функцию не нужно вызывать вручную.
    • Интерфейс: window.plugins.jPushPlugin.receiveMessageInAndroidCallback(data).
    • Параметры: data — строка JavaScript, содержащая ключ: значение, которое можно просмотреть в теле функции.
    • API — openNotificationInAndroidCallback вызывается при нажатии на уведомление в панели уведомлений мобильного устройства Android и переходе в приложение. Эта функция также является функцией обратного вызова и не требует ручного вызова.
    • Интерфейс: window.plugins.jPushPlugin.openNotificationInAndroidCallback(data).
    • Параметры: data — строка.
  6. Статистический анализ.

    • API — onResume / onPause — это локальный API Android, а не API JavaScript. Он используется для подсчёта времени использования, активных пользователей и количества открытий приложения, а затем отправляется на сервер для отображения разработчикам в Portal.

    • Интерфейс: public static void onResume(final Activity activity), public static void onPause(final Activity activity).

    • Параметры: Activity — текущая активность.

    • Вызов: должен быть вызван во всех методах onResume() и onPause() всех активностей.

    • Пример кода: @Override protected void onResume() { super.onResume(); JPushInterface.onResume(this); }

      @Override protected void onPause() { super.onPause(); JPushInterface.onPause(this); }

    • API — setStatisticsOpen используется для управления отображением статистики использования приложения в JavaScript. Однако, если уже добавлен метод onResume/onPause, этот метод больше не может использоваться для управления статистикой.

    • Интерфейс: window.plugins.jPushPlugin.setStatisticsOpen(boolean).

    • Параметры: boolean: true — включает статистику; false — отключает статистику.

    • API — reportNotificationOpened используется для отправки отчётов о событиях, таких как открытие уведомлений или отображение пользовательских сообщений, которые необходимо отслеживать.

    • Интерфейс: window.plugins.jPushPlugin.reportNotificationOpened(msgID).

    • Параметры: msgID — идентификатор полученного уведомления или пользовательского сообщения.

  7. Очистка уведомлений.

    • API — clearAllNotification используется для очистки всех уведомлений, отображаемых JPush SDK (исключая те, которые отображаются другими способами).
    • Интерфейс: window.plugins.jPushPlugin.clearAllNotification().
  8. Настройка разрешённого времени отправки.

    • По умолчанию пользователи могут получать уведомления в любое время. С помощью этого API разработчики могут настроить разрешённое время отправки. Если сообщение получено вне указанного временного диапазона, оно будет отброшено.
    • Интерфейс: window.plugins.jPushPlugin.setPushTime(days, startHour, endHour).
    • Параметры: days — массив, где 0 представляет воскресенье, 1 представляет понедельник и т. д. (диапазон значений — от 0 до 6). Массив со значением null означает, что уведомления могут быть получены в любое время, а массив с размером 0 означает, что никакие уведомления не могут быть получены. startHour — начало разрешённого времени (диапазон — от 0 до 23). endHour — конец разрешённого времени (диапазон — от 0 до 23).
  9. Настройка времени тишины.

    • По умолчанию, когда пользователи получают уведомления, они могут получать такие сигналы, как вибрация или звонок. Но пользователи могут захотеть отключить эти сигналы во время сна или встреч. Этот API позволяет разработчикам устанавливать периоды тишины. Если уведомление получено в течение этого периода, сигналов не будет.
    • Интерфейс: window.plugins.jPushPlugin.setSilenceTime(startHour, startMinute, endHour, endMinute).
    • Параметры: startHour — время начала периода тишины — часы (диапазон — от 0 до 23). startMinute — время начала периода тишины — минуты (диапазон — от 0 до 59). endHour — время окончания периода тишины — часы (диапазон — от 0 до 23). endMinute — время окончания периода тишины — минуты (диапазон — от 0 до 59).
  10. Настройка стиля панели уведомлений.

  • Когда пользователям требуется настроить стиль панели уведомлений по умолчанию, они могут вызвать этот метод. Разработчики должны настроить одноимённый метод в коде ../JPushPlugin.java, а затем вызвать этот метод в JavaScript.
  • Для получения дополнительной информации см. официальную документацию.
  • JPush SDK предоставляет два класса для настройки стиля панели уведомлений:
    • setBasicPushNotificationBuilder: Базовые настройки Android-уведомлений: defaults / flags / icon

Basic используется для настройки базовых стилей в Android-уведомлениях, таких как defaults, flags и icon.

  • setCustomPushNotificationBuilder: наследует Basic и позволяет разработчикам настраивать Notification Layout.

Если этот метод не вызывается для настройки, то по умолчанию уведомления будут отображаться в стандартном стиле Android.

Интерфейс определения

window.plugins.jPushPlugin.setBasicPushNotificationBuilder()
window.plugins.jPushPlugin.setCustomPushNotificationBuilder()

Настройка количества сохраняемых уведомлений

API — setLatestNotificationNum

С помощью Jiguang Push SDK на клиент отправляется множество уведомлений. Если пользователь их не обрабатывает, они сохраняются. По умолчанию сохраняется 5 последних уведомлений, но разработчик может изменить это число с помощью API.

Интерфейс определения

window.plugins.jPushPlugin.setLatestNotificationNum(num)

Параметры

  • num — количество сохраняемых уведомлений.

Локальные уведомления

API — addLocalNotification, removeLocalNotification, clearLocalNotifications

Локальные уведомления не зависят от сети и могут срабатывать без подключения к интернету. Они не ограничены количеством сохраняемых уведомлений и их время срабатывания отсчитывается от момента отправки.

Три API выполняют следующие функции: добавляют локальное уведомление, удаляют локальное уведомление и удаляют все локальные уведомления.

#####Интерфейс определения

window.plugins.jPushPlugin.addLocalNotification(builderId, content, title, notificaitonID, broadcastTime, extras)
window.plugins.jPushPlugin.removeLocalNotification(notificationID)
window.plugins.jPushPlugin.clearLocalNotifications()

####Параметры

  • builderId — устанавливает стиль локального уведомления.
  • content — устанавливает содержимое локального уведомления.
  • title — устанавливает заголовок локального уведомления.
  • notificaitonID — устанавливает ID локального уведомления.
  • broadcastTime — устанавливает время срабатывания локального уведомления в миллисекундах.
  • extras — устанавливает дополнительные данные в формате JSON.

Обратные вызовы JavaScript при отправке мультимедийных страниц

При отправке мультимедийного уведомления пользователь может использовать пользовательскую функцию JavaScript для управления страницей, например, закрыть текущую страницу, перейти к определённому действию или Activity и т. д.

API предоставляет следующие обратные вызовы: закрытие текущей страницы, открытие главного Activity приложения, открытие Activity по имени, передача параметров страницы в приложение через широковещательное сообщение и т. п.

API — закрыть текущую страницу

JPushWeb.close(); // закроет текущую страницу при вызове из HTML-страницы.

API — открыть главное Activity

JPushWeb.startMainActivity(String params);

После вызова этой функции из HTML будет открыто главное Activity приложения с передачей параметра «params» в Intent с ключом JPushInterface.EXTRA_EXTRA.

Пример кода для получения параметра в соответствующем Activity:

Intent intent = getIntent();
if (null != intent ) {
    String params = intent.getStringExtra(JPushInterface.EXTRA_EXTRA);
}

API — вызвать действие в приложении

JPushWeb.triggerNativeAction(String params);

Для реализации бизнес-логики после вызова этого метода необходимо реализовать логику в MyReceiver.java:

if (JPushInterface.ACTION_RICHPUSH_CALLBACK.equals(intent.getAction())) {
    Log.d(TAG, "пользователь получил RICH PUSH CALLBACK: " + bundle.getString(JPushInterface.EXTRA_EXTRA));
    // здесь можно реализовать действия в зависимости от содержимого JPushInterface.EXTRA_EXTRA, такие как открытие нового Activity, открытие веб-страницы и т.д.
}

Пример кода

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
 <head>
  <title>JPush Webview Test</title>
  <script>
       function clickButton() {
         JPushWeb.close();
       }

      function openUrl() {
         var json = "{'action':'open', 'url':'www.jpush.cn'}";
         JPushWeb.triggerNativeAction(json);
         JPushWeb.close(); // после получения json на стороне сервера можно открыть соответствующий URL.
      }
 </script>
 </head>
 <body>
     <button onclick="javascript:clickButton(this);return false;">Close</button>
     <button onclick="javascript:JPushWeb.startMainActivity('test - startMainActivity');return false;">StartMainActivity</button>
     <button onclick="javascript:JPushWeb.triggerNativeAction('test - triggerNativeAction');Javascript:JPushWeb.close();">triggerNativeAction and Close current webwiew</button>
     <button onclick="javascript:JPushWeb.startActivityByName('com.example.jpushdemo.TestActivity','test - startActivityByName');">startActivityByName</button>
     <button onclick="javascript:openUrl();">open a url</button>
 </body>
</html>

Опубликовать ( 0 )

Вы можете оставить комментарий после Вход в систему

1
https://api.gitlife.ru/oschina-mirror/huatech2016-jpush-phonegap-plugin.git
git@api.gitlife.ru:oschina-mirror/huatech2016-jpush-phonegap-plugin.git
oschina-mirror
huatech2016-jpush-phonegap-plugin
huatech2016-jpush-phonegap-plugin
master