View
 

Changelog

Page history last edited by Mariano "Nanomo" Montañez 3 months, 1 week ago

PhoneGap Change Log


1.2.0

 

The following changes have been made since 1.1.0

 

Android

  • Anis Kadri (5):
    • cleaner way for handling splashscreens
    • whitelist support
    • adding isUrlWhiteListed in shouldOverrideUrlLoading
    • forgot to resolve conflict
    • improved whitelisting

 

  • Bryce Curtis (17):
    • Formalize logging with printf-type optimization.  Wrap Android log facilities instead of using System.out.println().
    • Correct log level comparison.
    • Add comments and rename loadWhiteList() to loadConfiguration().
    • Use endActivity() for consistency.  Improve error handling.
    • Don't override history.back since jQuery also does it.
    • Fix Issue #258 - navigator.app.exitApp() and navigator.app.backHistory() not working in PhoneGap 1.1.0 on Android
    • Load multi-page apps in same webview and update pause/resume for consistency.
    • Set activity state correctly when ending activity.
    • Run error dialog on UI thread.
    • Set activity state correctly when ending activity.
    • Use LOG instead of System.out.println for logging.
    • Don't fire resume at app startup.
    • Update version to 1.2.0.
    • This is an informative message, not an error message.  It is normal to get this when leaving a page.
    • Update to download and run callback-test repository.
    • Update for 1.2.0.
    • Updated readme.

 

  • Fil Maj (1):
    • JSPrompt "Security check" should whitelist all file URIs too

 

  • Joe Bowser (7):
    • Fixing the jsConfirm so it doesn't break the back button
    • Adding handling of Search Button for the jsPrompt
    • Upgrading to Ice Cream Sandwich
    • HTC Fix
    • Making Alert cancellable so that it does not break the back button
    • Removing the Camera permission, since it is not required by PhoneGap by default
    • Fix for Console.log, didn't call the super of the method needed

 

  • macdonst (6):
    • Fix for Issue #257: File Transfer with file:/// URIs
    • Return MediaError object instead of value
    • Normalize MediaError's with iOS
    • Updating to use Android 4.0 build environment
    • Fixing Project Properties file
    • Fixing compilation error in DroidGap

 

  • nisc (1):
    • Fixes to make example project build and compile

 

iOS

  • Becky Gibson (2):
    • Update for iOS5
    • Fixes #313 - return MediaError in error callback

 

  • Brian Samson (1):
    • add documentation for correctOrientation and saveToAlbum options of camera.getPicture

 

  • Dave Johnson (1):
    • This is messing people up who want to create the installer themselves.

 

  • David H (1):
    • Make connection plugin work with iOS <4.0.

 

  • Todd Stellanova (1):
    • Add OpenAllWhitelistURLsInWebView policy setting to determine whether ALL whitelisted URLs are opened within the embedded web view (as is sometimes desired).

 

  • shazron (12):
    • Fixed #303 Add OS check in makefile, Lion minimum (for packaging installer only)
    • Fixed #302 Compiler warnings in PGMotion
    • Fixed #296 iFrames open in Mobile Safari
    • Fixed callback/callback-ios#3 - UniversalFramework target of PhoneGapLib does not compile under Xcode 4.2
    • Fixed callback/callback-ios#2 - Convert SBJson library use to JSONKit use
    • Fixed problem where deploying to device using PhoneGap.framework, the armv7 slice is missing from the fat binary.
    • Connection plugin (Reachability) - stop/start notifier on pause/resume of app.
    • Fixed callback/callback-ios#5 - Optimization: If white-list contains "*" (wildcard), do not do URL processing
    • Updated release notes for 1.2.0
    • Updated VERSION to 1.2.0
    • Updated hints in sample index.html
    • Added OpenAllWhitelistURLsInWebView to 1.2.0 release notes.

 

BlackBerry

  • Drew Walters (4):
    • Spawn a thread when calling executeScript.
    • Modify lifecycle to match Android/iOS.
    • Specify viewport width and height in sample.
    • Update to version 1.2.0

 

WP7

  • Jesse MacFadyen (17):
    • Local storage implementation
    • updated and passed all but 2 tests ( dot notation not supported for getting/setting non-existent keys )
    • Added more interesting Accel example.
    • Initial ChildBrowser work
    • Back|Forward|Close
    • More test cases
    • Plugins can be defined in the Lib namespace
    • Cleanup before pull request
    • cleanup or meta-tags + RootVisual Grid name for plugin use
    • Added build-time script to generate GapSourceDictionary
    • Removed t4 templating
    • Cleanup for project template
    • More Cleanup, removed ChildBrowser as it is a plugin and not part of the core
    • Added orientation events
    • The implementation file
    • changed refs to 1.1 to 1.2
    • more changes for 1.2

 

  • sgrebnov (5):
    • support of pause/resume events
    • added onresume and onpause methods to BaseCommand
    • removed dublicate device object instance initialization
    • updated phonegap js file in unit tests
    • added support of custom plugins

 

0.9.6

 

The following changes have been made since 0.9.5.1

 

phonegap-android

 

  • Fix bug where isreachable doesn't return correct results for https     (http secure) url protocol.
  • Clean up CallbackServer when about:blank page has loaded.  This fixes errors when shutting down.
  • Need to unregister for network intent receiver on shutdown to prevent leaks.
  • Set PhoneGap.UsePolling flag based upon result from CallbackServer.
  • Fix security vulnerability - make sure any requests to run native code only come from url currently loaded into webview.
  • Issue 112: PhoneGap.Channel: replace instanceof Function with typeof === 'Function'
  • Urls with same path and file but different # or ? should compare to same url.
  • Return true when handling key events, indicating that no further processing is necessary.
  • Always call plugin's onPause/onResume with multitasking flag when these lifecycle events occur in activity.  It is up to the plugin to handle as necessary.
  • Set PhoneGap.UsePolling flag based upon result from CallbackServer.
  • Fix security vulnerability - make sure any requests to run native code only come from url currently loaded into webview.
  • Issue 112: PhoneGap.Channel: replace instanceof Function with typeof === 'Function'
  • Urls with same path and file but different # or ? should compare to same url.
  • Return true when handling key events, indicating that no further processing is necessary.
  • Always call plugin's onPause/onResume with multitasking flag when these lifecycle events occur in activity.  It is up to the plugin to handle as necessary.
  • Revert to polling if there are any errors with callback server.  This addresses various problems with proxies set by carriers.
  • Handle errors when adding a service.
  • Fix for ticket #58: Certain 1.5/1.6 devices would throw a FileNotFoundException when taking pictures. Patch submitted by Agustin of AVANTIC (thanks!).
  • Changing the layout class so it has the screen dimensions to take into account Device Orientation
  • Adding SSL dev code
  • Fixing conflict
  • Adding SSL dev code
  • Changing default target to the highest for maximum compatibility
  • VERSION:
  • Sending pause/resume notifcations to plugins regardless of 'keepRunning' state.     Not sure why you wouldn't want to send them
  • Fixed droidgap update command
  • Changing Media class to return seconds
  • Issue #94: feature request: Event for Keyboard show/hide
  • Issue #80: Unable to open large json files on android 2.2 + phonegap 0.9.5
  • Improve performance of our encoding
  • Updating Connection object to conform with recently released spec
  • Issue #104: Bug in FileUtils.copyDirectory & moveDirectory
  • Issue #106: Typo in LocalFileSystem.prototype._castDate
  • Updating Network Connection API to match spec released on June 7th
  • Issue #121: Problem with resolveLocalFileSystemURI if file name has spaces
  • Issue #80: Unable to open large json files on android 2.2 + phonegap 0.9.5
  • Improve performance of our encoding
  • Updating Connection object to conform with recently released spec
  • Issue #104: Bug in FileUtils.copyDirectory & moveDirectory
  • Issue #106: Typo in LocalFileSystem.prototype._castDate
  • Updating Network Connection API to match spec released on June 7th
  • Issue #121: Problem with resolveLocalFileSystemURI if file name has spaces
  • Issue 123: Fixing problem where name object is not specifieddd

 

phonegap-iOS

 

  • Fixes issue 98 - updated to support mimetype for m4a files
  • implementation of MediaCapture
  • Issue 128:  bug in DirectoryEntry.copyTo and moveTo
  • Properly Initialize Capture<Type>Options
  • fixes #131
  • Updated getMimeTypeFromPath: to recognize .wav as audio/wav
  • fixes #129
  • fixes #138
  • refs #118
  • refs #138 - remove ref to tmpFolderName
  • Re-adding PhoneGapCommand back in, adding deprecated attributes, and NSLog deprecation warning. PhoneGapCommand base class will be removed in 1.0
  • Turned off Reachability flag NSLog
  • Added PGDebug.h - when you use the DLog macro, it will only print out the log when under the Debug configuration, for projects that use the PhoneGapLib subproject. This does not affect PhoneGap.framework based projects.
  • Updated Installer docs for CoreMedia framework (for Media Capture API)
  • Copy Capture.bundle into PhoneGap.framework
  • Connection.h was missing from PhoneGap.framework (was not set as a Public header)
  • Cleaning up Location.* core plugin
  • Clarified a FAQ item
  • Closes issue #68 - implementation of the W3C Network API.
  • Updated Xcode 3 Template to include a weak reference to CoreTelephony framework (for W3C Network API)
  • Updated Xcode 4 Template to include a reference to CoreTelephony framework (for W3C Network API).     Note this reference is not weak, you must change it to optional to target iOS 3.x if not devices using that OS will crash.
  • Updated installer notes for latest changes.
  • Moved navigator.connection (W3C Network Information API) interface under navigator.network.connection.     - This is for consistency reasons with Android because of a WebView bug in 2.2 and 2.3     - Fixed bug in connection.currentNW at startup - it was showing currentNW carrier name if it is a non-cellular connection.
  • Fixes #107 - gapBridge iFrame vertically offsets visual content
  • Fixes #106 - orientationchange was dispatched from document object, not window object
  • Fixes #105 - default web pathname sets double forward slash
  • Added PGMotion, with stubs. Related to issues #63 and #64
  • Fixes #110 - third-party code (ie plugins) that use Objective-C++ cause compiler errors in PluginResult.h
  • Fixes #109 - FileUploadOptions causes an error in iOS when .params contains a key/value pair in which the value is an int
  • Fixes #112 - anchor tag attribute target with value '_blank' was not opening up the URL in Mobile Safari
  • Fixes #111 - locking device should not trigger pause life cycle event
  • Added serviceName to className mapping in Commands.plist. RIght now serviceName==className, but this will change to match the other platforms.
  • Moved plugin mapping from Commands.plist to a key 'Plugins' under PhoneGap.plist
  • Removed Commands.plist
  • Migrate PhoneGapCommand to PGPlugin.
  • Capture: Changed occurrences of PhoneGapCommand to PGPlugin
  • Added Capture plugin to PhoneGap.plist
  • Added Capture plugin resources back into the PhoneGap template - was clobbered during a merge.
  • Set CoreMedia.framework linking to Weak in Xcode 3 Template
  • Moved Capture plugin resources into a bundle, updated Capture plugin to use the new bundle.
  • Updated Xcode 4 Template for Media Capture API - added CoreMedia framework, and Capture.bundle
  • Xcode 4 Template - removed README, [PROJECTNAME]-Info.plist, and AppDelegate.h from "Copy Bundle Resources" Build Phase.
  • Fixes #126
  • Fixed Network Information API up to June 7 2011 Draft status. As a result, CoreTelephony framework has been removed.
  • Updated installer docs with rich text formatting.
  • Fixes #64 - Added W3C DeviceMotionEvent support (Accelerometer only, not Gyroscope) for devices with firmware < iOS 4.2, through duck punching
  • Fixed bug in DeviceMotionEvent interval property, the first initial event interval should be zero
  • Fixes #116 - 'iframe' in lowercase for gapBridge, for index.xhtml start pages.
  • Changed doctype of sample index.html to HTML5
  • Fixes #102 - Xcode 4 Template - companyname in bundle id not honoured
  • Fixed DeviceMotionEvent support for iOS 3.x devices.
  • PhoneGapLibTest - added CoreMedia.framework as a weak reference
  • In iOS 3.x, window.dispatchEvent does not exist, so we fallback to document.dispatchEvent
  • Workaround to handled 'orientationchange' events in iOS 3.x
  • Added PhoneGap.plist to PhoneGapLibTest project
  • Deprecated the Camera.getPicture API. This will be removed in 1.0 (into the Plugins repo). Use the Media Capture API instead.
  • Fixes #133 - UIAccessibilityTraitStartsMediaSession: symbol not found in iOS 3
  • Media Capture API visual changes for iPad iOS 3.2 and 3.2.2 - converted mic images from jpg to png (more memory efficient), and explicitly pathed the images if the proper iPad iOS version (as stated previously) was detected at runtime
  • Removed debug NSLog
  • Media Capture API - bug in previous fix for iOS 3.x iPhone. Fixed resolveImageResource function.
  • Fixed splash screen images for iOS 3.x devices.
  • Deleting the iPad splash image (had to do this way to rename a case-sensitive part). Re-adding after
  • Re-add Default~ipad.png (case sensitive rename)
  • Lowered iOS Deployment target for PhoneGap.framework to 3.0
  • Updated docs for Installer. UIKit and AVFoundation need to be set to weak/optional if users want to target iOS 3.x devices.
  • Moved some older FAQ items to the Wiki, added new FAQ items.
  • Renamed iPhone to iOS in README
  • Fixes #132 - app Temp folder was deleted on app termination, when the contents should be deleted, not the folder itself. This affected YouTube/video playback on non-multitasking apps (on subsequent launches)
  • Fixes #137 (using writeJavascript abstraction as well)
  • Deprecated Network.isReachable
  • Fixes #135 Problems specifying viewport dimensions via meta-data. Set EnableViewportScale to true if you want to scale via the meta tag.
  • Updated Installer docs in preparation for 0.9.6 release.
  • Added notes in Installer about Deprecated functions.
  • Updated the FAQ with more items.
  • Deprecated Notification: activityStart, activityStop, loadingStart, loadingStop.
  • Updated installer docs for Notification core plugin deprecations.
  • Updated VERSION to 0.9.6

 

phonegap-blackberry-webworks

 

  • Add Network Connection API to match spec released on June 7th
  • Delay onDeviceReady until connection info is available.
  • #23 - Move phonegap.js to www/ to match other platforms.
  • Update Nitobi copyright.
  • Version 0.9.6

 

phonegap-webos

 

  • added SQLite example in demo app
  • update readme to use phonegap-webos instead of phonegap-palm
  • modified so that instantiating phonegap is no longer required
  • removed unnecessary navigator.device.deviceReady call
  • remove unneccessary Mojo object check
  • updated device apis to set name and platform on device ready
  • fire deviceready after DOMContentLoaded
  • README updates
  • Changed DOCTYPE to HTML5
  • Added webOS 3.0 compatibility property.
  • Changed Palm to HP :)

 


 

0.9.5.1

 

The following changes have been made since 0.9.5

 

phonegap-android 

 

  • Need to use EclairClient for 3.x devices too.  This fixes the HTML5 geolocation problem on Android 3.x.
  • Add docs and fixed to pass through the Google Closure Compiler without warnings
  • Added Media.seekTo(int milliseconds);
  • #72: Contact.Save: onSuccess callback is called when contact is not saved.
  • Capture modifications
  • Implement W3C Network Information API
  • Android 2.2+ supports W3C Connection API
  • #79: FileWriter.seek() is broken in 0.9.5.
  • Setting defaults in Media Capture
  • Removing generated code from project
  • #85: window.openDatabase throws DOM Exception 18 on Android 3.1
  • Fixing a number of issues in File API
  • Moving navigator.connection to navigator.device.connection
  • #85: window.openDatabase throws DOM Exception 18 on Android 3.1
  • JavaScript cleanup to pass jsHint

 

phonegap-iOS 

 

  • Fixed #86 - problems with FileEntry.createWriter
  • Fixed incorrect boundary end.  Added check for file existence.
  • Fix some file issues
  • Fix meta viewport to use correct format and values.
  • Changed writing of PhoneGapLib preferences file to user's local prefs
  • Removed Xcode 4 template spec file in Xcode 3 template folder
  • Added clean targets for the xcode 4 template and framework.
  • Added symlink to PhoneGap.framework under ~/Library/Frameworks, updated installer text to reflect
  • Added install target, and removal of PhoneGap framework in uninstall target
  • Changed Frameworks location to be consistent, under Library
  • Framework target in Makefile modifies the sample index.html file to point to the right phonegap.js version.
  • Added shell script to PhoneGap Xcode 4 template to copy the sample "www" folder into the current project if it does not already exist (with instructions)
  • Added CodeSigning specification to Xcode 4 template
  • Removed product name prefix to AppDelegate .h and .m
  • Updated the version number in the installer Introduction header
  • Added error checking and reporting on whether the start page exists for loading (would crash otherwise). The error is reported in the Run Console as well as the webview.
  • Added some body text (pointing to PhoneGap start) in default index.html, and a notification alert to signify PhoneGap is working.
  • Renamed references to PhoneGapLibInstaller to PhoneGapInstaller
  • Updated README.md with Xcode 4 issues.
  • Fixed PhoneGap Xcode 4 Template copying the www folder to a project with spaces in its path.
  • Updated README for more Xcode 4 edits
  • Fixed issue #81
  • Installer: /Users/Shared/PhoneGap made writable to everyone
  • Framework folder moved from /Users/Shared/Library to /Users/Shared/PhoneGap
  • Fixed old framework path in Xcode 4 template
  • Used proper Developer directory as selected by xcode-select
  • Updated Reachability to version 2.2 (from 1.5), with NetworkStatus changes for PhoneGap backwards compatibility. Updated navigator.network.isReachable to remove the isIpAddress option. Updated Network plugin to use new Reachability 2.2
  • Removed undocumented and unused functionality from navigator.network
  • Static analyzer fixes.
  • changing behaviour of external links
  • Created PhoneGap Static framework (source files right now link off PhoneGapLib). Just drag and drop in to your Frameworks folder and in your Target/Link With Libraries. You must manually include "phonegap.X.X.X.js" in your www folder.
  • Copy VERSION file into framework
  • Added new targets to PhoneGapLib project (Universal_Framework, PhoneGap - to create a static framework version). 
  • Renamed libPhoneGapLib.a to libPhoneGap.a
  • Baked-in PhoneGap version into the source for framework target (dynamically generated still from the VERSION file)
  • Removed PhoneGap static framework (now added as the Universal_Framework target in the PhoneGapLib project)
  • Strip off debugging symbols for Framework target (fixes warnings for "GenerateDSYMFile warning: unable to open object file")
  • Fixed issue #75
  • Fixed default splash screen so it does not load "Default.png" explicitly, but takes into account retina display and iPad versions using [UIImage imageNamed]
  • Modified PhoneGap (Xcode 3) template files in preparation for common use with Xcode 3 template.
  • Added pre-processor macro for different type of import statements, whether PhoneGap is a static lib or linked as a static framework
  • Generation of the Xcode 4 template in the Makefile (read the README in the .xctemplate folder for limitations)
  • Modified MakeFile and PhoneGap Installer to generate and install the Framework and Xcode 4 templates.
  • Updated Makefiles and PhoneGapLib framework target build script.
  • PhoneGapLib Makefile - added 'clean' target.     
  • PhoneGapLib Framework build script - phonegap.*.js copied into www subfolder instead of the root of the framework. Main Makefile - updated to reflect the build script change above.
  • Makefile - added git commit hash to VERSION file in PhoneGap.framework
  • Fixed issue #54
  • Cleaned up Makefile.
  • Release of retained UIWebview in a PhoneGapCommand on dealloc. (ref: improvement on pull #91)
  • Fixed missing "JSON.h" file in PhoneGapLibTest
  • Merge from purplecabbage/master (see squashed commits below) - Handling custom URL protocols, iPad Popover Control for Camera Picker, Compass API consistency fixes, Timestamps in Compass/Geo are msecs
  • Updated mobile-spec submodule ref
  • Updated test script.
  • Removed duplicate didFinishLaunchingWithOptions in template AppDelegate.m (due to code merge)
  • Re-arranged order of PhoneGap js file concat
  • Fixes #50 W3C Geolocation conformance
  • Added W3C Network Information API stub in Javascript (attached to navigator.connection)
  • Modified Xcode3 template not to copy the phonegap.*.js files in every single time from PhoneGapLib. Removed script that automatically updated the script tag to the new phonegap.*.js Added warning if phonegap.{VER}.js or phonegap.{VER}.min.js is not referenced in your HTML file(s).
  • Removed echo during copy.
  • Improved build script in Xcode4 template, checks whether the 'www' folder was added as a folder reference and adds a warning if applicable.
  • Updated installer intro text for new templates.
  • Return only the first line of the VERSION file.
  • Removed exception throw if a PhoneGapCommand is missing, just prints error to console.log
  • DOM event 'orientationchange' fired when the orientation changes.
  • Incremented VERSION to 0.9.5.1
  • Removed iOS 2.x conditionals.
  • Fixed issue #46 - orientationchange event is now fired on webView didFinishLoad

 

phonegap-blackberry-webworks

  

  • Update version to 0.9.5
  • Increment VERSION to 0.9.5.1
  • Update hard-coded versions to 0.9.5.1
  • #21 - Fix deviceready event firing on new BlackBerry 6 devices.

 


 

0.9.5

 

The following changes have been made since 0.9.4

 

phonegap-android

  • Workaround implemented for Android Bug #12987: JavaScript Bridge throws exception on Android 2.3
  • Implementation of the Directories and Systems File API
    Remove/Modify FileMgr JavaScript APIs not specified in an File API spec 
    • remove navigator.fileMgr.createDirectory(dirName) function. To create a directory, use the DirectoryEntry.getDirectory() method.
    • remove navigator.fileMgr.getRootPaths() function.  use window.requestFileSystem().
    • remove navigator.fileMgr.deleteFile(fileName).  To delete a file using the FileEntry.remove() method.
    • remove navigator.fileMgr.deleteDirectory(dirName).  To delete a directory use the DirectoryEntry.remove or  DirectoryEntry.removeRecursively().
    • remove navigator.fileMgr.getFileBasePaths().  Use window.requestFileSystem(). 
  • Implementation of Media Capture API
  • Backward compatibility for old style plugins added.  PluginManager.addService() or navigator.app.addService() will work equally well.
  • Added support for setting the body of a SMS message.  
  • Tickets resolved: 
    • #66 Error managing contacts in Android 1.6 and 2.2
    • #79 CupcakeLocalStorage have no clear() method no tags
    • #82 Contact search unicode problem android contacts 
    • #85 Android Droid Camera "retake" button does not save image to gallery 
    • #86 droidgap does not work if phonegap-android is in a directory called 'libs' droidgap  
    • #90 Move _createEvent from File to PhoneGap no tags 
    • #99 Phonegap apps rejected by Amazon Marketplace
    • #57 Taking Photos won't resume correctly
    • #107 resume event is only fired if app is not running in the background
    • #110 When you close an app on Android you see a JS error in logcat callbackserver javascript
    • #113 FileTransfer returns FILE_NOT_FOUND_ERR on http 500 error  
    • #118 Hidden NPE in native Storage
    • #121 Cool side effect of fix for #115 - now web database does not work! 
    • #124 File Transfer multipart badly formed trips mod_security
    • #127 Android FileReader/FileWriter methods should return FileError object on error.
    • #128 window.openDatabase() in Android 2.3.1 is not working
    • #136 window.openDatabase() in Android 3.0 throws SECURITY_ERR 

 

phonegap-blackberry-webworks

 

phonegap-iOS

 

  •      fixed ticket #128 (http://phonegap.lighthouseapp.com/projects/20116-iphone/tickets/128-cancel-button-in-camera-picker-does-not-fire-callbacks#ticket-128-4) As temporary solution until W3C Media Capture is implemented, return "3" in error callback when user cancels taking or selecting a picture.
  • Updated PhoneGap.exec() to use the same signature as Android and BB-webworks as well as original iOS signature.  No changes from the JS users perspective.   FYI - The new signature does not pass any callbacks into the objective C code and has fixed PhoneGap.callbackSuccess and PhoneGap.callbackError functions that call the user defined callbacks.  Created new PluginResult.* classes that mimic the Android ones. This allows creating uniform callback object.
  • Implementation of Directories and Systems File API
    Remove/Modify FileMgr JavaScript APIs not specified in an File API spec 
    • remove navigator.fileMgr.createDirectory(dirName) function. To create a directory, use the DirectoryEntry.getDirectory() method.
    • remove navigator.fileMgr.getRootPaths() function.  use window.requestFileSystem().
    • remove navigator.fileMgr.deleteFile(fileName).  To delete a file using the FileEntry.remove() method.
    • remove navigator.fileMgr.deleteDirectory(dirName).  To delete a directory use the DirectoryEntry.remove or  DirectoryEntry.removeRecursively().
    • remove navigator.fileMgr.getFileBasePaths().  Use window.requestFileSystem().
    • Changed implementation of navigator.fileMgr.testFileExists() and testDirectoryExists to require a full path name (obtainable via window.requestFileSystem and File/DirectoryEntry apis. 
  • Implemented FileReader.readAsDataURL
  • Updated *.js files so that objects will not be created more than once if phonegap*.js is included more than once.  Copied the implementation done for Android to keep the js files between the two projects as similar as possible.
  • FileTransfer added into core (thanks to Matt Kane)  

 


 

0.9.4

The following changes have been made since 0.9.3

 

phonegap-android

 

phonegap-blackberry

 

phonegap-blackberry-webworks (renamed from phonegap-blackberry-widgets)

 

  • Rename repository from phonegap-blackberry-widgets to phonegap-blackberry-webworks to align with RIM branding.
  • Improve build scripts:
    • Include version in generated PhoneGap resources, e.g. phonegap.0.9.4.js and phonegap.0.9.4.jar
    • Create two versions of PhoneGap JavaScript: phonegap.VERSION.js (full), and phonegap.VERSION.min.js (minified) 
    • Minification of phonegap.VERSION.js happens at project creation (ant create -Dproject.path), rather than at project build (ant build). 
    • Rename all JavaScript project directories to 'javascript', for consistency. 
    • Add build tasks to create and update directory structure for PhoneGap plugins (ant create-plugin and ant update-plugin) . 
  • Add Plugin support:
    • Enable registering PhoneGap plugins from JavaScript (phonegap.PluginManager.addPlugin).
    • Enhance build scripts to create sample plugin, including directory structure and full sample code (see above). 
    • Add file utility methods in native (Java) code for use by plugin developers.
  • Override console.log in BlackBerry OS 6.0.  Messages are logged to system out and the BlackBerry Event Log.
  • Update Contacts:
    • Match latest W3C Contacts API specification.
    • Add support for Contact photo.  Set photo using Base64 encoded image or file or HTTP URL.  Retrieve photos as Base64 encoded image.
  • Fix navigator.notification.beep so that it is audible on device.  Routed through hands-free speaker.
  • Register a notification profile for each PhoneGap application.  Notification profile settings are controlled by device user.
  • Generate unique application name and GUID for each PhoneGap application.
  • Camera:
    • Update code to perform all image processing off of application event thread.
    • Delay invoking navigator.camera.getPicture success callback until captured image is fully written to file system.
  • Add FileTransfer capability:
    • FileTransfer uploads files to remote server using multi-part HTTP POST request.
    • Currently limited to a single file per request.
    • Both HTTP and HTTPS protocols supported.
  • Fix issue where Contact object Dates (birthday) were not being cloned.
  • FileReader: add media type to readAsDataURL return value.
  • Add support for application lifecycle events: onpause, onresume
  • Stop all Accelerometer and Geolocation sensors on application exit. 

 

 

phonegap-iphone

 

 


  

0.9.3

 

The following changes have been made since PhoneGap 0.9.2.

 

phonegap-android

 

phonegap-docs

 

phonegap-blackberry

 

phonegap-blackberry-widgets

 

  • Add minification of phonegap.js using YUICompressor tool. Reduce size of phonegap.js from 88 KB to 36 KB.
  • Remove unused Camera JavaScript callbacks.  Camera callbacks are invoked using PhoneGap plugin mechanism.
    • Camera.prototype.success
    • Camera.prototype.error
  • Add file and directory convenience methods.  These are not part of any W3C spec, and are provided for convenience only.
    • FileMgr.prototype.getRootPaths()
    • FileMgr.prototype.getFreeDiskSpace()
    • FileMgr.prototype.deleteFile(filename)
    • FileMgr.prototype.createDirectory(dirname)
    • FileMgr.prototype.deleteDirectory(dirname)
  • Add FileWriter.  A FileWriter object can be used to write to a single file.  Based on W3C File API: Writer specification.
    • Note: W3C BlobBuilder object not implemented .  Pass data to FileWriter.prototype.write method instead.
  • Fix JavaScript casting problems by returning correctly formatted int, float, and boolean types from native Java plugins.
  • Add FileReader.  A FileReader object can be used to read textual data in various encoded formats.  Based on W3C File API specification.
    • Note: W3C Blob object not implemented.  Pass filename to FileReader methods instead.
  • Ensure all native Java plugins return properly encoded JSON.
  • Update geolocation timeout behavior.
    • navigator.geolocation.getCurrentPosition will use a timeout of 3600 seconds (one hour) if no timeout is specified.  (Note: W3C Geolocation specification states that timeout should be infinity if none specified).
    • navigator.geolocation.watchPosition will use an update interval that is equivalent to half the specified timeout value.  If no timeout is specified, a default of 10 seconds will be used (updates every 5 seconds).
  • Suppress PhoneGap geolocation if HTML5 geolocation is implemented in the browser (navigator.geolocation is already defined).
    • Note: Developers can still choose to use the PhoneGap implementation (which adheres to the W3C Geolocation specification) by invoking Geolocation.usePhoneGap.
  • Fix geolocation bug where getCurrentPosition would fail repeatedly after an initial failure.
  • Fix bug where PhoneGap would overwrite navigator object.
  • Modify build script to enable code build and sign in single step.
  • Enable Contact.save method to delete attributes for an existing contact.
    • Note: Programmer must explicitly set attribute to be deleted to a non-null value.  

 

phonegap-iphone

 

  • complex objects can now be passed as parameters from PhoneGap into objective C methods.  This requires the use of the JSON.stringify() function.  If you are targeting older versions of iOS (pre 4.0) you must manually include json2.js in the index.html file.   Instructions are included via comments in index.html.  
  • Add FileWriter 

 

phonegap-mac

 

phonegap-palm

 

phonegap-symbian.wrt

 

phonegap-winmo