We have just released PhoneGap 2.1.0! Thanks to everyone who worked so hard to get this release out!
This release focuses on fixing existing bugs that arose after the last release.
PhoneGap iOS has been fully migrated to use Automatic Reference Counting (ARC). Checkout Shazron’s blog about changes in Cordova 2.1.0 for iOS and how to update plugins to work with ARC. PhoneGap also supports iOS 6 now.
View the 2.1.0 changes below in the change log:
iOS
[CB-45] Add support for full urls in white-list, extract hostname
[CB-274] iOS Cordova Template Project is not compilable with default Apple’s ARC compiler 3.0
[CB-593] Click and touch events do not fire after using scroll CSS
[CB-675] Allow multiple versions of PhoneGap to be installed in Xcode (added bin/update_cordova_subproject script)
[CB-828] iOS contact.save() stucks the UI from updating on heavy load & has memory leaks.
[CB-903] iOS 6 - add setting to set WebKitStoreWebDataForBackup for user defaults from Cordova.plist/config.xml
[CB-904] iOS 6 - turn off CDVLocalStorage core plugin when on iOS 6
[CB-994] CDVLocalStorage core plugin does not fully backup when app setting “Application does not run in background” is YES
[CB-1000] Namespace issue of JSONKit and other external libraries
[CB-1091] Removed installer and related dependencies. Moved original post-install script into makefile under “install” target (which is default target).
[CB-1091] Added check for if xcode is running, and throw error if it is.
[CB-1105] Add JSONKit doc issue for iOS Plugin Upgrade Guide
[CB-1106] Deprecate old plugin signature
[CB-1122] Diagnostic tool for Cordova iOS Xcode projects
[CB-1124] “create” script (and possibly others) provided in bin directory do not escape arguments
[CB-1136] symlink to bin/create script fails
[CB-1137] emulate and log script failure when launched from external working directory
[CB-1138] Default logging level for file access should not log file contents.
[CB-1149] hello-world sample web app is missing lib folder, in a newly created app
[CB-1164] Fix warnings and analyzer issues reported with the newer LLVM in Xcode 4.4
[CB-1166] Remove dependency on VERSION file
[CB-1173] Clean up default project template
[CB-1182] Fixing IOS6 screen orientation/rotation without breaking ios5.1 or xcode 4.4 build. iOS.
[CB-1186] Update README.md, FirstRun.md for new install method
[CB-1187] Move the Objective-C unit-tests out of CordovaLib.xcodeproj, into its own .xcodeproj
[CB-1188] Update Plugin Upgrade Guide for new iOS plugin signature (old one still supported, but deprecated)
[CB-1190] Crash when contacts are edited (mass edit)
[CB-1192] Update template to set GCC_THUMB_SUPPORT=NO in Build Settings
[CB-1204] CDVViewController-loaded view doesn’t respect applicationFrame
[CB-1209] CDVViewController.supportedOrientations not set in a timely fashion
[CB-1223] CORDOVALIB Xcode variable - allow this to be read in from xcodebuild cli
[CB-1237] CDVDebugWebView no longer works since the ARC changes.
[CB-1258] Add documentation for the new logic to toggle between different exec() techniques on
[CB-1296] Update .js with fix for broken bridge on 4.2
[CB-1315] Setting the view controller’s view size in viewWillAppear, use rootViewController
[CB-1385] Fix executing legacy plugins when callbackId is null.
[CB-1380] Fix data URIlgith from being blocked
[CB-1384] Online .wav files cannot be played, but ones local to www can
[CB-1402] Media API - wrong JavaScript callback is called for onStatus (typo)
[GH-PR 34] Refactor chooseContact() to retrieve contact information instead of just a contactId.
[GH-PR 35] Enhances iOS FileTransfer’s support for upload headers
Change default wire format of exec handler (was iframe, now xhr) see [CB-593].
Update all core plugins to new exec format (new plugin signature, old one deprecated per deprecation policy)
Split out CordovaLibApp and CordovaTests into a separate Xcode project.
Add a benchmark into CordovaLibApp for measuring exec() speed.
Added Echo plugin (for benchmarking) into CordovaLib
Support JS->Native messages via an XHR & URL Protocol see [CB-593]
Refactor peoplePickerNavigationControllerDidCancel, always return dictionnary with id kABRecordInvalidID.
Deployment target for CordovaLib was not updated to 4.2 (we changed it in the template, but not the lib)
Fixed null dereference in FileTransfer upload when URL is invalid.
Android
Updating JS with feeling - See CB-1420
Tagging 2.1.0
CB-1409: Clicking the menu button crashes Jellybean
CB-1293: Camera.getPicture crashes when selecting from a Picasa album on Android
Forgot to put back echo
Reverting to the previously known to work config.xml, we’ll introduce the new format in 2.2
Merge conflict on the plugins
Adding support for data uri
Fixed the backbutton issues with the keyboard without causing issues with the menu button so far
CB-1304: Update PhoneGap References to Apache Cordova
CB-1335: Update www/ Application
CB-1303: Remove References to the Callback Project
Tagging 2.1.0rc2
Fixing failing ‘should return MediaError for bad filename’ Media test case
CB-1358: Getting Force Close in incoming Cal while recording the Audio?
[#1301] Remove releasenotes.md
[#1305] Remove guides/ directory
Fixing ‘FileTransfer.download() - should handle unknown host’ failing mobile-spec test case
Fix broken file upload in mobile-spec tests (CB-1290).
CB=1293: Camera.getPicture crashes when selecting from a Picasa album on Android
CB-1289: The menubutton event fires twice
Refactor to avoid adb warnings of VFY: on start-up.
Tagging 2.1.0rc1
arg forgot dest file
Merge branch ‘master’ of https://git-wip-us.apache.org/repos/asf/incubator-cordova-android
CB-1235 Fixing Android create script on Windows
Implement LOAD_URL exec bridge.
Fix JS timers being disabled on pause and never re-enabled.
Updating the .gitignore file
Greatly improve speed of fetching contacts.
Update cordova.android.js to pull in exec changes.
Added Native-JS bridge mode that uses private WebView APIs.
Implement the online events based Native->JS bridge.
Implements the LOAD_URL Native->JS bridge mode
Fix API lint warnings in CordovaChromeClient and CordovaWebViewClient.
Refactor Native->JS messaging logic into its own class.
Merge branch ‘master’ of https://git-wip-us.apache.org/repos/asf/incubator-cordova-android
CB-1267: Reuse Media object for recording
Make Eclipse recognize framework as a library project
CB-1264: Media.stop() puts media into an unplayable state
Fix for CB-1257
Provide an addJavascriptInterface() exec object.
Add an Echo plugin for benchmarking purposes.
Fix FileTransfer running out of memory over HTTPS (CB-312).
Fix API Level linter errors in CordovaWebView.java
Merge branch ‘master’ of https://git-wip-us.apache.org/repos/asf/incubator-cordova-android
Forgot to add the Apache headers on IceCreamCordovaWebViewClient.java
CB-930: DirectoryReader creates null error code for inaccessible directory
CB-1151: FileTransfer.download decodes the URL, resulting in a 404 error
Downgrade min sdk version of sample app
Modify min sdk version in AndroidManifest.xml
Add service methods to legacy ctx varialbe
CB-1196: No onSuccess callback after a complete play of the local mp3 file
Reapply: CB-1211: Media record uses a .mp3 extension when it is a .3gp file
reset of seekOnPrepared changed to properly reset only once playback has begun
CB-1217: Clicking back button does not dismiss navigator.notification.alert() dialog
Fix a NPE in GeoBroker when there is no previous location.
GeoBroker checks if location service avialable for device first.
CB-1212: When camera is started, and then cancelled with no photo, attempt to read exif data results in fatal error
CB-1211: Media record uses a .mp3 extension when it is a .3gp file
CB-1206: file uri not handled correctly by Media Player
Update to use latest Android SDK
Merge branch ‘master’ of https://git-wip-us.apache.org/repos/asf/incubator-cordova-android
CB-578 - Adding a test of pause and resume to make sure that they’re being called. Need to elaborate on this
Prefer setFixedLengthStreamingMode over setChunkedStreamingMode in FileTransfer.
I forgot that Jellybean has some wacky changes on the onKeyUp and onKeyDown events, fixing CB-1181
Moving the fix for # and ? to a new class to fix CB-995
This was a red herring. There was an XML error on the example when compared with master
Commenting out this past code, turns out this breaks more things than it fixes: CB-1101
CB-1101: Specifying Jellybean means that we have to override the default CORS policy
Adding functionality to read a config.xml file with plugin details implemented inside of it
Caught error with the back button again. backHistory actually goes back in history, used canGoBack() instead
fixing replace for mountain lion
Merge branch ‘master’ of https://git-wip-us.apache.org/repos/asf/incubator-cordova-android
CB-1148 fix for directories with spaces
Adds FileTransfer support for upload headers.
Tweaking the Android Manfest to cope with new target changes: CB-1147
Minor fix to deal with weird keyboard focus issues and the back button. CB-1146
Throwing code over the fence for CB-1128, We need a Samsung Galaxy S running 2.3.5 to confirm this fix
Utility Methods based on Feedback
Updating sample project
Fixing leaking sockets
BlackBerry
Updating to 2.1.0
[CB-1429] - updating www app
[CB-1414] - updating javascript
Forgot webworks reference
Updating version
Updating sample app
Synching javascript
No more references to phonegap in the readme
Remove reference to callback
Fixed up links in the readme
Updating readme
Fix for hello world app to work with 2.1.0rc1 out of the box
Updating hello world app
hack to support building alongside bb10
get rid of bundled webworks.js
get rid of error warning
Updates for the new Webworks SDK
Synching javascript
0rc1
Synching javascript files
Fixed blackberry.xml so it doesn’t package the qnx stuff
made sample project work on bb10 with a custom config.xml and including webworks.js
added cordova.qnx.js from my branch of cordova.js
added some notes for BB10 Development
added initial building support for bb10
Synching up javascript files
Spell BlackBerry with two capital B’s
Allow for spaces in directory paths
Fix file path issue
Using Mike’s hello world as the default sample app
trying to get mike’s sample app as new sample template
Synching up javascript files
Windows Phone
updated JS from new tag
removed built dll, source only in the repo now …
updated VERSION to 2.1.0
updated cordova.js for 2.1.0
Merge branch ‘master’ of https://git-wip-us.apache.org/repos/asf/incubator-cordova-wp7
removed verbose console output, added default address type ‘home’, [CB-1374] escape new line char in returned contacts.
added param to retain callback script, renamed MediaStates, fixed deserialization error
bump version to 2.1.0
timestamps were incorrect, leaving JS to create timestamps that are consistent with other platforms.
allow appending to files
update hello app html
update hello app, rejigger beep linkage
Startup Object not set when changes to namespace
removed warning, unused var
updated to latest hello app + latest cordova-js
Notification.confirm buttonLabels are not a real array, but a comma delim string.
MediaElement only supported one at a time, CB-941, CB-988
Merge branch ‘master’ of https://git-wip-us.apache.org/repos/asf/incubator-cordova-wp7
Merge pull request #19 from purplecabbage/Lib.vs.Proj
paths are resolved via BaseCommand which conditionally adds the DLL resource path if built into a library project
[#1313] Update PhoneGap references to Apache Cordova.
CORDOVA_CLASSLIB build time define to resolve resource linkage
updated readmes
Cleanup tests, added readmes
updated Device.cs for 2.1.0rc1
remove old custom lib version, not supported lately
mass rename for 2.1.0rc1
CB-1252
adjusted contact deserialization for updated exec calls
Merge pull request #18 from purplecabbage/CB-629
File tests passing
[CB-1174]
Merge pull request #17 from hermwong/5373b5ba334c7ad0aced8bc12637d0cb12ef480a
CB-805 getCurrentHeading returns success only once
[CB-1112] overridebackbutton
If you wish to follow or join in the development of this project, send an email to callback-dev-subscribe@incubator.apache.org to subscribe to the developer mailing list. All bugs can be found on our issue tracker.