cordova-commits mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From purplecabb...@apache.org
Subject [1/3] docs commit: Added documentation for Windows 10 support to the Windows topic.
Date Thu, 21 May 2015 17:38:46 GMT
Repository: cordova-docs
Updated Branches:
  refs/heads/master aada385e0 -> 50f1d881c


Added documentation for Windows 10 support to the Windows topic.


Project: http://git-wip-us.apache.org/repos/asf/cordova-docs/repo
Commit: http://git-wip-us.apache.org/repos/asf/cordova-docs/commit/3ef49e70
Tree: http://git-wip-us.apache.org/repos/asf/cordova-docs/tree/3ef49e70
Diff: http://git-wip-us.apache.org/repos/asf/cordova-docs/diff/3ef49e70

Branch: refs/heads/master
Commit: 3ef49e70b88be4b56dd1b812f08aa42c69cdfc6c
Parents: 45f14f0
Author: Rob Paveza <Rob.Paveza@microsoft.com>
Authored: Wed Mar 18 16:24:34 2015 -0700
Committer: Rob Paveza <Rob.Paveza@microsoft.com>
Committed: Wed Mar 18 16:24:34 2015 -0700

----------------------------------------------------------------------
 docs/en/edge/guide/platforms/win8/index.md      | 54 +++++++++-----
 .../edge/guide/platforms/win8/win10-support.md  | 78 ++++++++++++++++++++
 2 files changed, 115 insertions(+), 17 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/cordova-docs/blob/3ef49e70/docs/en/edge/guide/platforms/win8/index.md
----------------------------------------------------------------------
diff --git a/docs/en/edge/guide/platforms/win8/index.md b/docs/en/edge/guide/platforms/win8/index.md
index 52ff85a..f91641c 100644
--- a/docs/en/edge/guide/platforms/win8/index.md
+++ b/docs/en/edge/guide/platforms/win8/index.md
@@ -20,13 +20,13 @@ license: Licensed to the Apache Software Foundation (ASF) under one
 # Windows Platform Guide
 
 This guide shows how to set up your SDK development environment to build 
-and deploy Cordova apps for Windows 8, Windows 8.1 and Windows Phone 8.1.
-It shows how to use either shell tools to generate and build apps, or 
-the cross-platform Cordova CLI discussed in The Command-Line Interface.
-(See the Overview for a comparison of these development options.) This
-section also shows how to modify Cordova apps within Visual Studio.
-Regardless of which approach you take, you need to install the 
-Visual Studio SDK, as described below.
+and deploy Cordova apps for Windows 8, Windows 8.1, Windows Phone 8.1, and 
+Windows 10 Universal App Platform.  It shows how to use either shell tools 
+to generate and build apps, or the cross-platform Cordova CLI discussed in 
+The Command-Line Interface. (See the Overview for a comparison of these 
+development options.) This section also shows how to modify Cordova apps 
+within Visual Studio. Regardless of which approach you take, you need to 
+install the Visual Studio SDK, as described below.
 
 See Upgrading Windows 8 for information on how to upgrade existing
 Windows 8 Cordova projects.
@@ -49,21 +49,28 @@ installation disk or an _ISO_ disk image file.
 
 To develop apps for Windows 8.0 only:
 
-- Windows 8.0 or 8.1, 32 or 64-bit _Home_, _Pro_, or _Enterprise_
+- Windows 8.0, 8.1 or 10, 32 or 64-bit _Home_, _Pro_, or _Enterprise_
   editions, along with
-  [Visual Studio 2012 Express](http://www.visualstudio.com/downloads).
+  [Visual Studio 2012 Express](http://www.visualstudio.com/downloads) 
+  or Visual Studio 2013.  Visual Studio 2015 is not able to build Windows 8.0 apps.
 
-To develop apps for all platforms (Windows 8.0, Windows 8.1 and Windows Phone 8.1):
+To develop apps for Windows 8.0 and 8.1 (including Windows Phone 8.1):
 
-- Windows 8.1, 32 or 64-bit _Home_, _Pro_, or _Enterprise_ editions,
+- Windows 8.1 or Windows 10, 32 or 64-bit _Home_, _Pro_, or _Enterprise_ editions,
   along with 
   [Visual Studio 2013 Express](http://www.visualstudio.com/downloads)
   or higher. An evaluation version of Windows 8.1 Enterprise is
   available from the
   [Microsoft Developer Network](http://msdn.microsoft.com/en-US/evalcenter/jj554510).
 
-Apps compiled under Windows 8.1 do _not_ run under Windows 8.0. Apps
-compiled under Windows 8.0 are forward-compatible with 8.1.
+To develop apps for Windows 10:
+
+- Windows 8.1 or Windows 10 Technical Preview 2, 32- or 64-bit, along with
+  [Visual Studio 2015 CTP6](http://www.visualstudio.com/preview) or higher.
+
+App compatibility is determined by the OS that the app targeted.  Apps are forwardly-compatible
+but not backwardly-compatible, so an app targeting Windows 8.1 cannot run on 8.0, but 
+an app built for 8.0 can run on 8.1.
 
   <!-- 64-bit necessary? Pro necessary? ELSE still recommended for parallel WP dev -->
 
@@ -81,9 +88,9 @@ Windows development environment on a Mac:
 
 - [VMWare Fusion](http://msdn.microsoft.com/en-US/library/windows/apps/jj945426)
 
-- [Parallels Desktop](http://msdn.microsoft.com/en-US/library/windows/apps/jj945424),
+- [Parallels Desktop](http://msdn.microsoft.com/en-US/library/windows/apps/jj945424)
   
-- [Boot Camp](http://msdn.microsoft.com/en-US/library/windows/apps/jj945423).
+- [Boot Camp](http://msdn.microsoft.com/en-US/library/windows/apps/jj945423)
   
 ## Using Cordova Shell Tools
 
@@ -109,11 +116,16 @@ Plugins.
 
 ## Install the SDK
 
-Install the _Ultimate_, _Premium_, or _Professional_ 2013 editions of
-[Visual Studio](http://www.visualstudio.com/downloads).
+Install any edition of
+[Visual Studio](http://www.visualstudio.com/downloads) matching the version
+requirements listed above.  
 
 ![](img/guide/platforms/win8/win8_installSDK.png)
 
+For Windows 10, you will additionally need to download the 
+[Visual Studio Tools for Windows 10](http://www.visualstudio.com/downloads)
+in order to successfully build Windows 10 apps.
+
 ## Create a New Project
 
 At this point, to create a new project you can choose between the
@@ -167,6 +179,14 @@ added to configuration file (`config.xml`).
 Once you add this setting `build` command will start producing Windows 8.1 
 and Windows Phone 8.1 packages.
 
+### Considerations for target Windows version
+
+Windows 10 supports a new "Remote" mode for Cordova apps (and HTML apps in general). This
mode enables
+apps much more freedom with respect to use of modern web frameworks and certain types of
unsafe activity
+(such as DOM manipulation), but does so by reducing the set of capabilities your app may
use when 
+submitted to the public Windows Store.  For more information about Windows 10 and Remote
Mode, look at
+the [Cordova for Windows 10](win10-support.md.html) documentation.
+
 ## Deploy the app
 
 To deploy Windows Phone package:

http://git-wip-us.apache.org/repos/asf/cordova-docs/blob/3ef49e70/docs/en/edge/guide/platforms/win8/win10-support.md
----------------------------------------------------------------------
diff --git a/docs/en/edge/guide/platforms/win8/win10-support.md b/docs/en/edge/guide/platforms/win8/win10-support.md
new file mode 100644
index 0000000..a3195ce
--- /dev/null
+++ b/docs/en/edge/guide/platforms/win8/win10-support.md
@@ -0,0 +1,78 @@
+# Cordova for Windows 10 #
+Maybe you could instead call it "Windows 10 for Cordova."  Windows 10 has had its HTML and
JavaScript Apps platform re-engineered to bring Cordova support to the web, and to get platform
security restrictions out of your way.
+
+## Getting Started with Windows 10 ##
+Adding Windows 10 support to your app is as easy as setting your Windows target platform
version to 10.0:
+
+    <preference name="windows-target-version" value="10.0" />
+    <preference name="windows-phone-target-version" value="10.0" />
+
+When you build with these preferences both set, only a single .appx (and .appxupload) will
be built.  They will require Windows 10 at a minimum.
+
+### Understanding Remote Mode vs. Local Mode ###
+Remote Mode is a new feature of the HTML Applications for Windows platform in Windows 10.
 In Windows 8 and 8.1, HTML Applications worked in what is called "Local Mode" in Windows
10.  In Local Mode, HTML Applications have full access to the native Windows API surface and
capabilities.  In order to prevent script injection attacks which could result in leaking
personally-identifiable information due to malicious code, Local Mode disallows inline script,
and requires developers who perform DOM manipulation to do so within an explicit context (`MSApp.execUnsafeLocalFunction`).
 
+
+Remote Mode eliminates those requirements, which makes it possible to use unmodified libraries
like jQuery or AngularJS directly in your code, without any changes.  To do so, it removes
your ability to declare certain capabilities when certifying your app in the Windows Store.
 The removal of these capabilities usually doesn't prevent getting to certain functionality,
but it might require to use a different combination of APIs or tactics.  
+
+### Effect of Remote Mode on capabilities ###
+The following capabilities are unavailable when deploying your Remote Mode application to
the Windows Store:
+
+- Enterprise Authentication (`enterpriseAuthentication`)
+- Shared User Certificates (`sharedUserCertificates`)
+- Documents Library (`documentsLibrary`)
+- Music Library (`musicLibrary`)
+- Pictures Library (`picturesLibrary`)
+- Videos Library (`videosLibrary`)
+- Removable Storage (`removableStorage`)
+- Internet client/server (`internetClientClientServer`) - note that `internetClient` is still
permitted
+- Private network client/server (`privateNetworkClientServer`)
+
+Each of the library restrictions may be worked around by requesting that the user interact
with the file system via a [File Picker](https://msdn.microsoft.com/en-us/library/windows/apps/windows.storage.pickers.fileopenpicker.aspx).
 This prevents malicious injected code from arbitrarily accessing the file system.
+
+The network-related restrictions must be worked around by either using an API that doesn't
use capability checks or by brokering communication via standard internet communication channels,
such as `XMLHttpRequest` or Web Sockets.  
+
+The Enterprise Authentication and Shared User Certificates capabilities are specifically
targeted at Enterprise scenarios.  These capabilities are supported for private/enterprise-enabled
App Stores, so if you are building apps which are going to be deployed to an internal deployment
mechanism, you can still support these.  However, they are not supported for Remote Mode apps
in the public Windows Store.  When you build targeting Windows 10, if one of these capabilities
is detected in your app manifest, a warning will be displayed.
+
+## Reference ##
+
+### config.xml Preferences ###
+
+#### windows-target-version, windows-phone-target-version ####
+    <preference name="windows-target-version" value="10.0" />
+    <preference name="windows-phone-target-version" value="10.0" />
+
+*At least one is required.*
+
+These preferences identify the version of Windows or Windows Phone you would like your app
package to target. 
+
+**Valid Values**
+
+- `10.0`, `UAP`: Builds for Windows 10 Universal App Platform
+- `8.1`: Builds for Windows 8.1 or Windows Phone 8.1
+- `8.0`: Build for Windows 8.0.  Not valid for Windows Phone (use the **wp8** Cordova platform
instead)
+
+**Scenarios**
+
+If you are targeting Windows 10 only, you only need to have a single `windows-target-version`
setting in your config.xml file.  
+
+#### {SDK}-MinVersion, {SDK}-MaxVersionTested ####
+*Optional*
+
+    <preference name="Windows.Universal-MinVersion" value="10.0.0.0" />
+    <preference name="Windows.Mobile-MinVersion" value="10.0.9927.0" />
+    <preference name="Windows.Mobile-MaxVersionTested" value="10.0.10031.0" />
+    <preference name="Microsoft.Band-MinVersion" value="10.0.11.0" />
+
+These preferences identify which ecosystems (including but not limited to Windows Universal,
Windows Mobile, or Xbox) and their min/max versions they are compatible with.  They still
require that the platforms have support for the Universal App Platform (so Windows 10 as the
base OS).  However, these may indicate that the application is aware of particular functionality
that may only be available on certain devices (such as game streaming on Xbox).
+
+**Valid Values**
+
+There are three parts to each value: the **SDK**, the **version restriction**, and the **version
value**.  These preferences are detected by beginning with `Windows` or `Microsoft` and ending
in `-MinVersion` or `-MaxVersionTested`:
+
+- The **SDK** defines what specialized platform you want to target.  The default is `Windows.Universal`.
 Valid values for these are defined in the AppxManifest schema, in the `Package/Depednencies/TargetPlatform`
elements.
+- The **version restriction** defines application compatibility rules.  For example, if the
`-MinVersion` is set to 10.1.0.0, then OS versions which don't support at least 10.1.0.0 of
the corresponding SDK won't be able to load it.
+	- `-MinVersion` specifies the minimum version of the SDK required
+	- `-MaxVersionTested` specifies the highest-tested version of the SDK.  If a new version
of the corresponding SDK is released, it will run in compatibility mode for the specified
version.
+- The **version value** is a 4-integer tuple in the form of *major.minor.build.qfe*. 
+
+If no preferences of these types are specified in your config.xml file, then Windows.Universal
version 10.0.0.0 will be chosen by default.
\ No newline at end of file


---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@cordova.apache.org
For additional commands, e-mail: commits-help@cordova.apache.org


Mime
View raw message