PrediSat
Revision as of 02:03, 13 March 2012 by Pilot 51 (talk | contribs) (→v1.1.2.1 [2012-03-13]: Released.)
PrediSat is an Android app that grabs Iridium flare and satellite pass data from Heavens-Above.com and formats it for the small screen of the phone. It also includes a few features to make satellite watching easier, such as alerts, countdowns, and night mode.
Links
- PrediSat on Android Market
- PrediSat Pro on Android Market
- PrediSat on AppBrain
- PrediSat Pro on AppBrain
- Heavens-Above (the source of satellite data for PrediSat)
- PrediSat issue tracker (view or submit problems and suggestions)
- PrediSat.com (forwards here)
Pro version
The Pro version adds some advanced features on top of what is available in the free version. It may also include early features that will later be added to the free version.
Price is $1 (USD).
Current Pro-only features:
- Multiple satellite USSC ID's can be entered for 10-day pass predictions
- Multiple alerts per event can be set
- Text-To-Speech alerts (optional)
- Alerts automatically created based on custom magnitude when list is loaded with new data (optional)
- Sightings log
- Export sightings to CSV
- No ads
Changelog
Dates are based on GMT.
v1.1.2.1 [2012-03-13]
- Fix parsing of morning/evening passes lists. Caused by major changes to the all satellites page on Heavens-Above. Sorry again for the delay.
- If the last pass for the current period (AM or PM) has ended, fetch the same period for the next day, or (Pro) an additional day if multiple days.
- Remove requirement for location and GPS features (supports Google TV).
v1.1.2 [2012-02-17]
- Fix crash when parsing 10-day list. Caused by minor changes to the 10-day page on Heavens-Above around Feb. 12. Sorry for the delay.
- Show year in Date column.
- Add pass magnitude filters for 0.0-2.5 (0.5 step).
- Remove pass magnitude 5.0 filter (no longer supported by HA).
- Add option to clear cache.
- Changing filter preference while in list now takes effect on next manual refresh without the need to close and reopen the list.
- Minor improvements to layouts making it appear better on large screens.
- Remove touchscreen requirement.
- Free: Update AdWhirl, AdMob, and Greystripe ad SDKs to latest versions.
- Free: Enable full-screen ad option for Android 2.3.x users since updated Greystripe SDK fixes a crash.
v1.1.1.3 [2011-12-10]
- Pro: TTS doesn't speak if phone is in silent mode or in a call.
- Fix rash when trying to update coordinates on some devices that don't have GPS (Honeycomb/tablets).
- Fix how process is closed. Bad practice of forcibly killing process because TTS service was badly coded and holding process open.
v1.1.1.2 [2011-08-04]
- Fix crash on somewhat rare occasion when opening Alerts, caused by wrong thread exception when automatically selecting initial tab.
v1.1.1.1 [2011-07-29]
- Fix crash when trying to sort empty list immediately after parsing. Thanks to a crash report for pointing it out!
v1.1.1 [2011-07-28]
- Fix refreshing more than once in a single list instance causing following issues:
- Crash during parsing of morning or evening passes after 10 day was enabled in previous refresh.
- Evening passes fetching morning instead if 10 day was disabled and morning was enabled in previous refresh,
- Night flares fetching daytime instead if daytime was enabled in previous refresh.
- Progress dialog indicates the number of events in list being parsed, instead of always showing 100.
- Fix countdown timer not automatically appearing for next event in Alerts if Remove Old Events is disabled.
- If existing instance of Alerts screen is at top of process when opening notification, it is used instead of starting a second Alerts instance.
- When opening Alerts, the tab with the next event is selected.
- Pro: Allow fetching multiple days of all passes, configurable between 1-10 days. It's a bit on the experimental side, but nonetheless very useful. Disabled by default, using the old and reliable method of fetching up to 24 hours.
- Slight increase in sorting performance and albeit more accurate as well. Sorting now happens as a single action after parsing instead of while parsing each event.
- Broke some night mode styling in Preferences due to style inheritance breaking in current revision of SDK. This change only affects 2.0 - 2.2, all the other SDK's have always had broken inheritance.
v1.1.0.1 [2011-07-13]
- Fix bug 18 (hopefully): Crash immediately after downloading lists. Couldn't reproduce based on limited information of crash reports & haven't been contacted directly about this.
- Time difference threshold for existing events from 10 to 40 minutes. Avoids duplicate events showing up in alerts if 10-day list not updated for awhile and prediction changes by more than 10 minutes.
v1.1.0 [2011-06-07]
- Tabs are used in Alerts and Sightings to select Passes and Flares lists, instead of splitting both lists on screen. The tabs indicate exactly the list associated with it (Pass/Flare Alerts/Sightings) and the number of events in each.
- Add confirmation dialog when clearing alerts or sightings lists.
- Add customizable notification message for TTS (Pro) and bubbles. Variables: Satellite name, event type, and minutes until event.
- Fix displayed time for stored events not changing when timezone is changed, plus other issues with using a different timezone than the phone.
- Satellite name is above countdown instead of in parentheses after, or in landscape mode the name is aligned to the right.
- Increased font size of countdown and made bold.
- Increased minimum height of list items about 2x to make them easier to touch.
- Event timer is shown for the next event when opening list.
- Add preferences to toggle messages for tips and updated alert times.
- Single-digit days are formatted without "0" prefix.
- Free: Fix space allowed in Alert Time preference, which causes alerts to not work.
- Pro: Timestamp included in filename of exported sightings CSV with pattern of yyyyMMddHHmm, preventing any unwanted overwrites.
- Fix progress not updating while parsing flares.
- Preferences and night mode menu options now accessible from lists.
- Preferences are categorized into different screens.
- 10-day passes - ISS replaced with USSC ID entry. Free allows only one entry, Pro is space-separated. ISS is default.
- Fix toast message showing string resource ID instead of "Timezone set to" when detecting timezone in preferences.
- Events are removed from alerts and main lists a custom number of minutes (default: 10) after they have completely passed. Check is only performed when opening or refreshing list.
- Lists are populated in UI (behind progress dialog) as parsing progresses.
- All lists are loaded to memory at launch and remains until app is closed, making it very quick to open lists.
- New list is only downloaded if manually refreshed from menu, cache is empty, or a custom number of hours (default: 6) have passed since last refresh.
- Huge performance boost for parsing, about 15-30x faster! (all 3 pass lists timed on G1 going from 285 to 10 sec. and Droid from 65 to 5 sec., including download time)
- Fix inability to load saved data across different ROMs. Data is now saved in an SQLite database. Data from 1.0.7 is moved at first launch.
- Removed: Backwards compatibility for alerts and sightings saved as cache in v1.0.6 and earlier. If you have not run any of the v1.0.7 releases, data from older versions will be lost.
v1.0.7.8 [2011-05-21]
- Fix automatic location starting when night mode is toggled.
- Pro: Fix colon at end of "Move to Sightings" in context menu for Alerts.
- Fix crash when opening context menu in Passes/Flares lists after loading from cache.
v1.0.7.7 [2011-05-19]
- Fix automatic location starting when orientation changes.
- Fix crash at start when Automatic Location is enabled. Thanks for crash reports, I didn't think to test it.
v1.0.7.6 [2011-05-19]
- Fix crash when opening preferences while using night mode for Android 2.0 and 2.3.1 to 3.1.
- Free: Fix problems (crash?) at launch for Android 2.3.x. Greystripe issue, had to disable option for full-screen ads in 2.3.x.
- Fix coordinates update stopping when orientation changes.
- Fix inability to get altitude coordinates because receiving location from network prevents GPS from providing it. Now continues searching for GPS after network location received if GPS is enabled.
- Fix Get Coordinates button disabled with GPS even if Network Location enabled.
- All interface-visible text moved from code into XML string resources to make ready for translating. Please contact me if you would like to help translate.
v1.0.7.5 [2011-05-10]
- Fix crash during parsing with most system languages. English was the only unaffected language in all versions of Android.
- Fix Alerts and Sightings buttons not appearing correctly in Android 1.5.
v1.0.7.4 [2011-03-19]
- Fix inability to scroll in About dialog for 1.5 and 1.6.
- Fix inability to cancel download, a problem if there is connectivity but HA isn't responding.
- Fix lists or browser restarting when physical keyboard opened/closed.
- Fix several elements not changing for night mode. There are still some not changing, but it's greatly improved.
- Fix crash when received data is not from Heavens-Above, such as a network login page. [2.2+ crash report]
- Fix button backlight stuck on (mistake in code from previous update).
v1.0.7.3 [2011-02-02]
- Fix crash at launch in Android 2.1 caused by uncaught NoSuchFieldError when trying to set button brightness. [reported by 2 users in Market]
v1.0.7.2 [2011-02-01]
- Pro: Fix existing alerts not being updated if auto-alerts disabled.
- Fix crash from bad parsing of single-digit day in start date range of 10-day ISS.
v1.0.7.1 [2011-01-29]
- Disabled links in About dialog text, tends to be more trouble than it's worth (turned 1.0.7.1 into link).
- Fix crash when opening notification.
v1.0.7 [2011-01-29]
- Alerts & sightings data moved from app cache to files, so clearing cache from Android app manager won't delete it.
- Remove preference to delete data. Avoids accidental deletion, menu on Alerts/Sightings screens should be safer.
- Remove preference to clear coordinates. Not necessary since it's just as easy to manually clear coordinates.
- Free: Existing alerts are automatically updated when new data is loaded. (Pro already had this with auto-alerts)
- Pro: Option in preferences to export sightings to sdcard as CSV files, uses WRITE_EXTERNAL_STORAGE permission.
- Messages for updated alerts will only appear if the time has changed and shows the old and new times.
- Threshold for duplicate alert/sighting check increased from 10 seconds to 10 minutes.
- Pro: If event is in alerts, Add Sighting becomes Move to Sightings in context menu.
- Pro: Add Sighting is disabled until 2 minutes before event start.
- Add Alert is disabled for events that have already started, also applies for auto-alerts in Pro.
- Buttons on main screen repositioned.
- Add ACCESS_NETWORK_STATE permission for connectivity detection, also required by Greystripe in Free version.
- Connectivity is now checked before attempting to access.
- Add 10-day ISS list. (optional) [Suggested by Seth]
- Countdown to start, max, and end instead of just start.
- Countdown is initiated by tapping an event instead of from the context menu.
- Include daytime flares in list. (optional)
- Add progress dialog in list showing what is loading and percentage of each process. [Suggested by SuM_WuN]
- Better performance with the use of multiple threads and other optimizations.
- Add quiet time: No alert notifications between certain times of day. [Suggested by Rick]
- Fix location search stopping when invalid coordinates received.
- Add network location (works seamlessly with GPS) and message indicating what provided the coordinates.
- After opening notification, pressing back button from Alerts opens main screen.
- Fix missing indication of disabled GPS on GPS button. [Reported by ka0ticstyle]
- Volume buttons control notification volume, or media volume if TTS is enabled.
- Fix browser closing when orientation changes.
- Add date on satellite passes lists. [Suggested by Rick]
- Button backlight turns off in Night Mode if supported by API and hardware.
- Fix exiting with back button causing home screen folder in background to close.
- Fix empty countdown view and list header color missing when returning to list from web browser.
- Main and preferences screens are not restarted when changing timezone or alert time.
- Free: Option to toggle between banner ads or full screen ad at launch.
- Free: READ_PHONE_STATE permission required by Greystripe.
- Free: Greystripe ads.
- Free: Update SDKs for AdWhirl and AdMob.
- Pro: Remove option for ads.
- Instead of buttons for each list on Heavens-Above site, one button for the homepage.
- Remove changelog.
v1.0.6 [2010-10-14]
- Initial release of Pro.
- Fix countdown timer way off after orientation change.
- Pro: Sightings log.
- Pro: Alerts automatically created based on custom magnitude when list is loaded with new data.
- Fix back button not working as expected in web view.
- Night mode uses color filtering instead of replacing graphics with plain colors.
- Ad manager is AdWhirl, which provides much more flexibility with multiple ad networks.
- Pro: Text-To-Speech alerts.
- Pro: Multiple alert times can be set, space separated.
- Pro: Ads are disabled by default and can be toggled.
- Fix detection of existing alerts with certain differences in data, alert is updated when required.
- Fix value shown in title of 'Alert time' preference stacking when changed.
v1.0.5 [2010-09-24]
- Alert time preference shows the current setting in its title.
- Alert lists are sorted by event time instead of order they were added.
- Add description on Timezone preference clarifying that it is the standard GMT offset.
- Add menu option on main screen to toggle night mode.
- Add menu options in Alerts view to clear either list.
- Detect incompatible alerts at launch and delete along with cache, preventing crash after version upgrade.
- Fix detection of existing alerts created in different list instances.
- Alerts can be removed through event lists.
- Events can be added to alerts even if alerts are currently disabled.
- If invalid GPS coordinates received, show error instead of crashing.
- Toast notification at alert trigger.
- Notification timer is much more efficient, using a native method instead of a very bloated and often buggy countdown.
- Try setting timezone automatically at launch if not set.
- Fix error when parser encounters trimmed/optimized HTML. (Thanks to SkepticBarista!)
- Fix expired alerts being triggered on service modification/start if alert time is set to 0.
v1.0.4 [2010-09-02]
- Fix event timer timezone not being calculated properly for timezones different from phone.
- Significantly reduced possibility of alerts being skipped because of lag.
- If parser runs into problem, show error and try loading cache instead of crashing.
v1.0.3 [2010-08-31]
- Save coordinates when opening preferences.
- Fix alert time not applying to existing alerts when changed.
- Fix crash when both pass periods are selected and one of them returns no passes.
- Fix crash when alert is triggered and ringtone was not configured.
- Fix DST sometimes being 'forgotten' while running in background as service.
v1.0.1 and v1.0.2 [2010-08-28]
- Fix two crashes in the web browser.
v1.0.0 [2010-08-28]
- Initial release to the Android Market!
Started development on 2010-06-29