pebble/devsite/source/_changelogs/2.0-BETA3.md

118 lines
6.1 KiB
Markdown
Raw Permalink Normal View History

---
# Copyright 2025 Google LLC
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.
title: Pebble SDK 2.0 BETA3 - Changelog
date: 2013-12-12
---
* Pebble SDK 2.0 is currently in BETA and intended for developers only.
* SDK 2.0 will be released later this year as an over-the-air update to all Pebble users.
* Applications written for Pebble 1.x are not compatible with SDK 2.0
* If a 2.0 version of an application exists, the Pebble mobile applications will automatically install it when when a user upgrades her/his Pebble.
## What has changed since BETA2
Overview:
- The Android app fixes a large number of JS-related bugs.
- The Android app fixes a bug where all messages sent to android would be automatically acknowledged. Your application should acknowledge app messages.
- Some new user features in the firmware: Notification settings (with Do Not Disturb), better Alarms
- Lots of small UI and stability fixes in Pebble.
Known problems and bugs:
### Firmware
- added a Notification menu in the Settings to disable Notifications and configure a DoNotDisturb time frame
- much better Alarm app with a nicer UI, snooze support, disabled alarms support
- fix bugs where incoming calls could cause the vibration to stay on continuously
- fix a rare condition where the accelerometer would crash if an interrupt comes too late or the accelerometer sent 0 samples
- fix accelerometer behaviour when only 1 sample is requested: only send one sample (instead of 2)
- fix a bug where an iOS device could disconnect just 1-2 seconds after connecting
- automatically reconnect when user leaves Airplane Mode
- show (in settings) that vibrations are disabled when Pebble is plugged
- improved the set date/time UI to use the new DateTime UI (as in Alarms)
- adjust the framebuffer offset for modal window transitions
- reduced BLE connection interval
- log more information when an application crashes
- do not crash if an app_message section is re-opened - display warning instead
- fix a bug which caused firmware updates to fail under some conditions (mostly android)
- appsync will only update a dictionary if it has enough memory to do so (instead of finding out half-way that it does not have enough memory)
- always return to the launcher after an app crash (to avoid a crash loop on a watchface)
- *_destroy() will accept NULL pointers without errors
- always go back to the top of the menu when launching the menu from a watchface (to make "blind" navigation easier)
- fix a bug where an actionbar button would still be "pressed"
- show Bluetooth Name on getting started screen
- automatically delete old apps that are not compatible with this firmware version
- accelerate scrolling on the menu
- use modal window icon in the status bar as long as the modal window is displayed
- Export dict_size so external developers don't have to do pointer math :)
- fix a bug where scrolling in a long list of notifications could cause the display to "bounce"
- fix a bug where lots of app logging messages could overflow the system task queue and kill app message
- API documentation completely reviewed and updated
- missed call modal views will timeout after 180s
- force quit app when the back button is held for 2 seconds
- menu_cell_basic_draw() now automatically center the text in the cell. If you do not want a subtitle, pass NULL (otherwise, space will be reserved for the subtitle).
- fixed some bluetooth settings to avoid duplicated messages (could cause screenshot to go over 100%, duplicated log entries, firmware upgrade to fail, etc)
- `peek()`ing the accelerometer is not allowed anymore when you have also subscribed to receive updates
- fix a bug where the accelerometer would get stuck after a few hours
### iOS App
- fix a bug where datalogging could dump messages to another phone on your local network
- fix a bug where datalogging would get into a deadlock
- fix a bug where the developer connection would appear active but would be closed
### Android App
- fix a number of cases where a JS app would not be launched
- fix bug where clicking the configure icon would not open the configuration view of an app
- fix a bug which caused every AppMessage sent to Android to be acknowledged by the system
- Select the Google Play Music App as the default music player
- fix support email to use the Pebble bluetooth name instead of the last four digits of the serial
- if there is an error when uploading an app, do not dismiss the update screen right away
- do not dump large logs if stats json is not found
- check for firmware update when foregrounded
- fix bug where a canceled app install would be reported as completed
- fix bug where an install would fail silently because the resources could not be loaded
- display specific error message when a user tries to install a 2.0 app on a 1.x Pebble
- fix a bug where the android app would display error message "Could not update" while looking for updates in the background
### PebbleKit iOS
- allow one iOS application to exchange messages with several Pebble apps (with different UUIDs)
- fix a crash trying to parse invalid firmware version
- add CocoaPods support (see pebblekit-ios readme for more info)
- enabled "all warnings" and fixed errors
### PebbleKit Android
No changes.
### SDK Tools
- added support to upload any bundle (including firmware)
- added test to detect missing tools
- better implementation of the --debug flag
- fix bug where tools would fail when installed in a folder with a space in it
- fix bug where tools would fail on project with a space in the name
- some 1.x to 2.x conversion bugs fixed
- automatically re-enable applog when the watch reconnects
### Examples
- fix crashing bugs in 91Dub