Android API: краткое введение
Получение содержимого уведомления при его получении.
Получение содержимого уведомления при открытии уведомления.
Получение содержимого сообщения при получении пользовательского сообщения.
Сбор интегрированных журналов.
Приём сообщений и реагирование на уведомления.
Статистический анализ.
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 — идентификатор полученного уведомления или пользовательского сообщения.
Очистка уведомлений.
Настройка разрешённого времени отправки.
Настройка времени тишины.
Настройка стиля панели уведомлений.
Basic используется для настройки базовых стилей в Android-уведомлениях, таких как defaults, flags и icon.
Если этот метод не вызывается для настройки, то по умолчанию уведомления будут отображаться в стандартном стиле Android.
window.plugins.jPushPlugin.setBasicPushNotificationBuilder()
window.plugins.jPushPlugin.setCustomPushNotificationBuilder()
Настройка количества сохраняемых уведомлений
С помощью Jiguang Push SDK на клиент отправляется множество уведомлений. Если пользователь их не обрабатывает, они сохраняются. По умолчанию сохраняется 5 последних уведомлений, но разработчик может изменить это число с помощью API.
window.plugins.jPushPlugin.setLatestNotificationNum(num)
Локальные уведомления
Локальные уведомления не зависят от сети и могут срабатывать без подключения к интернету. Они не ограничены количеством сохраняемых уведомлений и их время срабатывания отсчитывается от момента отправки.
Три API выполняют следующие функции: добавляют локальное уведомление, удаляют локальное уведомление и удаляют все локальные уведомления.
#####Интерфейс определения
window.plugins.jPushPlugin.addLocalNotification(builderId, content, title, notificaitonID, broadcastTime, extras)
window.plugins.jPushPlugin.removeLocalNotification(notificationID)
window.plugins.jPushPlugin.clearLocalNotifications()
####Параметры
Обратные вызовы JavaScript при отправке мультимедийных страниц
При отправке мультимедийного уведомления пользователь может использовать пользовательскую функцию JavaScript для управления страницей, например, закрыть текущую страницу, перейти к определённому действию или Activity и т. д.
API предоставляет следующие обратные вызовы: закрытие текущей страницы, открытие главного Activity приложения, открытие Activity по имени, передача параметров страницы в приложение через широковещательное сообщение и т. п.
JPushWeb.close(); // закроет текущую страницу при вызове из HTML-страницы.
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);
}
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 )