You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@cordova.apache.org by mw...@apache.org on 2013/07/18 21:28:27 UTC

[03/12] Version 3.0.0rc1

http://git-wip-us.apache.org/repos/asf/cordova-docs/blob/17ffa3e5/docs/en/3.0.0rc1/guide/platforms/firefoxos/config.md
----------------------------------------------------------------------
diff --git a/docs/en/3.0.0rc1/guide/platforms/firefoxos/config.md b/docs/en/3.0.0rc1/guide/platforms/firefoxos/config.md
new file mode 100644
index 0000000..8d2e96c
--- /dev/null
+++ b/docs/en/3.0.0rc1/guide/platforms/firefoxos/config.md
@@ -0,0 +1,23 @@
+<!--
+#
+# Licensed to the Apache Software Foundation (ASF) under one
+# or more contributor license agreements.  See the NOTICE file
+# distributed with this work for additional information
+# regarding copyright ownership.  The ASF licenses this file
+# to you 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.
+#
+-->
+
+# FirefoxOS Configuration
+

http://git-wip-us.apache.org/repos/asf/cordova-docs/blob/17ffa3e5/docs/en/3.0.0rc1/guide/platforms/index.md
----------------------------------------------------------------------
diff --git a/docs/en/3.0.0rc1/guide/platforms/index.md b/docs/en/3.0.0rc1/guide/platforms/index.md
new file mode 100644
index 0000000..45ea7e1
--- /dev/null
+++ b/docs/en/3.0.0rc1/guide/platforms/index.md
@@ -0,0 +1,92 @@
+---
+license: Licensed to the Apache Software Foundation (ASF) under one
+         or more contributor license agreements.  See the NOTICE file
+         distributed with this work for additional information
+         regarding copyright ownership.  The ASF licenses this file
+         to you 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.
+---
+
+# Platform Guides
+
+Before developing for any of the platforms listed below, install
+cordova's command-line interface (CLI).
+(For details, see The Command-line Interface.)
+
+To develop Cordova applications, you must install SDKs for each mobile
+platform you are targeting. This installation is necessary regardless
+of whether you do the majority of your work in the SDK or use the CLI
+for your build cycle.
+
+Each _Platform Guide_ listed below tells you what you need to know to
+set up each platform's development environment: where to obtain the
+SDK, how to set up device emulators, how to connect devices for direct
+testing, and how to manage signing key requirements.  Additional
+guides provide information on each platform's unique set of
+configuration options, instructions to add plugins, how to upgrade
+each platform, and platform-specific command-line tools that serve as
+a lower-level alternative to the `cordova` command-line utility.
+
+## Android
+
+* Android Platform Guide
+* Android Configuration
+* Android WebViews
+* Android Plugins
+* Android Command-line Tools
+* Upgrading Android
+
+## BlackBerry
+
+* BlackBerry Platform Guide
+* BlackBerry Configuration
+* BlackBerry Command-line Tools
+* Upgrading BlackBerry
+
+## BlackBerry 10
+
+* BlackBerry 10 Platform Guide
+* BlackBerry 10 Plugins
+* BlackBerry 10 Command-line Tools
+
+## iOS
+
+* iOS Platform Guide
+* iOS Configuration
+* iOS WebViews
+* iOS Plugins
+* iOS Command-line Tools
+* Upgrading iOS
+
+## Windows Phone
+
+* Windows Phone 8 Platform Guide
+* Windows Phone 7 Platform Guide
+* Windows Phone Command-line Tools
+* Upgrading Windows Phone
+
+## Windows 8
+
+* Windows 8 Platform Guide
+* Windows 8 Command-line Tools
+* Upgrading Windows 8
+
+## Tizen
+
+* Tizen Platform Guide
+
+<!--
+## FirefoxOS
+
+* FirefoxOS Configuration
+-->

http://git-wip-us.apache.org/repos/asf/cordova-docs/blob/17ffa3e5/docs/en/3.0.0rc1/guide/platforms/ios/config.md
----------------------------------------------------------------------
diff --git a/docs/en/3.0.0rc1/guide/platforms/ios/config.md b/docs/en/3.0.0rc1/guide/platforms/ios/config.md
new file mode 100644
index 0000000..ba79cf8
--- /dev/null
+++ b/docs/en/3.0.0rc1/guide/platforms/ios/config.md
@@ -0,0 +1,57 @@
+---
+license: Licensed to the Apache Software Foundation (ASF) under one
+         or more contributor license agreements.  See the NOTICE file
+         distributed with this work for additional information
+         regarding copyright ownership.  The ASF licenses this file
+         to you 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.
+---
+
+# iOS Configuration
+
+The `config.xml` settings file controls various settings of Cordova. This is application wide, and not set per CDVViewController instance.
+The `config.xml` file is located in your `<project folder>/<appname>` directory.
+
+## &lt;preference&gt;
+
+Various preferences (as **&lt;preference&gt;** tags) default on not breaking existing apps. The available preferences are:
+
+1. **DisallowOverscroll (boolean, defaults to false)** - set to true if you don't want the WebView to rubber-band
+
+2. **TopActivityIndicator (string, defaults to 'gray')** - this is the top spinning throbber in the status/battery bar, valid values are `whiteLarge`, `white`, and `gray`
+
+3. **EnableLocation (boolean, defaults to false)** - set to true, to initialize the Geolocation plugin at start-up (so the fix on your location can be more accurate) **DEPRECATED**: please set the **onload** attribute of the **Geolocation** plugin to **true** instead.
+
+4. **EnableViewportScale (boolean, defaults to false)** - set to true to prevent viewport scaling through a meta tag
+
+5. **AutoHideSplashScreen (boolean, defaults to true)** - set to false to control when the splashscreen is hidden through a JavaScript API
+
+6. **FadeSplashScreen (boolean, defaults to true)** - set to false to prevent the splash-screen to fade in and out when showing or hiding it.
+
+7. **FadeSplashScreenDuration (float, defaults to 2)** - The splash-screen Fade duration in seconds.
+
+8. **ShowSplashScreenSpinner (boolean, defaults to true)** - set to false to hide the splash-screen spinner
+
+9. **MediaPlaybackRequiresUserAction (boolean, defaults to false)** - set to true to not allow autoplayed HTML5 video
+
+10. **AllowInlineMediaPlayback (boolean, defaults to false)** - set to true to allow inline HTML5 media playback, also, the video element in the HTML document must also include the webkit-playsinline attribute
+
+11. **BackupWebStorage (string, defaults to 'cloud')** - valid values are 'none', 'cloud' and 'local'. Set to 'cloud' to allow the web storage data to be backed up to iCloud, and set to 'local' to only allow local backups (iTunes sync). Set to 'none' to not allow any backups of web storage.
+
+12. **KeyboardDisplayRequiresUserAction (boolean, defaults to true)** - set to false to open the keyboard when form elements get focus via the JavaScript focus() call.
+
+13. **SuppressesIncrementalRendering (boolean, defaults to false)** - set to true to wait until all new view content has been received before it is rendered.
+
+14. **HideKeyboardFormAccessoryBar (boolean, defaults to false)** - set to true to hide the additional toolbar that is on top of the keyboard (this is the toolbar that has the Prev, Next and Done buttons)
+
+15. **KeyboardShrinksView (boolean, defaults to false)** -  set to true to shrink the WebView when the keyboard comes up. The WebView shrinks instead of the viewport shrinking and the page scrollable. This applies to apps that position their elements relative to the bottom of the WebView. This is the default behaviour on Android, and makes a lot of sense when building apps as opposed to webpages.

http://git-wip-us.apache.org/repos/asf/cordova-docs/blob/17ffa3e5/docs/en/3.0.0rc1/guide/platforms/ios/index.md
----------------------------------------------------------------------
diff --git a/docs/en/3.0.0rc1/guide/platforms/ios/index.md b/docs/en/3.0.0rc1/guide/platforms/ios/index.md
new file mode 100644
index 0000000..d92045c
--- /dev/null
+++ b/docs/en/3.0.0rc1/guide/platforms/ios/index.md
@@ -0,0 +1,231 @@
+---
+license: Licensed to the Apache Software Foundation (ASF) under one
+         or more contributor license agreements.  See the NOTICE file
+         distributed with this work for additional information
+         regarding copyright ownership.  The ASF licenses this file
+         to you 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.
+---
+
+# iOS Platform Guide
+
+This guide shows how to set up your SDK development environment to
+deploy Cordova apps for iOS devices such as iPhone and iPad. See the
+following for more detailed platform-specific information:
+
+* iOS Configuration
+* Upgrading iOS
+* iOS WebViews
+* iOS Plugins
+* iOS Command-line Tools
+
+The command-line tools above refer to versions prior to Cordova 3.0.
+See The Cordova Command-line Interface for information about the
+current interface.
+
+## Requirements and Support
+
+Apple® tools required to build iOS applications run only on the OS X
+operating system on Intel-based Macs. Xcode® 4.5 (the minimum required
+version) runs only on OS X version 10.7 (Lion) or greater, and
+includes the iOS 6 SDK (Software Development Kit).  To submit apps to
+the Apple App Store℠ requires the latest versions of the Apple tools.
+
+You can test many of the Cordova features using the iOS emulator
+installed with the iOS SDK and Xcode, but you need an actual device to
+fully test all of the app's device features before submitting to the
+App Store.  The device must have at least iOS 5.x installed, the
+minimum iOS version supported as of Cordova 2.3.  Supporting devices
+include all iPad® models, iPhone® 3GS and above, and iPod® Touch 3rd
+Generation or later. To install apps onto a device, you must also be a
+member of Apple's
+[iOS Developer Program](https://developer.apple.com/programs/ios/),
+which costs $99 per year. This guide shows how to deploy apps to the
+iOS emulator, for which you don't need to register with the developer
+program.
+
+## Install the SDK
+
+There are two ways to download Xcode:
+
+* from the [App Store](https://itunes.apple.com/us/app/xcode/id497799835?mt=12),
+  available by searching for "Xcode" in the __App Store__ application.
+
+* from [Apple Developer Downloads](https://developer.apple.com/downloads/index.action),
+  which requires registration as an Apple Developer.
+
+Once Xcode is installed, several command-line tools need to be enabled
+for Cordova to run. From the __Xcode__ menu, select __Preferences__,
+then the __Downloads__ tab. From the __Components__ panel, press the
+__Install__ button next to the __Command Line Tools__ listing.
+
+## Open a Project in the SDK
+
+Use the `cordova` utility to set up a new project, as described in The
+Cordova The Command-line Interface. For example, in a source-code directory:
+
+        $ cordova create hello com.example.hello "Hello World"
+        $ cd hello
+        $ cordova platform add android
+        $ cordova prepare              # or "cordova build"
+
+Once created, you can open it from within Xcode. Double-click to open
+the `hello/platforms/ios/hello.xcodeproj` file.  The screen should
+look like this:
+
+![](img/guide/platforms/ios/helloworld_project.png)
+
+## Deploy to Emulator
+
+To preview the app in the iOS emulator:
+
+1. Make sure the _.xcodeproj_ file is selected in the left panel.
+
+2. Select the __hello__ app in the panel immediately to the right.
+
+3. Select the intended device from the toolbar's __Scheme__ menu, such
+   as the iPhone 6.0 Simulator as highlighted here:
+
+   ![](img/guide/platforms/ios/select_xcode_scheme.png)
+
+4. Press the __Run__ button that appears in the same toolbar to the
+   left of the __Scheme__. That builds, deploys and runs the
+   application in the emulator. A separate emulator application opens
+   to display the app:
+
+   ![](img/guide/platforms/ios/HelloWorldStandard.png)
+
+   Only one emulator may run at a time, so if you want to test the app
+   in a different emulator, you need to quit the emulator application
+   and run a different target within Xcode.
+
+Xcode comes bundled with emulators for the lastest versions of iPhone
+and iPad. Older versions may be available from the __Xcode &rarr;
+Preferences &rarr; Downloads &rarr; Components__ panel.
+
+## Deploy to Device
+
+For details about various requirements to deploy to a device, refer
+to the _Configuring Development and Distribution Assets_ section of
+Apple's
+[Tools Workflow Guide for iOS](http://developer.apple.com/library/ios/#documentation/Xcode/Conceptual/ios_development_workflow/00-About_the_iOS_Application_Development_Workflow/introduction.html#//apple_ref/doc/uid/TP40007959).
+Briefly, you need to do the following before deploying:
+
+1. Join the Apple iOS Developer Program.
+
+2. Create a _Provisioning Profile_ within the
+   [iOS Provisioning Portal](https://developer.apple.com/ios/manage/overview/index.action).
+   You can use its _Development Provisioning Assistant_ to create and
+   install the profile and certificate Xcode requires.
+
+3. Verify that the _Code Signing_ section's _Code Signing Identity_
+   within the project settings is set to your provisioning profile
+   name.
+
+To deploy to the device:
+
+1. Use the USB cable to plug the device into your Mac.
+
+2. Select the name of the project in the Xcode window's __Scheme__
+   drop-down list.
+
+3. Select your device from the __Device__ drop-down list. If it is
+   plugged in via USB but still does not appear, press the
+   __Organizer__ button to resolve any errors.
+
+4. Press the __Run__ button to build, deploy and run the application
+   on your device.
+
+## Common Problems
+
+__Deprecation Warnings:__ When an application programming interface
+(API) is changed or replaced by another API, it is marked as
+_deprecated_.  The API still works in the near term, but is eventually
+removed.  Some of these deprecated interfaces are reflected in Apache
+Cordova, and Xcode issues warnings about them when you build and
+deploy an application.
+
+Xcode's warning about the `invokeString` method concerns functionality
+that launches an app from a custom URL. While the mechanism to load
+from a custom URL has changed, this code is still present to provide
+backwards functionality for apps created with older versions of
+Cordova.  The sample app does not use this functionality, so these
+warnings can be ignored.  To prevent these warnings from appearing,
+remove the code that references the deprecated invokeString API:
+
+* Edit the _Classes/MainViewController.m_ file, surround the following
+  block of code with `/*` and `*/` comments as shown below, then type
+  __Command-s__ to save the file:
+
+        (void)webViewDidFinishLoad:(UIWebView*)theWebView
+        {
+        // only valid if ___PROJECTNAME__-Info.plist specifies a protocol to handle
+        /*
+        if (self.invokeString) {
+          // this is passed before the deviceready event is fired, so you can access it in js when you receive deviceready
+          NSLog(@"DEPRECATED: window.invokeString - use the window.handleOpenURL(url) function instead, which is always called when the app is launched through a custom scheme url.");
+          NSString* jsString = [NSString stringWithFormat:@"var invokeString = \"%@\";", self.invokeString];
+          [theWebView stringByEvaluatingJavaScriptFromString:jsString];
+        }
+        */
+        // Black base color for background matches the native apps
+        theWebView.backgroundColor = [UIColor blackColor];
+
+        return [super webViewDidFinishLoad:theWebView];
+        }
+
+* Edit the _Classes/AppViewDelegate.m_ file, comment out the following
+  line by inserting a double slash as shown below, then type
+  __Command-s__ to save the file:
+
+        //self.viewController.invokeString = invokeString;
+
+* Press __Command-b__ to rebuild the project and eliminate the warnings.
+
+<!-- Does this fix only last until the next "cordova prepare"? -->
+
+__Missing Headers__: Compilation errors relating to missing headers
+result from problems with the build location, and can be fixed 
+via Xcode preferences:
+
+1. Select __Xcode &rarr; Preferences &rarr; Locations__.
+
+2. In the __Derived Data__ section, press the __Advanced__ button and
+   select __Unique__ as the __Build Location__ as shown here:
+
+   ![](img/guide/platforms/ios/xcode_build_location.png)
+
+This is the default setting for a new Xcode install, but it may be set
+differently following an upgrade from an older version of Xcode.
+
+For further information, consult Apple's documentation:
+
+*  [Start Developing iOS Apps Today](http://developer.apple.com/library/ios/#referencelibrary/GettingStarted/RoadMapiOS/index.html#//apple_ref/doc/uid/TP40011343) provides a quick overview of steps for developing iOS Apps.
+
+* [Member Center home page](https://developer.apple.com/membercenter/index.action)
+   provides links to several iOS technical resources including
+   technical resources, the provisioning portal, distribution guides
+   and community forums.
+
+* [Tools Workflow Guide for iOS](http://developer.apple.com/library/ios/#documentation/Xcode/Conceptual/ios_development_workflow/00-About_the_iOS_Application_Development_Workflow/introduction.html#//apple_ref/doc/uid/TP40007959)
+
+* [Xcode 4 User Guide](http://developer.apple.com/library/ios/#documentation/ToolsLanguages/Conceptual/Xcode4UserGuide/000-About_Xcode/about.html#//apple_ref/doc/uid/TP40010215)
+
+* [Session Videos](https://developer.apple.com/videos/wwdc/2012/) from
+  the Apple World Wide Developer Conference 2012 (WWDC2012)
+
+* The [xcode-select command](http://developer.apple.com/library/mac/#documentation/Darwin/Reference/ManPages/man1/xcode-select.1.html),
+  which helps specify the correct version of Xcode if more than one is installed.
+
+(Mac®, OS X®, Apple®, Xcode®, App Store℠, iPad®, iPhone®, iPod® and  Finder® are Trademarks of Apple Inc.)
+

http://git-wip-us.apache.org/repos/asf/cordova-docs/blob/17ffa3e5/docs/en/3.0.0rc1/guide/platforms/ios/plugin.md
----------------------------------------------------------------------
diff --git a/docs/en/3.0.0rc1/guide/platforms/ios/plugin.md b/docs/en/3.0.0rc1/guide/platforms/ios/plugin.md
new file mode 100644
index 0000000..7256de1
--- /dev/null
+++ b/docs/en/3.0.0rc1/guide/platforms/ios/plugin.md
@@ -0,0 +1,201 @@
+---
+license: Licensed to the Apache Software Foundation (ASF) under one
+         or more contributor license agreements. See the NOTICE file
+         distributed with this work for additional information
+         regarding copyright ownership. The ASF licenses this file
+         to you 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.
+---
+
+# iOS Plugins
+
+A plugin is an Objective-C class that extends the `CDVPlugin` class.
+
+Each plugin class must be registered using the config.xml file, as a &lt;plugin&gt; tag under the &lt;plugins&gt; key.
+
+## Plugin Class Mapping
+
+The JavaScript portion of a plugin always uses the `cordova.exec` method as follows:
+
+    exec(<successFunction>, <failFunction>, <service>, <action>, [<args>]);
+
+This marshals a request from the `UIWebView` to the iOS native side,
+more or less boiling down to calling the `action` method on the
+`service` class, with the arguments passed in the `args` array.
+
+The plugin must be added under the `<plugins>` tag of your Cordova-iOS
+application's project's `config.xml` file.
+
+    <feature name="LocalStorage">
+        <param name="ios-package" value="CDVLocalStorage" />
+    </feature>
+
+The feature name='name' should match what you use in the JavaScript
+`exec` call, and the value matches the name of the plugin's
+Objective-C class. param name should always be "ios-package".
+Otherwise the plugin may compile but would not be
+reachable by Cordova.
+
+## Plugin Initialization and Lifetime
+
+There is one instance of a plugin object that is created per-UIWebView, and the lifetime of the instance is tied to the UIWebView. Plugins are not instantiated until they are first referenced by a call from JS, unless the `onload` attribute set within config.xml. E.g.:
+
+    <plugin name="Echo" value="Echo" onload="true" />
+
+There is *no* designated initializer for plugins. Instead, plugins should use the `pluginInitialize` method for their start-up logic.
+
+Plugins with long-running requests, background activity (e.g. playing media), listeners or internal state should implement the `onReset` method and stop or clean up those activities. This method is run when the `UIWebView` navigates to a new page or refreshes, which reloads the JavaScript.
+
+## Writing an iOS Cordova Plugin
+
+We have JavaScript fire off a plugin request to the native side. We have the iOS Objective-C plugin mapped properly via the `config.xml` file. So what does the final iOS Objective-C Plugin class look like?
+
+What gets dispatched to the plugin via JavaScript's `exec` function gets passed into the corresponding Plugin class's `action` method. A plugin method has this signature:
+
+    - (void)myMethod:(CDVInvokedUrlCommand*)command
+    {
+        CDVPluginResult* pluginResult = nil;
+        NSString* myarg = [command.arguments objectAtIndex:0];
+
+        if (myarg != nil) {
+            pluginResult = [CDVPluginResult resultWithStatus:CDVCommandStatus_OK];
+        } else {
+            pluginResult = [CDVPluginResult resultWithStatus:CDVCommandStatus_ERROR messageAsString:@"Arg was null"];
+        }
+        [self.commandDelegate sendPluginResult:pluginResult callbackId:command.callbackId];
+    }
+
+1. [CDVInvokedUrlCommand.h](https://github.com/apache/cordova-ios/blob/master/CordovaLib/Classes/CDVInvokedUrlCommand.h)
+2. [CDVPluginResult.h](https://github.com/apache/cordova-ios/blob/master/CordovaLib/Classes/CDVPluginResult.h)
+3. [CDVCommandDelegate.h](https://github.com/apache/cordova-ios/blob/master/CordovaLib/Classes/CDVCommandDelegate.h)
+
+## iOS CDVPluginResult message types
+
+Using CDVPluginResult you can return a variety of result types back to your JavaScript callbacks, using class methods that look like:
+
+    + (CDVPluginResult*)resultWithStatus:(CDVCommandStatus)statusOrdinal messageAs...
+
+You can create `String`, `Int`, `Double`, `Bool`, `Array`,
+`Dictionary`, `ArrayBuffer`, and `Multipart` types.  Or, don't attach
+any arguments (just send a status).  Or, return an Error.  You can
+even choose to not send any plugin result at all, in which case the
+callback does not fire.
+
+### Notes
+
+ * `messageAsArrayBuffer` expects `NSData*` and converts to an `ArrayBuffer` for your JavaScript callback (and `ArrayBuffers` sent to a plugin from JavaScript are converted to `NSData*`).
+ * `messageAsMultipart` expects an `NSArray*` containing any of the other supported types, and sends the whole array as the `arguments` to your JavaScript callback.
+   *  Quirk: this is not just syntactic sugar (though it is sweet).  This way, all of the arguments are serialized or deserialized as necessary.  e.g. it is safe to return `NSData*` as multipart, but not as `Array`/`Dictionary`.
+
+## Echo Plugin iOS Plugin
+
+We would add the following to the `<plugins>` tag of the project's `config.xml` file:
+
+    <plugin name="Echo" value="Echo" />
+
+Then we would add the following files (`Echo.h` and `Echo.m`) to the Plugins folder inside our Cordova-iOS
+application folder:
+
+    /********* Echo.h Cordova Plugin Header *******/
+
+    #import <Cordova/CDV.h>
+
+    @interface Echo : CDVPlugin
+
+    - (void)echo:(CDVInvokedUrlCommand*)command;
+
+    @end
+
+    /********* Echo.m Cordova Plugin Implementation *******/
+
+    #import "Echo.h"
+    #import <Cordova/CDV.h>
+
+    @implementation Echo
+
+    - (void)echo:(CDVInvokedUrlCommand*)command
+    {
+        CDVPluginResult* pluginResult = nil;
+        NSString* echo = [command.arguments objectAtIndex:0];
+
+        if (echo != nil && [echo length] > 0) {
+            pluginResult = [CDVPluginResult resultWithStatus:CDVCommandStatus_OK messageAsString:echo];
+        } else {
+            pluginResult = [CDVPluginResult resultWithStatus:CDVCommandStatus_ERROR];
+        }
+
+        [self.commandDelegate sendPluginResult:pluginResult callbackId:command.callbackId];
+    }
+
+    @end
+
+Let's take a look at the code. At the top we have all of the necessary
+Cordova imports. Our class extends from `CDVPlugin` - very important.
+
+This plugin only supports one action, the `echo` action. First, we
+grab the echo string using the `objectAtIndex` method on our `args`,
+telling it we want to get the 0th parameter in the arguments array. We
+do a bit of parameter checking: make sure it is not `nil`, and make
+sure it is not a zero-length string.
+
+If it is, we return a `PluginResult` with an `ERROR` status. If all of
+those checks pass, then we return a `PluginResult` with an `OK`
+status, and pass in the `echo` string we received in the first place
+as a parameter.
+
+Finally, we send the result to `self.commandDelegate`, which executes
+the `exec` method's success or failure callbacks on the JavaScript
+side. If the success callback is called, it passes in the `echo`
+parameter.
+
+## Threading
+
+Plugin methods are executed in the same thread as the UI. If your
+plugin requires a great deal of processing or requires a blocking
+call, you should use a background thread. For example:
+
+    - (void)myPluginMethod:(CDVInvokedUrlCommand*)command
+    {
+        // Check command.arguments here.
+        [self.commandDelegate runInBackground:^{
+            NSString* payload = nil;
+            // Some blocking logic...
+            CDVPluginResult* pluginResult = [CDVPluginResult resultWithStatus:CDVCommandStatus_OK messageAsString:payload];
+            // The sendPluginResult method is thread-safe.
+            [self.commandDelegate sendPluginResult:pluginResult callbackId:command.callbackId];
+        }];
+    }
+
+## Advanced Plugin Functionality
+
+See other methods that you can override in:
+
+1. [CDVPlugin.h](https://github.com/apache/cordova-ios/blob/master/CordovaLib/Classes/CDVPlugin.h)
+2. [CDVPlugin.m](https://github.com/apache/cordova-ios/blob/master/CordovaLib/Classes/CDVPlugin.m)
+
+For example, you can hook into the `pause`, `resume`, app terminate and `handleOpenURL` events.
+
+## Debugging Plugins
+
+To debug the Objective-C side, you would use Xcode's built-in debugger.
+For JavaScript, on iOS 5.0 you can use
+[Weinre, an Apache Cordova Project](https://github.com/apache/cordova-weinre) or
+[iWebInspector, a third-party utility](http://www.iwebinspector.com/)
+
+For iOS 6, you would use Safari 6.0 to simply attach to your app
+running in the iOS 6 Simulator.
+
+## Common Pitfalls
+
+* Don't forget to add your plugin's mapping to config.xml. If you forget, an error is logged in the Xcode console.
+* Don't forget to add any hosts you connect to in the whitelist, as described in Domain Whitelist Guide. If you forget, an error is logged in the Xcode console.

http://git-wip-us.apache.org/repos/asf/cordova-docs/blob/17ffa3e5/docs/en/3.0.0rc1/guide/platforms/ios/tools.md
----------------------------------------------------------------------
diff --git a/docs/en/3.0.0rc1/guide/platforms/ios/tools.md b/docs/en/3.0.0rc1/guide/platforms/ios/tools.md
new file mode 100644
index 0000000..c37dbcd
--- /dev/null
+++ b/docs/en/3.0.0rc1/guide/platforms/ios/tools.md
@@ -0,0 +1,59 @@
+---
+license: Licensed to the Apache Software Foundation (ASF) under one
+         or more contributor license agreements.  See the NOTICE file
+         distributed with this work for additional information
+         regarding copyright ownership.  The ASF licenses this file
+         to you 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.
+---
+
+# iOS Command-line Tools
+
+The `cordova` command-line utility is a high-level tool that allows
+you to build applications across several platforms at once. An older
+version of the Cordova framework provides sets of command-line tools
+specific to each platform. To use them as an alternative to the CLI,
+you need to download this version of Cordova from
+[cordova.apache.org](http://cordova.apache.org). The download contains
+separate archives for each platform. Expand the platform you wish to
+target. The tools described here are typically available in the
+top-level `bin` directory, otherwise consult the __README__ file for
+more detailed directions.
+
+The iOS command-line tools are built upon shell scripts and rely on
+Xcode command-line tools such as `xcode-select` and `xcodebuild`.
+
+## Create a project
+
+Run the `create` command, specifying the existing path to the project,
+the reverse-domain-style package identifier, and the app's display
+name.
+
+    $ ./path/to/cordova-ios/bin/create /path/to/my_new_project com.example.project_name ProjectName
+
+## Build a project
+
+    $ /path/to/my_new_project/cordova/build
+
+## Run app on emulator
+
+    $ /path/to/my_new_project/cordova/run
+
+## Releasing
+
+    $ /path/to/my_new_project/cordova/release
+
+## Logging
+
+    $ /path/to/my_new_project/cordova/log
+

http://git-wip-us.apache.org/repos/asf/cordova-docs/blob/17ffa3e5/docs/en/3.0.0rc1/guide/platforms/ios/upgrading.md
----------------------------------------------------------------------
diff --git a/docs/en/3.0.0rc1/guide/platforms/ios/upgrading.md b/docs/en/3.0.0rc1/guide/platforms/ios/upgrading.md
new file mode 100644
index 0000000..0a8330f
--- /dev/null
+++ b/docs/en/3.0.0rc1/guide/platforms/ios/upgrading.md
@@ -0,0 +1,473 @@
+---
+license: Licensed to the Apache Software Foundation (ASF) under one
+         or more contributor license agreements.  See the NOTICE file
+         distributed with this work for additional information
+         regarding copyright ownership.  The ASF licenses this file
+         to you 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.
+---
+
+# Upgrading iOS
+
+This guide shows how to modify iOS projects to upgrade from older versions of Cordova.
+Most of these instructions apply to projects created with an older set
+of command-line tools that precede the `cordova` CLI utility. See The
+Cordova Command-line Interface for information how to update the
+version of the CLI.
+
+Please note that **Xcode 4.5 is required**. To submit to the Apple App Store, you must use the latest shipped version of the iOS SDK, which is iOS 6. The iOS 6 SDK requires Xcode 4.5.
+
+## Upgrade to the CLI (3.0.0) from 2.9.0 ##
+
+1. Create a new Apache Cordova 3.0.0 project using the cordova CLI, as
+   described in The Cordova Command-line Interface.
+2. Add your platforms the the cordova project, for example: `cordova
+   platform add ios`.
+3. Copy the contents of the project's `www` folder to the `www` folder
+   at the root of the cordova project you just created.
+4. Copy or overwrite any native assets from your original project
+   (`Resources`, etc.), making sure to add any
+   new files to the `.xcodeproj` project. The iOS project builds
+   inside the `platforms\ios` directory.
+5. Copy your config.xml into the www folder, and remove any plugin definitions. You will modify settings here instead of the platform folder.
+6. Use the cordova CLI tool to install any plugins you need. Note that
+   the CLI handles all core APIs as plugins, so they may need to be
+   added. Only 3.0.0 plugins are compatible with the CLI.
+7. Build and test.
+
+
+## Upgrading 2.9.0 projects to 3.0.0 ##
+
+1. **Download and extract the Cordova 3.0.0 source** to a **permanent folder location** on your hard drive (say to ~/Documents/Cordova-3.0.0)
+2. **Quit Xcode** if it is running.
+3. **Navigate** to the directory where you put the downloaded source above, using **Terminal.app**.
+4. **Create a new project**, as described in iOS Command-line Tools. You need the assets from this new project.
+5. **Copy** the **www/cordova.js** (note that it does not have a version suffix anymore, the version is in the file itself in the header) file from the new project into your **www** folder, and delete your **www/cordova.js** file
+6. **Update** the Cordova script reference in your **www/index.html** file (and any other files that contain the script reference) to point to the new **cordova.js** file
+7. Delete your **"CordovaLib"** folder, and copy the **"CordovaLib"** folder from the new project into your project's root folder
+
+NOTE: Starting with Cordova 3.0.0, projects do not come with any plugins, you will have to install the ones you require for your project using the `plugman` CLI utility - see the "Using Plugman to Manage Plugins".
+
+## Upgrading 2.8.0 projects to 2.9.0 ##
+
+1. **Download and extract the Cordova 2.9.0 source** to a **permanent folder location** on your hard drive (say to ~/Documents/Cordova-2.9.0)
+2. **Quit Xcode** if it is running.
+3. **Navigate** to the directory where you put the downloaded source above, using **Terminal.app**.
+4. **Create a new project**, as described in iOS Command-line Tools. You need the assets from this new project.
+5. **Copy** the **www/cordova.js** (note that it does not have a version suffix anymore, the version is in the file itself in the header) file from the new project into your **www** folder, and delete your **www/cordova.js** file
+6. **Update** the Cordova script reference in your **www/index.html** file (and any other files that contain the script reference) to point to the new **cordova.js** file
+7. Delete your **"CordovaLib"** folder, and copy the **"CordovaLib"** folder from the new project into your project's root folder
+
+## Upgrading 2.7.0 projects to 2.8.0 ##
+
+1. **Download and extract the Cordova 2.8.0 source** to a **permanent folder location** on your hard drive (say to ~/Documents/Cordova-2.8.0)
+2. **Quit Xcode** if it is running.
+3. **Navigate** to the directory where you put the downloaded source above, using **Terminal.app**.
+4. **Create a new project**, as described in iOS Command-line Tools. You need the assets from this new project.
+5. **Copy** the **www/cordova.js** (note that it does not have a version suffix anymore, the version is in the file itself in the header) file from the new project into your **www** folder, and delete your **www/cordova-2.7.0.js** file
+6. **Update** the Cordova script reference in your **www/index.html** file (and any other files that contain the script reference) to point to the new **cordova.js** file
+7. Update any &lt;plugin&gt; tags that are in your **config.xml** to &lt;feature&gt; tags. Note that existing &lt;plugin&gt; tags will still work, but are deprecated. You can copy this information in the **config.xml** for a new project. For example:
+
+        <plugins>
+            <plugin name="LocalStorage" value="CDVLocalStorage" />
+            <!-- other plugins -->
+        </plugins>
+        
+        <!-- change to: (note that a <feature> tag is on the same level as <plugins> -->
+        <feature name="LocalStorage">
+    	    <param name="ios-package" value="CDVLocalStorage" />
+    	</feature>
+    	<!-- other <feature> tags -->
+        
+8. Delete your **"CordovaLib"** folder, and copy the **"CordovaLib"** folder from the new project into your project's root folder
+9. Add these two frameworks to your project:
+        
+        OpenAL
+        ImageIO
+        
+10. Update your project's target **Build Settings**. Under **Linking** -> **Other Linker Flags**, edit **"-Obj-C"** to be **"-ObjC"**
+        
+11. Update your project's target **Build Settings**. Under **Linking** -> **Other Linker Flags**, change **"-all\_load"** to be **"-force\_load ${BUILT\_PRODUCTS\_DIR}/libCordova.a"**. You would only need to do this if you have the problem defined in [this issue.](https://issues.apache.org/jira/browse/CB-3458)
+
+## Upgrading 2.6.0 projects to 2.7.0 ##
+
+1. **Download and extract the Cordova 2.7.0 source** to a **permanent folder location** on your hard drive (say to ~/Documents/Cordova-2.7.0)
+2. **Quit Xcode** if it is running.
+3. **Navigate** to the directory where you put the downloaded source above, using **Terminal.app**.
+4. **Create a new project**, as described in iOS Command-line Tools. you need the assets from this new project.
+5. **Copy** the **www/cordova-2.7.0.js** file from the new project into your **www** folder, and delete your **www/cordova-2.6.0.js** file
+6. **Update** the Cordova script reference in your **www/index.html** file (and any other files that contain the script reference) to point to the new **cordova-2.7.0.js** file
+7. Update (or replace, if you never changed the file) your **AppDelegate.m** file according to the one from the new project (see [this diff](https://git-wip-us.apache.org/repos/asf?p=cordova-ios.git;a=blobdiff;f=bin/templates/project/__TESTING__/Classes/AppDelegate.m;h=5c05ac80e056753c0e8736f887ba9f28d5b0774c;hp=623ad8ec3c46f656ea18c6c3a190d650dd64e479;hb=c6e71147386d4ad94b07428952d1aae0a9cbf3f5;hpb=c017fda8af00375a453cf27cfc488647972e9a23))
+8. In your **config.xml** file, [remove this line](https://git-wip-us.apache.org/repos/asf?p=cordova-ios.git;a=blobdiff;f=bin/templates/project/__TESTING__/config.xml;h=537705d76a5ef6bc5e57a8ebfcab78c02bb4110b;hp=8889726d9a8f8c530fe1371c56d858c34552992a;hb=064239b7b5fa9a867144cf1ee8b2fb798ce1f988;hpb=c9f233250d4b800f3412eeded811daaafb17b2cc).
+9. Delete your **"CordovaLib"** folder, and copy the **"CordovaLib"** folder from the new project into your project's root folder
+
+## Upgrading 2.5.0 projects to 2.6.0 ##
+
+1. **Download and extract the Cordova 2.6.0 source** to a **permanent folder location** on your hard drive (say to `~/Documents/Cordova-2.6.0`)
+2. **Quit Xcode** if it is running.
+3. **Navigate** to the directory where you put the downloaded source above, using **Terminal.app**.
+4. **Create a new project**, as described in iOS Command-line Tools. You need the assets from this new project.
+5. **Copy** the project's `www/cordova-2.6.0.js` file into your `www` folder, and delete your `www/cordova-2.5.0.js` file.
+6. **Update** the Cordova script reference in your `www/index.html` file (along with any other files that reference the script) to refer to the new `cordova-2.6.0.js` file.
+7. Update (or replace, if you never changed the file) your `AppDelegate.m` file according to the one from the new project (see [this diff](https://git-wip-us.apache.org/repos/asf?p=cordova-ios.git;a=blobdiff;f=bin/templates/project/__TESTING__/Classes/AppDelegate.m;h=124a56bb4f361e95616f44d6d6f5a96ffa439b60;hp=318f79326176be8f16ebc93bad85dd745f4205b6;hb=a28c7712810a63396e9f32fa4eb94fe3f8b93985;hpb=36acdf55e4cab52802d73764c8a4b5b42cf18ef9))
+8. In your `config.xml` file, [add this new line](https://git-wip-us.apache.org/repos/asf?p=cordova-ios.git;a=blobdiff;f=bin/templates/project/__TESTING__/config.xml;h=1555b5e81de326a07efe0bccaa5f5e2326b07a9a;hp=0652d60f8d35ac13c825c572dca6ed01fea4a540;hb=95f16a6dc252db0299b8e2bb53797995b1e39aa1;hpb=a2de90b8f5f5f68bd9520bcbbb9afa3ac409b96d).
+9. In your `config.xml` file, [add this new line](https://git-wip-us.apache.org/repos/asf?p=cordova-ios.git;a=blobdiff;f=bin/templates/project/__TESTING__/config.xml;h=d307827b7e67301171a913417fb10003d43ce39d;hp=04260aa9786d6d74ab20a07c86d7e8b34e31968c;hb=97b89edfae3527828c0ca6bb2f6d58d9ded95188;hpb=942d33c8e7174a5766029ea1232ba2e0df745c3f).
+10. In your `config.xml` file, [UIWebViewBounce has ben changed to DisallowOverscroll - and default values are different](https://git-wip-us.apache.org/repos/asf?p=cordova-ios.git;a=blobdiff;f=bin/templates/project/__TESTING__/config.xml;h=8889726d9a8f8c530fe1371c56d858c34552992a;hp=d307827b7e67301171a913417fb10003d43ce39d;hb=57982de638a4dce6ae130a26662591741b065f00;hpb=ec411f18309d577b4debefd9a2f085ba719701d5).
+10. In your `config.xml` file, the **EnableLocation** preference has been **deprecated**.
+11. Delete your `CordovaLib` folder, and copy the `CordovaLib` folder from the new project into your project's root folder.
+
+## Upgrading 2.4.0 projects to 2.5.0 ##
+
+1. **Download and extract the Cordova 2.5.0 source** to a **permanent folder location** on your hard drive (say to ~/Documents/Cordova-2.5.0)
+2. **Quit Xcode** if it is running.
+3. **Navigate** to the directory where you put the downloaded source above, using **Terminal.app**.
+4. **Create a new project**, as described in iOS Command-line Tools. You need the assets from this new project.
+5. **Copy** the **www/cordova-2.5.0.js** file from the new project into your **www** folder and delete your **www/cordova-2.4.0.js** file
+6. **Update** the Cordova script reference in your `www/index.html` file (and any other files that contain the script reference) to point to the new **cordova-2.5.0.js** file
+7. Update (or replace, if you never changed the file) your `AppDelegate.m` file according to the one from the new project (see [this diff](https://git-wip-us.apache.org/repos/asf?p=cordova-ios.git;a=blobdiff;f=bin/templates/project/__TESTING__/Classes/AppDelegate.m;h=318f79326176be8f16ebc93bad85dd745f4205b6;hp=6dc7bfc84f0ecede4cc43d2a3256ef7c5383b9fe;hb=4001ae13fcb1fcbe73168327630fbc0ce44703d0;hpb=299a324e8c30065fc4511c1fe59c6515d4842f09))
+8. In your `config.xml` file, [add these new lines](https://git-wip-us.apache.org/repos/asf?p=cordova-ios.git;a=blobdiff;f=bin/templates/project/__TESTING__/config.xml;h=903944c4b1e58575295c820e154be2f5f09e6314;hp=721c734120b13004a4a543ee25f4287e541f34be;hb=ae467249b4a256bd31ee89aea7a06f4f2316b8ac;hpb=9e39f7ef8096fb15b38121ab0e245a3a958d9cbb).
+9. In your `config.xml` file, [edit the root element, change it from cordova to widget](https://git-wip-us.apache.org/repos/asf?p=cordova-ios.git;a=blobdiff;f=bin/templates/project/__TESTING__/config.xml;h=64e71636f5dd79fa0978a97b9ff5aa3860a493f5;hp=d8579352dfb21c14e5748e09b2cf3f4396450163;hb=0e711f8d09377a7ac10ff6be4ec17d22cdbee88d;hpb=57c3c082ed9be41c0588d0d63a1d2bfcd2ed878c).
+10. In your `config.xml` file, [remove the OpenAllWhitelistURLsInWebView preference](https://git-wip-us.apache.org/repos/asf?p=cordova-ios.git;a=blobdiff;f=bin/templates/project/__TESTING__/config.xml;h=721c734120b13004a4a543ee25f4287e541f34be;hp=7d67508b70914aa921a16e79f79c00512502a8b6;hb=187bf21b308551bfb4b98b1a5e11edf04f699791;hpb=03b8854bdf039bcefbe0212db937abd81ac675e4).
+11. Delete your **cordova** folder, and copy the **cordova** folder from the new project into your project's root folder **(in 2.5.0, this has updated scripts)**
+12. Delete your **CordovaLib** folder, and copy the **CordovaLib** folder from the new project into your project's root folder
+
+## Upgrading 2.3.0 projects to 2.4.0 ##
+
+1. **Download and extract the Cordova 2.4.0 source** to a **permanent folder location** on your hard drive (say to ~/Documents/Cordova-2.4.0)
+2. **Quit Xcode** if it is running.
+3. **Navigate** to the directory where you put the downloaded source above, using **Terminal.app**.
+4. **Create a new project**, as described in iOS Command-line Tools. You need the assets from this new project.
+5. **Copy** the **www/cordova-2.4.0.js** file from the new project into your **www** folder, and delete your **www/cordova-2.3.0.js** file
+6. **Update** the Cordova script reference in your `www/index.html` file (and any other files that contain the script reference) to point to the new **cordova-2.4.0.js** file
+7. Update (or replace, if you never changed the files) your `MainViewController.m` file according to the one from the new project (see [this diff](https://git-wip-us.apache.org/repos/asf?p=cordova-ios.git;a=blobdiff;f=bin/templates/project/__TESTING__/Classes/MainViewController.m;h=5f9eeac15c2437cd02a6eb5835b48374e9b94100;hp=89da1082d06ba5e5d0dffc5b2e75a3a06d5c2aa6;hb=b4a2e4ae0445ba7aec788090dce9b822d67edfd8;hpb=a484850f4610e73c7b20cd429a7794ba829ec997)).
+8. Update (or replace, if you never changed the file) your `AppDelegate.m` file according to the one from the new project (see [this diff](https://git-wip-us.apache.org/repos/asf?p=cordova-ios.git;a=blobdiff;f=bin/templates/project/__TESTING__/Classes/AppDelegate.m;h=6dc7bfc84f0ecede4cc43d2a3256ef7c5383b9fe;hp=1ca3dafeb354c4442b7e149da4f281675aa6b740;hb=6749c17640c5fed8a7d3a0b9cca204b89a855baa;hpb=deabeeb6fcb35bac9360b053c8bf902b45e6de4d))
+9. In your `config.xml` file, [add this new line](https://git-wip-us.apache.org/repos/asf?p=cordova-ios.git;a=blobdiff;f=bin/templates/project/__TESTING__/config.xml;h=7d67508b70914aa921a16e79f79c00512502a8b6;hp=337d38da6f40c7432b0bce05aa3281d797eec40a;hb=6749c17640c5fed8a7d3a0b9cca204b89a855baa;hpb=deabeeb6fcb35bac9360b053c8bf902b45e6de4d).
+10. Delete your **cordova** folder, and copy the **cordova** folder from the new project into your project's root folder **(in 2.4.0, this has fixed scripts)**
+11. Delete your **CordovaLib** folder, and copy the **CordovaLib** folder from the new project into your project's root folder
+12. Add AssetsLibrary.framework as a resource to your project.  (Go [here](https://developer.apple.com/library/ios/#recipes/xcode_help-project_editor/Articles/AddingaLibrarytoaTarget.html) for instructions on how to do so.)
+
+## Upgrading 2.2.0 projects to 2.3.0 ##
+
+1. **Download and extract the Cordova 2.3.0 source** to a **permanent folder location** on your hard drive (say to ~/Documents/Cordova-2.3.0)
+2. **Quit Xcode** if it is running.
+3. **Navigate** to the directory where you put the downloaded source above, using **Terminal.app**.
+4. **Create a new project**, as described in iOS Command-line Tools. You need the assets from this new project.
+5. **Copy** the **www/cordova-2.3.0.js** file from the new project into your **www** folder, and delete your **www/cordova-2.2.0.js** file
+6. **Update** the Cordova script reference in your `www/index.html` file (and any other files that contain the script reference) to point to the new **cordova-2.3.0.js** file
+7. Update (or replace, if you never changed the file) your `MainViewController.m` according to the one from the new project.
+8. Delete your **cordova** folder, and copy the **cordova** folder from the new project into your project's root folder **(in 2.3.0, this has new scripts)**
+9. Delete your **CordovaLib** folder, and copy the **CordovaLib** folder from the new project into your project's root folder
+10. Convert your `Cordova.plist` file to `config.xml`, by running the script **bin/cordova\_plist\_to\_config\_xml** on your project file.
+11. Add the InAppBrowser plugin to your `config.xml`, by adding this tag under **&lt;cordova&gt;&lt;plugins&gt;**:
+
+        <plugin name="InAppBrowser" value="CDVInAppBrowser" />
+12. Note that Objective-C plugins are **not** whitelisted anymore. To whitelist your connections with the app whitelist, you will need to set the “User-Agent” header of the connection to the same user-agent as the main Cordova WebView.
+You can get this by accessing the **userAgent** property off the main view-controller. The main view-controller (CDVViewController) also has a **URLisAllowed** method for you to check whether a URL will pass the whitelist.
+13. Device API changes:
+    * For iOS, device.platform used to return “iPhone”, “iPad” or “iPod Touch” — now it returns (correctly) “iOS”.
+    * For iOS, device.name (now deprecated for all platforms) used to return the name of the user’s device (e.g ‘Shazron’s iPhone 5′) — now it returns what device.platform used to return: ”iPhone”, “iPad” or “iPod Touch”.
+    * For all platforms, there is a new property called device.model — this returns the specific device model, e.g “iPad2,5″ (for other platforms, this returns what device.name used to return).
+
+## Upgrading 2.1.0 projects to 2.2.0 ##
+
+1. **Download and extract the Cordova 2.2.0 source** to a **permanent folder location** on your hard drive (say to ~/Documents/Cordova-2.2.0)
+2. **Quit Xcode** if it is running.
+3. **Navigate** to the directory where you put the downloaded source above, using **Terminal.app**.
+4. **Create a new project**, as described in iOS Command-line Tools. You need the assets from this new project.
+5. **Copy** the **www/cordova-2.2.0.js** file from the new project into your **www** folder, and delete your **www/cordova-2.1.0.js** file
+6. **Update** the Cordova script reference in your `www/index.html` file (and any other files that contain the script reference) to point to the new **cordova-2.2.0.js** file
+7. Update (or replace, if you never changed the file) your `MainViewController.m` according to the one from the new project:
+    - Updated &rarr; viewWillAppear
+8. Copy the **cordova** folder from the new project into your project's root folder **(in 2.2.0, this has an updated 'emulate' script)**
+9. Next, update your CordovaLib sub-project reference. Beginning with Cordova 2.1.0, we are not using the CORDOVALIB Xcode variable anymore when referencing where CordovaLib resides, the reference is an absolute file reference now.
+    1. Launch **Terminal.app**
+    2. Go to the location where you installed Cordova (see Step 1), in the **bin** sub-folder
+    3. Run the script below where the first parameter is the path to your project's **.xcodeproj** file:
+
+        `update_cordova_subproject path/to/your/project/xcodeproj`
+
+__NOTE:__ In 2.2.0, the `bin/create` script copy in the CordovaLib sub-project into your project. To have the same kind of setup, just copy in the right CordovaLib into your project folder, and update the CordovaLib sub-project location (relative to the project) in the Xcode File Inspector.
+
+## Upgrading 2.0.0 projects to 2.1.0 ##
+
+With **Cordova 2.1.0**, CordovaLib has been upgraded to use **Automatic Reference Counting (ARC)**. You don't need to upgrade to **ARC** to use CordovaLib, but if you want to upgrade your project to use **ARC**, please use the Xcode migration wizard from the menu: **Edit &rarr; Refactor &rarr; Convert to Objective-C ARC...**, **de-select libCordova.a**, then run the wizard to completion.
+
+1. **Download and extract the Cordova 2.1.0 source** to a **permanent folder location** on your hard drive (say to ~/Documents/Cordova-2.1.0)
+2. **Quit Xcode** if it is running.
+3. **Navigate** to the directory where you put the downloaded source above, using **Terminal.app**.
+5. **Create a new project**, as described in iOS Command-line Tools. You need the assets from this new project.
+6. **Copy** the **www/cordova-2.1.0.js** file from the new project into your **www** folder, and delete your **www/cordova-2.0.0.js** file
+7. **Update** the Cordova script reference in your `www/index.html` file (and any other files that contain the script reference) to point to the new **cordova-2.1.0.js** file
+8. Update (or replace, if you never changed the file) your `AppDelegate.m` according to the one from the new project:
+    - Edited -> application:didFinishLaunchingWithOptions:
+	- Added  -> application:supportedInterfaceOrientationsForWindow:
+9. Update (or replace, if you never changed the file) your `MainViewController.m` according to the one from the new project:
+    - Added -> viewWillAppear
+10. Copy the **cordova** folder from the new project into your project's root folder **(in 2.1.0, this has the updated scripts to support paths with spaces)**
+11. Remove the **VERSION** file reference from your **project** (_not_ the one in CordovaLib)
+12. Next, update your CordovaLib sub-project reference. Beginning with Cordova 2.1.0, we are not using the CORDOVALIB Xcode variable anymore when referencing where CordovaLib resides, the reference is an absolute file reference now.
+    1. Launch **Terminal.app**
+    2. Go to the location where you installed Cordova **(see Step 1)**, in the **bin** sub-folder
+    3. Run the script below where the first parameter is the path to your project's **.xcodeproj** file:
+
+        `update_cordova_subproject path/to/your/project/xcodeproj`
+
+## Upgrading 1.9.0 projects to 2.0.0 ##
+
+1. **Install** Cordova 2.0.0
+2. **Create a new project**, as described in iOS Command-line Tools. You need the assets from this new project.
+3. **Copy** the **www/cordova-2.0.0.js** file from the new project into your **www** folder, and delete your **www/cordova-1.9.0.js** file
+4. **Update** the Cordova script reference in your `www/index.html` file (and any other files that contain the script reference) to point to the new **cordova-2.0.0.js** file
+5. Copy the **cordova** folder from the new project into your project's root folder (if you want the project command-line tools)
+6. **Add** a new entry under **Plugins** in your `Cordova.plist` file (under the **Supporting Files** group) - the key is **Device** and the value is **CDVDevice**
+7. Remove `Cordova.framework`
+8. Remove `verify.sh` from the **Supporting Files** group
+9. Select the **project icon** in the Project Navigator, select your project **Target**, then select the **Build Settings** tab
+10. Search for **Preprocessor Macros**, then remove all **CORDOVA_FRAMEWORK=1** values
+11. Locate the **CordovaLib** folder that was installed in your hard-drive under your home folder's **Documents** sub-folder.
+12. Locate the `CordovaLib.xcodeproj` file in the **CordovaLib** folder, then **drag and drop** the file into your project - it should appear as a **sub-project**.
+13. **Build** your project, you should get some **errors** relating to **#import** directives
+14. For the **#import errors**, change any **quote-based** imports in this style:
+
+        #import "CDV.h"
+
+    to this **brackets-based** style:
+
+        #import <Cordova/CDV.h>
+
+    and remove any **#ifdef** wrappers around any Cordova imports, they are not needed anymore (the imports are **unified** now)
+15. **Build** your project again, and it should not have any **#import** errors.
+16. Select the **project icon** in the Project Navigator, select your project **Target**, then select the **Build Phases** tab
+17. Expand the **Target Dependencies** phase, then select the **+** button
+18. Select the **CordovaLib** target, then select the **Add** button
+19. Expand the **first** **Link Binary with Libraries** phase (it should already contain a bunch of frameworks), then select the **+** button
+20. Select the `libCordova.a` static library, then select the **Add** button
+21. Delete the **Run Script** phase.
+22. Select the **project icon** in the Project Navigator, select your project **Target**, then select the **Build Settings** tab
+23. Search for **Other Linker Flags**, and add the values **-all_load** and **-Obj-C**
+24. Expand the **CordovaLib** sub-project.
+25. Locate the **VERSION** file, drag it into your main project (we want to create a link to it, not a copy)
+26. Select the **Create groups for any added folders** radiobutton, then select the **Finish** button
+27. Select the **VERSION** file that you just dragged in a previous step
+28. Type the **Option-Command-1** key combination to show the **File Inspector** (or menuitem **View -> Utilities -> Show File Inspector**)
+29. Choose **Relative to CORDOVALIB** in the **File Inspector** for the drop-down menu for **Location**
+30. Set the Xcode preference **Xcode Preferences -> Locations -> Derived Data -> Advanced...** to **Unique** (this is so the unified headers can be found)
+31. Select the **project icon** in the Project Navigator, select your **Target**, then select the **Build Settings** tab
+32. Search for **Header Search Paths**. For that setting, add these three values below (with quotes):
+
+        "$(TARGET_BUILD_DIR)/usr/local/lib/include"
+
+        "$(OBJROOT)/UninstalledProducts/include"
+
+        "$(BUILT_PRODUCTS_DIR)"
+
+33. Search for **Other Linker Flags**. For that setting, add this value below:
+
+        -weak_framework CoreFoundation
+
+34. **Build** your project, it should compile and link with **no issues**.
+35. **Select your project** from the **Scheme** drop-down, and then select **iPhone 5.1 Simulator**
+36. Select the **Run** button
+
+__NOTE:__ If your project is **not working** as expected in the Simulator, please **take a note of any errors** in the **console log in Xcode** for clues.
+
+## Upgrading 1.8.x projects to 1.9.0 ##
+
+1. **Install** Cordova 1.9.0
+2. **Create a new project** - you will have to grab assets from this new project
+3. **Copy** the **www/cordova-1.9.0.js** file from the new project into your **www** folder, and delete your **www/cordova-1.8.x.js** file
+4. **Update** the Cordova script reference in your `www/index.html` file (and any other files that contain the script reference) to point to the new **cordova-1.9.0.js** file
+
+__NOTE:__ 1.9.0 supports the new **BackupWebStorage** boolean `Cordova.plist` setting. It's enabled by default, so set it to
+`false` to disable it, especially on iOS 6. See [Release Notes - Safari and UIKit Section](https://developer.apple.com/library/prerelease/ios/#releasenotes/General/RN-iOSSDK-6_0/_index.html)
+
+## Upgrading 1.7.0 projects to 1.8.x ##
+
+1. **Install** Cordova 1.8.0
+2. **Create a new project** - you will have to grab assets from this new project
+3. **Copy** the **www/cordova-1.8.0.js** file from the new project into your **www** folder, and delete your **www/cordova-1.7.x.js** file
+4. **Update** the Cordova script reference in your `www/index.html` file (and any other files that contain the script reference) to point to the new **cordova-1.8.0.js** file
+
+If you intend on using the **Capture API**, you will need the new **iPad retina-display** assets:
+
+1.  **Copy** the `Resources/Capture.bundle` item from the new project into your project folder, over-writing your existing `Resources/Capture.bundle` item
+2.  In your project, select the `Capture.bundle` item into your Project Navigator in Xcode, type the **Delete** key, then select **Remove Reference** from the resulting dialog.
+3.  Drag the new `Capture.bundle` from Step 1 above into your Project Navigator in Xcode, then select the **Create groups for any added folders** radio button
+
+## Upgrading 1.6.x projects to 1.7.0 ##
+
+1. **Install** Cordova 1.7.0
+2. **Create a new project** - you will have to grab assets from this new project
+3. **Copy** the **www/cordova-1.7.0.js** file from the new project into your **www** folder, and delete your **www/cordova-1.6.0.js** file
+4. **Update** the Cordova script reference in your `www/index.html` file (and any other files that contain the script reference) to point to the new **cordova-1.7.0.js** file
+
+## Upgrading 1.5.0 projects to 1.6.x ##
+
+1. **Install** Cordova 1.6.1
+2. **Make a backup** of `AppDelegate.m`, `AppDelegate.h`, `MainViewController.m`, `MainViewController.h`, and `Cordova.plist` in your project
+3. **Create a new project** - you will have to grab assets from this new project
+4. **Copy** these files from the **new** project into your 1.5.0-based project folder on disk, **replacing** any old files (**backup** your files first from step 2 above):
+
+        AppDelegate.h
+        AppDelegate.m
+        MainViewController.h
+        MainViewController.m
+        Cordova.plist
+5. **Add** all the new **MainViewController** and **AppDelegate** files into your Xcode project
+6. **Copy** the **www/cordova-1.6.1.js** file from the new project into your **www** folder, and delete your **www/cordova-1.5.0.js** file
+7. **Update** the Cordova script reference in your `www/index.html` file (and any other files that contain the script reference) to point to the new **cordova-1.6.1.js** file
+8. **Add** the new `Cordova.plist` file into your project - this is because the core plugin service names needed to be changed to match the ones from Android and BlackBerry, for a unified Cordova JavaScript file (cordova-js).
+9. **Integrate** any settings, **Plugins** and **ExternalHosts** entries that you had in your **backed-up Cordova.plist** into the new `Cordova.plist`
+10. **Integrate** any project-specific code that you have in your **backed-up AppDelegate.h and AppDelegate.m** into the new AppDelegate files. Any **UIWebViewDelegate** or **CDVCommandDelegate** code in `AppDelegate.m` will need to go into MainViewController.m now (see commented out sections in that file)
+11. **Integrate** any project-specific code that you have in your **backed-up MainViewController.h and MainViewController.m** into the new MainViewController files
+12. Click on the **project icon** in the Project Navigator, select your **Project**, then select the **Build Settings** tab
+13. Enter **Compiler for C/C++/Objective-C** in the search field
+14. Select the **Apple LLVM Compiler 3.1** value
+
+## Upgrading 1.4.x projects to 1.5.0 ##
+
+1. **Install** Cordova 1.5.0
+2. **Create a new project** and run it once - you will have to grab assets from this new project
+3. **Copy** the **www/cordova-1.5.0.js** file from the new project into your **www** folder, and delete your **www/phonegap-1.4.x.js** file
+4. **Update** the Cordova script reference in your `www/index.html` file (and any other files that contain the script reference) to point to the new Cordova **cordova-1.5.0.js** file
+5. Find `PhoneGap.framework` in your Project Navigator, select it
+6. Type the **Delete** key and delete the `PhoneGap.framework` reference in the Project Navigator
+7. Type the **Option-Command-A** key combination, which should drop down a sheet to add files to your project (the **Add Files...** sheet). Make sure the **Created groups for any added folders** radio button is selected
+8. Type the **Shift-Command-G** key combination, which should drop down another sheet for you to go to a folder (the **Go to the folder:** sheet)
+9. Enter **/Users/Shared/Cordova/Frameworks/Cordova.framework** in the **Go to the folder:** sheet and then press the **Go** button
+10. Press the **Add** button in the **Add Files...** sheet
+11. Select `Cordova.framework` in the Project Navigator
+12. Type the **Option-Command-1** key combination to show the **File Inspector**
+13. Choose **Absolute Path** in the **File Inspector** for the drop-down menu for **Location**
+14. Type the **Option-Command-A** key combination, which should drop down a sheet to add files to your project (the **Add Files...** sheet). Make sure the **Created groups for any added folders** radio button is selected
+15. Type the **Shift-Command-G** key combination, which should drop down another sheet for you to go to a folder (the **Go to the folder:** sheet)
+16. Enter **~/Documents/CordovaLib/Classes/deprecated** in the **Go to the folder:** sheet and then press the **Go** button
+17. Press the **Add** button in the **Add Files...** sheet
+18. In your **AppDelegate.h, AppDelegate.m, and MainViewController.h** files - replace the whole **#ifdef PHONEGAP_FRAMEWORK** block with:
+
+        #import "CDVDeprecated.h"
+19. Click on the **project icon** in the Project Navigator, select your **Target**, then select the **Build Settings** tab
+20. Search for **Framework Search Paths**
+21. Replace the existing value with **/Users/Shared/Cordova/Frameworks**
+22. Search for **Preprocessor Macros**
+23. For the first (combined) value, replace the value with **CORDOVA_FRAMEWORK=YES**
+24. Select the **Build Phases** tab
+25. Expand **Run Script**
+26. Replace any occurrences of **PhoneGap** with **Cordova**
+27. Find your `PhoneGap.plist` file in the Project Navigator, and click on the filename once to enter name edit mode
+28. Rename `PhoneGap.plist` to `Cordova.plist`
+29. Right-click on `Cordova.plist` and choose **Open As --> Source Code**
+30. Press **Option-Command-F**, choose **Replace** from the drop-down on the top left of the Source window
+31. Enter `com.phonegap` for the Find string, and `org.apache.cordova` for the Replace string - then press the **Replace All** button
+32. Enter **PG** for the Find string, and **CDV** for the Replace string - then press the **Replace All** button
+33. Press **Command-B** to build, you will still have deprecations that you can get rid of in the future (see `CDVDeprecated.h` - replace classes in your code that use PG* to CDV*, for example)
+
+## Upgrading 1.4.0 projects to 1.4.1 ##
+
+1. **Install** Cordova 1.4.1
+2. **Make a backup** of `MainViewController.m`
+3. **Create a new project** - you will have to grab assets from this new project
+4. **Copy** the `MainViewController.m` file from the **new** project into your 1.4.0-based project folder on disk, **replacing** the old file (**backup** your files first from step 2 above).
+5. **Add** the `MainViewController.m` file into your Xcode project
+6. **Integrate** any project-specific code that you have in your backed-up `MainViewController.m` into the new file
+7. Updating the `phonegap-1.4.0.js` file is optional, nothing has changed in the JavaScript between 1.4.0 and 1.4.1
+
+## Upgrading 1.3.0 projects to 1.4.0 ##
+
+1. **Install** Cordova 1.4.0
+2. **Make a backup** of `AppDelegate.m` and `AppDelegate.h` in your project
+3. **Create a new project** - you will have to grab assets from this new project
+4. **Copy** these files from the **new** project into your 1.3.0-based project folder on disk, **replacing** any old files (**backup** your files first from step 2 above):
+
+        AppDelegate.h
+        AppDelegate.m
+        MainViewController.h
+        MainViewController.m
+        MainViewController.xib
+5. **Add** all the **MainViewController** files into your Xcode project
+6. **Copy** the **www/phonegap-1.4.0.js** file from the new project into your **www** folder, and delete your **www/phonegap-1.3.0.js** file
+7. **Update** the Cordova script reference in your `www/index.html` file (and any other files that contain the script reference) to point to the new **phonegap-1.4.0.js** file
+8. **Add** a new entry under **Plugins** in your `PhoneGap.plist` file - key is `com.phonegap.battery` and the value is **PGBattery**
+9. **Integrate** any project-specific code that you have in your **backed-up AppDelegate.h and AppDelegate.m** into the new AppDelegate files
+
+## Upgrading 1.2.0 projects to 1.3.0 ##
+
+1. **Install** Cordova 1.3.0
+2. **Make a backup** of `AppDelegate.m` and `AppDelegate.h` in your project
+3. **Create a new project** - you will have to grab assets from this new project
+4. **Copy** these files from the **new** project into your 1.2.0-based project folder on disk, **replacing** any old files (**backup** your files first from step 2 above):
+
+        AppDelegate.h
+        AppDelegate.m
+        MainViewController.h
+        MainViewController.m
+        MainViewController.xib
+5. **Add** all the **MainViewController** files into your Xcode project
+6. **Copy** the **www/phonegap-1.3.0.js** file from the new project into your **www** folder, and delete your **www/phonegap-1.2.0.js** file
+7. **Update** the Cordova script reference in your `www/index.html` file (and any other files that contain the script reference) to point to the new **phonegap-1.3.0.js** file
+8. **Add** a new entry under **Plugins** in your `PhoneGap.plist` file - key is `com.phonegap.battery` and the value is **PGBattery**
+9. **Integrate** any project-specific code that you have in your **backed-up AppDelegate.h and AppDelegate.m** into the new AppDelegate files
+
+## Upgrading 1.1.0 projects to 1.2.0 ##
+
+1. **Install** Cordova 1.2.0
+2. **Make a backup** of `AppDelegate.m` and `AppDelegate.h` in your project
+3. **Create a new project** - you will have to grab assets from this new project
+4. **Copy** these files from the **new** project into your 1.1.0-based project folder on disk, **replacing** any old files (**backup** your files first from step 2 above):
+
+        AppDelegate.h
+        AppDelegate.m
+        MainViewController.h
+        MainViewController.m
+        MainViewController.xib
+5. **Add** all the **MainViewController** files into your Xcode project
+6. **Copy** the **www/phonegap-1.2.0.js** file from the new project into your **www** folder, and delete your **www/phonegap-1.1.0.js** file
+7. **Update** the Cordova script reference in your `www/index.html` file (and any other files that contain the script reference) to point to the new **phonegap-1.2.0.js** file
+8. **Add** a new entry under **Plugins** in your `PhoneGap.plist` file - key is `com.phonegap.battery` and the value is **PGBattery**
+9. **Integrate** any project-specific code that you have in your **backed-up AppDelegate.h and AppDelegate.m** into the new AppDelegate files
+
+## Upgrading 1.0.0 projects to 1.1.0 ##
+
+1. **Install** Cordova 1.1.0
+2. **Make a backup** of `AppDelegate.m` and `AppDelegate.h` in your project
+3. **Create a new project** - you will have to grab assets from this new project
+4. **Copy** these files from the **new** project into your 1.0.0-based project folder on disk, **replacing** any old files (**backup** your files first from step 2 above):
+
+        AppDelegate.h
+        AppDelegate.m
+        MainViewController.h
+        MainViewController.m
+        MainViewController.xib
+5. **Add** all the **MainViewController** files into your Xcode project
+6. **Copy** the **www/phonegap-1.1.0.js** file from the new project into your **www** folder, and delete your **www/phonegap-1.0.0.js** file
+7. **Update** the Cordova script reference in your `www/index.html` file (and any other files that contain the script reference) to point to the new **phonegap-1.1.0.js** file
+8. **Add** a new entry under **Plugins** in your `PhoneGap.plist` file - key is `com.phonegap.battery` and the value is **PGBattery**
+9. **Integrate** any project-specific code that you have in your **backed-up AppDelegate.h and AppDelegate.m** into the new AppDelegate files
+
+## Upgrading 0.9.6 projects to 1.0.0 ##
+
+1. **Install** Cordova 1.0.0
+2. **Make a backup** of `AppDelegate.m` and `AppDelegate.h` in your project
+3. **Create a new project** - you will have to grab assets from this new project
+4. **Copy** these files from the **new** project into your 0.9.6-based project folder on disk, **replacing** any old files (**backup** your files first from step 2 above):
+
+        AppDelegate.h
+        AppDelegate.m
+        MainViewController.h
+        MainViewController.m
+        MainViewController.xib
+5. **Add** all the **MainViewController** files into your Xcode project
+6. **Copy** the **www/phonegap-1.0.0.js** file from the new project into your **www** folder, and delete your **www/phonegap-0.9.6.js** file
+7. **Update** the Cordova script reference in your `www/index.html` file (and any other files that contain the script reference) to point to the new **phonegap-1.0.0.js** file
+8. **Add** a new entry under **Plugins** in your `PhoneGap.plist` file - key is `com.phonegap.battery` and the value is **PGBattery**
+9. **Integrate** any project-specific code that you have in your **backed-up AppDelegate.h and AppDelegate.m** into the new AppDelegate files

http://git-wip-us.apache.org/repos/asf/cordova-docs/blob/17ffa3e5/docs/en/3.0.0rc1/guide/platforms/ios/webview.md
----------------------------------------------------------------------
diff --git a/docs/en/3.0.0rc1/guide/platforms/ios/webview.md b/docs/en/3.0.0rc1/guide/platforms/ios/webview.md
new file mode 100644
index 0000000..18caa27
--- /dev/null
+++ b/docs/en/3.0.0rc1/guide/platforms/ios/webview.md
@@ -0,0 +1,131 @@
+---
+license: Licensed to the Apache Software Foundation (ASF) under one
+         or more contributor license agreements.  See the NOTICE file
+         distributed with this work for additional information
+         regarding copyright ownership.  The ASF licenses this file
+         to you 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.
+---
+
+# iOS WebViews
+
+Beginning with Cordova 1.4, you can use Cordova as a component in your
+iOS applications. This component is code-named 'Cleaver'.
+
+New Cordova-based applications created using the Xcode template
+provided in Cordova 1.4 or greater use Cleaver. (The template is
+Cleaver's reference implementation.)
+
+Cordova 2.0.0 and subsequent versions only support the sub-project
+based Cleaver implementation.
+
+## Prerequisites
+
+1. **Cordova 2.3.0** or greater
+2. **Xcode 4.5** or greater
+3. `config.xml` file (from a newly created iOS project)
+
+## Adding Cleaver to your Xcode project (CordovaLib sub-project)
+
+1. **Download and extract the Cordova source** to a **permanent folder location** on your hard drive (say to `~/Documents/Cordova`)
+2. **Quit Xcode** if it is running.
+3. **Navigate** to the directory where you put the downloaded source above, using **Terminal.app**.
+4. **Copy** the `config.xml` file into your project folder on disk (see **Prerequisites** above)
+5. **Drag and drop** the `config.xml` file into the Project Navigator of Xcode
+6. **Choose** the **Create groups for any added folders** radio button and press **Finish**
+7. **Drag and drop** the `CordovaLib.xcodeproj` file into the Project Navigator of Xcode (from the permanent folder location above, and it should be in the CordovaLib sub-folder)
+8. Select `CordovaLib.xcodeproj` in the Project Navigator
+9. Type the **Option-Command-1** key combination to show the **File Inspector**
+10. Choose **Relative to Group** in the **File Inspector** for the drop-down menu for **Location**
+11. Select the **project icon** in the Project Navigator, select your **Target**, then select the **Build Settings** tab
+12. Add `-all_load` and `-Obj-C` for the **Other Linker Flags** value
+13. Click on the **project icon** in the Project Navigator, select your **Target**, then select the **Build Phases** tab
+14. Expand **Link Binaries with Libraries**
+15. Select the **+** button, and add these **frameworks** (and optionally in the Project Navigator, **move** them under the Frameworks group):
+
+        AddressBook.framework
+        AddressBookUI.framework
+        AudioToolbox.framework
+        AVFoundation.framework
+        CoreLocation.framework
+        MediaPlayer.framework
+        QuartzCore.framework
+        SystemConfiguration.framework
+        MobileCoreServices.framework
+        CoreMedia.framework
+
+16. Expand **Target Dependencies** - the top box labeled like this if you have multiple boxes!
+17. Select the **+** button, and add the `CordovaLib` build product
+18. Expand **Link Binaries with Libraries** - the top box labeled like
+    this if you have multiple boxes!
+19. Select the **+** button, and add `libCordova.a`
+20. Set the Xcode preference **Xcode Preferences &rarr; Locations &rarr; Derived Data &rarr; Advanced...** to **Unique**
+21. Select the **project icon** in the Project Navigator, select your **Target**, then select the **Build Settings** tab
+22. Search for **Header Search Paths**. For that setting, add these three values below (with quotes):
+
+        "$(TARGET_BUILD_DIR)/usr/local/lib/include"        
+        "$(OBJROOT)/UninstalledProducts/include"
+        "$(BUILT_PRODUCTS_DIR)"
+
+    With **Cordova 2.1.0**, CordovaLib has been upgraded to use **Automatic Reference Counting (ARC)**. You don't need to upgrade to **ARC** to use CordovaLib, but if you want to upgrade your project to use **ARC**, please use the Xcode migration wizard from the menu: **Edit &rarr; Refactor &rarr; Convert to Objective-C ARC...**, **de-select libCordova.a**, then run the wizard to completion.
+
+## Using CDVViewController in your code
+
+1. Add this **header**:
+
+        #import <Cordova/CDVViewController.h>
+
+2. Instantiate a **new** `CDVViewController`, and **retain it somewhere** (e.g. to a property in your class):
+
+        CDVViewController* viewController = [CDVViewController new];
+
+3. (_OPTIONAL_) Set the `wwwFolderName` property (defaults to `www`):
+
+        viewController.wwwFolderName = @"myfolder";
+
+4. (_OPTIONAL_) Set the start page in your config.xml, the `<content>` tag.
+
+        <content src="index.html" />
+
+    OR
+
+        <content src="http://apache.org" />
+
+5. (_OPTIONAL_) Set the `useSplashScreen` property (defaults to `NO`):
+
+        viewController.useSplashScreen = YES;
+
+6. Set the **view frame** (always set this as the last property):
+
+        viewController.view.frame = CGRectMake(0, 0, 320, 480);
+
+7. **Add** Cleaver to your view:
+
+        [myView addSubview:viewController.view];
+
+## Adding your HTML, CSS and JavaScript assets
+
+1. Create a **new folder** in your project **on disk**, `www` for example.
+2. Put your **HTML, CSS and JavaScript** assets into this folder.
+3. **Drag and drop** the folder into the Project Navigator of Xcode.
+4. **Choose** the **Create folder references for any added folders** radio button.
+5. **Set the appropriate `wwwFolderName` and `startPage` properties** for the folder you created in **(1)** or use the defaults (see previous section) when you instantiate the `CDVViewController`.
+
+        /*
+         if you created a folder called 'myfolder' and
+         you want the file 'mypage.html' in it to be
+         the startPage
+        */
+        viewController.wwwFolderName = @"myfolder";
+        viewController.startPage = @"mypage.html"
+

http://git-wip-us.apache.org/repos/asf/cordova-docs/blob/17ffa3e5/docs/en/3.0.0rc1/guide/platforms/tizen/index.md
----------------------------------------------------------------------
diff --git a/docs/en/3.0.0rc1/guide/platforms/tizen/index.md b/docs/en/3.0.0rc1/guide/platforms/tizen/index.md
new file mode 100644
index 0000000..47130f0
--- /dev/null
+++ b/docs/en/3.0.0rc1/guide/platforms/tizen/index.md
@@ -0,0 +1,112 @@
+---
+license: Licensed to the Apache Software Foundation (ASF) under one
+         or more contributor license agreements.  See the NOTICE file
+         distributed with this work for additional information
+         regarding copyright ownership.  The ASF licenses this file
+         to you 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.
+---
+
+# Tizen Platform Guide
+
+This guide describes how to set up your SDK development environment to
+deploy Cordova apps for devices running the Tizen operating system.
+
+## Requirements and Support
+
+The Tizen SDK requires Linux Ubuntu 10.04/10.10/11.04/11.10 (32-bit),
+or Windows XP SP3/7 (32-bit).
+
+Developers should use the `cordova` utility in conjunction with
+the Tizen SDK.  See The Command-line Interface for information
+how to install it, add projects, then build and deploy a project.
+
+## Install the SDK
+
+Download the Tizen SDK from
+[tizen.org](https://developer.tizen.org/sdk).
+
+<!--
+
+- (optional) Install Tizen Cordova template projects: copy the
+  `/templates` directory content into the Tizen Eclipse IDE web
+  templates directory (e.g:
+  `/home/my_username/tizen-sdk/IDE/Templates/web`).
+
+- __Method #2: Use Tizen Eclipse IDE Cordova Tizen project templates__
+    - Launch Tizen Eclipse IDE
+    - Select  __File &rarr; New &rarr; Tizen Web Project__
+    - Select __User Template__ and __User defined__ items
+    - Select one of the Tizen Cordova template (e.g: __CordovaBasicTemplate__)
+    - Fill the __Project name__ and its target __Location__
+
+    ![](img/guide/platforms/tizen/project_template.png)
+
+    - Click __Finish__
+
+    ![](img/guide/platforms/tizen/project_explorer.png)
+
+    - Your project should now appear in the __Project Explorer__ view
+
+-->
+
+## Open a Project in the SDK
+
+1. Launch the Tizen Eclipse IDE.
+2. Select __File &rarr; Import &rarr; Tizen Web Project__:
+
+   ![](img/guide/platforms/tizen/import_project.png)
+
+3. Press __Next__.
+4. Make sure __Select root directory__ is checked.
+5. Make sure __Copy projects into workspace__ is checked.
+6. Press __Browse__ and select the Cordova Tizen `samples` project directory (such as `/cordova-basic`):
+
+   ![](img/guide/platforms/tizen/import_widget.png)
+
+7. Press __Finish__. Your project should now be imported and appear in
+   the __Project Explorer__ view:
+
+   ![](img/guide/platforms/tizen/project_explorer.png)
+
+To rebuild the project, right-click in the __Project Explorer__ view
+and Select __Build Project__:
+
+![](img/guide/platforms/tizen/build_project.png)
+
+A widget package file such as _hello.wgt_ should generate in the
+project's root directory.
+
+## Deploy to Emulator
+
+Right-click the project in the __Project Explorer__ view and select
+__Run As &rarr; Tizen Web Simulator Application__:
+
+![](img/guide/platforms/tizen/runas_web_sim_app.png)
+
+## Deploy to Device
+
+* Make sure that the target device is properly launched, connected and
+  configured. Its __Date and Time__ settings must be set correctly.
+
+* Use the __Connection Explorer__ view to select the application
+  deployment target: __Window &rarr; Show View &rarr; Connection
+  Explorer__.
+
+  ![](img/guide/platforms/tizen/connection_explorer.png)
+
+* Right-click the project in the __Project Explorer__ view, then
+  select __Run As & rarr; Tizen Web Application__:
+
+  ![](img/guide/platforms/tizen/runas_web_app.png)
+