public final class PebbleKit
extends java.lang.Object
| Modifier and Type | Class and Description | 
|---|---|
static class  | 
PebbleKit.FirmwareVersionInfo  | 
static class  | 
PebbleKit.PebbleAckReceiver
A special-purpose BroadcastReceiver that makes it easy to handle 'RECEIVE_ACK' intents broadcast from pebble
 .apk. 
 | 
static class  | 
PebbleKit.PebbleDataLogReceiver
A special-purpose BroadcastReceiver that makes it easy to handle 'DATA_AVAILABLE' data logging intents broadcast from pebble.apk. 
 | 
static class  | 
PebbleKit.PebbleDataReceiver
A special-purpose BroadcastReceiver that makes it easy to handle 'RECEIVE' intents broadcast from pebble.apk. 
 | 
static class  | 
PebbleKit.PebbleNackReceiver
A special-purpose BroadcastReceiver that makes it easy to handle 'RECEIVE_NACK' intents broadcast from pebble
 .apk. 
 | 
| Modifier and Type | Method and Description | 
|---|---|
static boolean | 
areAppMessagesSupported(android.content.Context context)
Synchronously query the Pebble application to see if the connected watch is running a firmware version that
 supports PebbleKit messages. 
 | 
static void | 
closeAppOnPebble(android.content.Context context,
                java.util.UUID watchappUuid)
Send a message to the connected Pebble to close an application identified by a UUID. 
 | 
static void | 
customizeWatchApp(android.content.Context context,
                 Constants.PebbleAppType appType,
                 java.lang.String name,
                 android.graphics.Bitmap icon)
Send a message to the connected Pebble to "customize" a built-in PebbleKit watch-app. 
 | 
static PebbleKit.FirmwareVersionInfo | 
getWatchFWVersion(android.content.Context context)
Get the version information of the firmware running on a connected watch. 
 | 
static boolean | 
isDataLoggingSupported(android.content.Context context)
Synchronously query the Pebble application to see if the connected watch is running a firmware version that
 supports PebbleKit data logging. 
 | 
static boolean | 
isWatchConnected(android.content.Context context)
Synchronously query the Pebble application to see if an active Bluetooth connection to a watch currently exists. 
 | 
static android.content.BroadcastReceiver | 
registerDataLogReceiver(android.content.Context context,
                       PebbleKit.PebbleDataLogReceiver receiver)
A convenience function to assist in programatically registering a broadcast receiver for the 'DATA_AVAILABLE'
 intent. 
 | 
static android.content.BroadcastReceiver | 
registerPebbleConnectedReceiver(android.content.Context context,
                               android.content.BroadcastReceiver receiver)
A convenience function to assist in programatically registering a broadcast receiver for the 'CONNECTED' intent. 
 | 
static android.content.BroadcastReceiver | 
registerPebbleDisconnectedReceiver(android.content.Context context,
                                  android.content.BroadcastReceiver receiver)
A convenience function to assist in programatically registering a broadcast receiver for the 'DISCONNECTED'
 intent. 
 | 
static android.content.BroadcastReceiver | 
registerReceivedAckHandler(android.content.Context context,
                          PebbleKit.PebbleAckReceiver receiver)
A convenience function to assist in programatically registering a broadcast receiver for the 'RECEIVE_ACK'
 intent. 
 | 
static android.content.BroadcastReceiver | 
registerReceivedDataHandler(android.content.Context context,
                           PebbleKit.PebbleDataReceiver receiver)
A convenience function to assist in programatically registering a broadcast receiver for the 'RECEIVE' intent. 
 | 
static android.content.BroadcastReceiver | 
registerReceivedNackHandler(android.content.Context context,
                           PebbleKit.PebbleNackReceiver receiver)
A convenience function to assist in programatically registering a broadcast receiver for the 'RECEIVE_NACK'
 intent. 
 | 
static void | 
requestDataLogsForApp(android.content.Context context,
                     java.util.UUID appUuid)
A convenience function to emit an intent to pebble.apk to request the data logs for a particular app. 
 | 
static void | 
sendAckToPebble(android.content.Context context,
               int transactionId)
Send a message to the connected watch acknowledging the receipt of a PebbleDictionary. 
 | 
static void | 
sendDataToPebble(android.content.Context context,
                java.util.UUID watchappUuid,
                PebbleDictionary data)
Send one-or-more key-value pairs to the watch-app identified by the provided UUID. 
 | 
static void | 
sendDataToPebbleWithTransactionId(android.content.Context context,
                                 java.util.UUID watchappUuid,
                                 PebbleDictionary data,
                                 int transactionId)
Send one-or-more key-value pairs to the watch-app identified by the provided UUID. 
 | 
static void | 
sendNackToPebble(android.content.Context context,
                int transactionId)
Send a message to the connected watch that the previously sent PebbleDictionary was not received successfully. 
 | 
static void | 
startAppOnPebble(android.content.Context context,
                java.util.UUID watchappUuid)
Send a message to the connected Pebble to launch an application identified by a UUID. 
 | 
public static void customizeWatchApp(android.content.Context context,
                                     Constants.PebbleAppType appType,
                                     java.lang.String name,
                                     android.graphics.Bitmap icon)
                              throws java.lang.IllegalArgumentException
context - The context used to send the broadcast. (Protip: pass in the ApplicationContext here.)appType - The watch-app to be configured. Options are eithername - The custom name to be applied to the watch-app. Names must be less than 32 characters in length.icon - The custom icon to be applied to the watch-app. Icons must be black-and-white bitmaps no larger than 32px
         in either dimension.java.lang.IllegalArgumentException - Thrown if the specified name or icon are invalid. Constants.PebbleAppType.SPORTS or Constants.PebbleAppType.GOLF.public static boolean isWatchConnected(android.content.Context context)
context - The Android context used to perform the query.
         Protip: You probably want to use your ApplicationContext here.public static boolean areAppMessagesSupported(android.content.Context context)
context - The Android context used to perform the query.
         Protip: You probably want to use your ApplicationContext here.public static PebbleKit.FirmwareVersionInfo getWatchFWVersion(android.content.Context context)
context - The Android context used to perform the query.
         Protip: You probably want to use your ApplicationContext here.public static boolean isDataLoggingSupported(android.content.Context context)
context - The Android context used to perform the query.
         Protip: You probably want to use your ApplicationContext here.public static void startAppOnPebble(android.content.Context context,
                                    java.util.UUID watchappUuid)
                             throws java.lang.IllegalArgumentException
context - The context used to send the broadcast.watchappUuid - A UUID uniquely identifying the target application. UUIDs for the stock PebbleKit applications are
         available in Constants.java.lang.IllegalArgumentException - Thrown if the specified UUID is invalid.public static void closeAppOnPebble(android.content.Context context,
                                    java.util.UUID watchappUuid)
                             throws java.lang.IllegalArgumentException
context - The context used to send the broadcast.watchappUuid - A UUID uniquely identifying the target application. UUIDs for the stock kit applications are available in
         Constants.java.lang.IllegalArgumentException - Thrown if the specified UUID is invalid.public static void sendDataToPebble(android.content.Context context,
                                    java.util.UUID watchappUuid,
                                    PebbleDictionary data)
                             throws java.lang.IllegalArgumentException
context - The context used to send the broadcast.watchappUuid - A UUID uniquely identifying the target application. UUIDs for the stock kit applications are available in
         Constants.data - A dictionary containing one-or-more key-value pairs. For more information about the types of data that
         can be stored, see PebbleDictionary.java.lang.IllegalArgumentException - Thrown in the specified PebbleDictionary or UUID is invalid.public static void sendDataToPebbleWithTransactionId(android.content.Context context,
                                                     java.util.UUID watchappUuid,
                                                     PebbleDictionary data,
                                                     int transactionId)
                                              throws java.lang.IllegalArgumentException
context - The context used to send the broadcast.watchappUuid - A UUID uniquely identifying the target application. UUIDs for the stock kit applications are available in
         Constants.data - A dictionary containing one-or-more key-value pairs. For more information about the types of data that
         can be stored, see PebbleDictionary.transactionId - An integer uniquely identifying the transaction. This can be used to correlate messages sent to the
         Pebble and ACK/NACKs received from the Pebble.java.lang.IllegalArgumentException - Thrown in the specified PebbleDictionary or UUID is invalid.public static void sendAckToPebble(android.content.Context context,
                                   int transactionId)
                            throws java.lang.IllegalArgumentException
context - The context used to send the broadcast.transactionId - The transaction id of the message in which the data was received. Valid transaction IDs are between (0,
         255).java.lang.IllegalArgumentException - Thrown if an invalid transaction id is specified.public static void sendNackToPebble(android.content.Context context,
                                    int transactionId)
                             throws java.lang.IllegalArgumentException
context - The context used to send the broadcast.transactionId - The transaction id of the message in which the data was received. Valid transaction IDs are between (0,
         255).java.lang.IllegalArgumentException - Thrown if an invalid transaction id is specified.public static android.content.BroadcastReceiver registerPebbleConnectedReceiver(android.content.Context context,
                                                                                android.content.BroadcastReceiver receiver)
Activity.onPause() method.context - The context in which to register the BroadcastReceiver.receiver - The receiver to be registered.Constants.INTENT_PEBBLE_CONNECTEDpublic static android.content.BroadcastReceiver registerPebbleDisconnectedReceiver(android.content.Context context,
                                                                                   android.content.BroadcastReceiver receiver)
Activity.onPause() method.context - The context in which to register the BroadcastReceiver.receiver - The receiver to be registered.Constants.INTENT_PEBBLE_DISCONNECTEDpublic static android.content.BroadcastReceiver registerReceivedDataHandler(android.content.Context context,
                                                                            PebbleKit.PebbleDataReceiver receiver)
Activity.onPause() method.context - The context in which to register the BroadcastReceiver.receiver - The receiver to be registered.Constants.INTENT_APP_RECEIVEpublic static android.content.BroadcastReceiver registerReceivedAckHandler(android.content.Context context,
                                                                           PebbleKit.PebbleAckReceiver receiver)
Activity.onPause() method.context - The context in which to register the BroadcastReceiver.receiver - The receiver to be registered.Constants.INTENT_APP_RECEIVE_ACKpublic static android.content.BroadcastReceiver registerReceivedNackHandler(android.content.Context context,
                                                                            PebbleKit.PebbleNackReceiver receiver)
Activity.onPause() method.context - The context in which to register the BroadcastReceiver.receiver - The receiver to be registered.Constants.INTENT_APP_RECEIVE_NACKpublic static android.content.BroadcastReceiver registerDataLogReceiver(android.content.Context context,
                                                                        PebbleKit.PebbleDataLogReceiver receiver)
Activity.onPause() method.context - The context in which to register the BroadcastReceiver.receiver - The receiver to be registered.Constants.INTENT_DL_RECEIVE_DATApublic static void requestDataLogsForApp(android.content.Context context,
                                         java.util.UUID appUuid)
Activity.onPause() method.context - The context in which to register the BroadcastReceiver.appUuid - The app for which to request data logs.Constants.INTENT_DL_RECEIVE_DATA, 
Constants.INTENT_DL_REQUEST_DATA