2013-05-13 6 views
1

Я пытаюсь отправить уведомление на мои камешковые часы. Я использую этот код, который в основном the example from the website:Отправка уведомления в галерею

public void sendPebble(String title, String body) { 
    final Intent i = new Intent("com.getpebble.action.SEND_NOTIFICATION"); 

    final Map<String, String> data = new HashMap<String, String>(); 
    data.put("title", title); 
    data.put("body", body); 

    final JSONObject jsonData = new JSONObject(data); 
    final String notificationData = new JSONArray().put(jsonData).toString(); 
    i.putExtra("messageType", "PEBBLE_ALERT"); 
    i.putExtra("sender", "Test"); 
    i.putExtra("notificationData", notificationData); 

    Log.d("Test", "Sending to Pebble: " + notificationData); 
    sendBroadcast(i); 
} 

Я получаю сообщение LogCat, но не уведомления о часах. Процедура кажется достаточно простой, есть ли что-то слишком очевидное, что я пропустил? Или документация просто неполная?

Edit: Очевидные вопросы:

  • Да, часы подключены
  • Да, у меня есть уведомления сторонних позволили
+0

Я думаю, вам нужно объявить 'com.getpebble.action.SEND_NOTIFICATION' в файле манифеста, не уверен, просто думая ... –

+0

Если я правильно понял, это должен сделать только принимающий класс. –

ответ

13

Хорошо, это была моя проблема:

По умолчанию приложение Pebble отправляет уведомления только на часы, когда экран телефона выключен. Для разработки у меня всегда экран активен, когда телефон подключен через USB. Итак, решение было: Включить опцию «Всегда отправлять уведомления» в приложении Pebble.

Возможно, это избавляет кого-то от головной боли.