cordova-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From rakatyal <...@git.apache.org>
Subject [GitHub] cordova-docs pull request: CB-10389: Turning config.xml documentat...
Date Tue, 02 Feb 2016 22:04:45 GMT
Github user rakatyal commented on a diff in the pull request:

    https://github.com/apache/cordova-docs/pull/463#discussion_r51643532
  
    --- Diff: www/docs/en/dev/config_ref/index.md ---
    @@ -39,222 +39,357 @@ Note that before version 3.3.1-0.2.0, the file existed at `app/www/config.xml`,
     and that having it here is still supported.
     
     When using the CLI to build a project, versions of this file are
    -passively copied into various `platforms/` subdirectories, for example:
    +passively copied into various `platforms/` subdirectories.
    +For example:
     
             app/platforms/ios/AppName/config.xml
             app/platforms/blackberry10/www/config.xml
             app/platforms/android/res/xml/config.xml
     
    -This section details global and cross-platform configuration options.
    -See the following sections for platform-specific options:
    -
    -- [iOS Configuration](../guide/platforms/ios/config.html)
    -- [Android Configuration](../guide/platforms/android/config.html)
    -- [BlackBerry 10 Configuration](../guide/platforms/blackberry10/config.html)
    -
     In addition to the various configuration options detailed below, you
     can also configure an application's core set of images for each target
     platform. See [Icons and Splash Screens](images.html) for more information.
     
    -## Core Configuration Elements
    -
    -This example shows the default `config.xml` generated by the CLI's
    -`create` command, described in [The Command-Line Interface](../guide/cli/index.html):
    -
    -        <widget id="com.example.hello" version="0.0.1">
    -            <name>HelloWorld</name>
    -            <description>
    -                A sample Apache Cordova application that responds to the deviceready
event.
    -            </description>
    -            <author email="dev@callback.apache.org" href="http://cordova.io">
    -                Apache Cordova Team
    -            </author>
    -            <content src="index.html" />
    -            <access origin="*" />
    -        </widget>
    +# widget
    +   Root element of the config.xml document.
    +    
    +   Attributes(type) | Description
    +   ---------------- | ------------
    +   id(string) | *Required* <br/> Specifies the app's reverse-domain identifier,
and the `version` its full version number expressed in major/minor/patch notation.
    +   version(string) | *Required* <br/> Full version number expressed in major/minor/patch
notation.
    +   versionCode(string) | **Platforms supported: Android** <br/> Alternative version
for Android.
    +   CFBundleVersion(string) |  **Platforms supported: iOS** <br/> Alternative version
for iOS.  
    +   packageVersion(string) |   **Platforms supported: Windows** <br/> Alternative
version for Windows.
    +   packageName(string) | *Default: Cordova.Example* <br/> **Platforms supported:
Windows** <br/> Package name for Windows.
    +   xmlns(string) | *Required* <br/> Namespace for the config.xml document.
    +   xmlns:cdv(string) | *Required* <br/> Namespace prefix.
    +    
    +   Examples:
     
    -The following configuration elements appear in the top-level
    -`config.xml` file, and are supported across all supported Cordova
    -platforms:
    +    <widget id="io.cordova.hellocordova" version="0.0.1" xmlns="http://www.w3.org/ns/widgets"
xmlns:cdv="http://cordova.apache.org/ns/1.0">
    +    </widget>
     
    -- The `<widget>` element's `id` attribute provides the app's
    -  reverse-domain identifier, and the `version` its full version number
    -  expressed in major/minor/patch notation.
    +    <!-- Android -->
    +    <widget versionCode="0.1.3">
    +    </widget>
     
    -  The widget tag can also have attributes that specify alternative versions,
    -  namely `versionCode` for Android, `CFBundleVersion` for iOS, and 
    -  `packageVersion` for Windows. See the Additional Versioning section below 
    -  for details.
    +    <!-- iOS -->
    +    <widget CFBundleVersion="0.1.3">
    +    </widget>
     
    -- The `<name>` element specifies the app's formal name, as it appears
    -  on the device's home screen and within app-store interfaces.
    +    <!-- Windows -->
    +    <widget packageVersion="0.1.3">
    +    </widget>
     
    -- The `<description>` and `<author>` elements specify metadata and
    -  contact information that may appear within app-store listings.
     
    -- The optional `<content>` element defines the app's starting
    -  page in the top-level web assets directory. The default value is
    -  `index.html`, which customarily appears in a project's top-level
    -  `www` directory.
    +## name
    +   Specifies the app's formal name, as it appears on the device's home screen and within
app-store interfaces.
     
    -- `<access>` elements define the set of external domains the app is
    -  allowed to communicate with. The default value shown above allows
    -  it to access any server. See the Domain [Whitelist Guide](../guide/appdev/whitelist/index.html)
for details.
    +   Examples:
     
    -- The `<preference>` tag sets various options as pairs of
    -  `name`/`value` attributes. Each preference's `name` is
    -  case-insensitive.  Many preferences are unique to specific
    -  platforms, as listed at the top of this page. The following sections
    -  detail preferences that apply to more than one platform.
    +    <widget ...>
    +        <name>HelloCordova</name>
    +    </widget>
    +    
    +## description
    +   Specifies metadata that may appear within app-store listings.
     
    -### Additional Versioning
    +   Examples:
    +   
    +    <widget ...>
    +        <description>A sample Apache Cordova application</description>
    +    </widget>
     
    -Android, iOS, and Windows support a second version string (or number) in 
    -addition to the one visible in app stores:
    +    
    +## author
    +   Specifies contact information that may appear within app-store lisitngs.
    +   
    +   Attributes(type) | Description
    +   ----------------- | ------------
    +   email(string) | *Required* <br/> Email of the author.
    +   href(string) | *Required* <br/> Website of the author.
     
    -- [versionCode](http://developer.android.com/tools/publishing/versioning.html)
    -  for Android
    -- [CFBundleVersion](http://stackoverflow.com/questions/4933093/cfbundleversion-in-the-info-plist-upload-error)
    -  for iOS
    -- [packageVersion](https://msdn.microsoft.com/en-us/library/windows/apps/br211441.aspx)
    -  for Windows
    +   Examples:
     
    -Below is an example that explicitly sets these properties:
    +    <widget ...>
    +        <author email="dev@cordova.apache.org" href="http://cordova.io"></author>
    +    </widget>
     
    -        <widget id="io.cordova.hellocordova"
    -          version="0.0.1"
    -          android-versionCode="7"
    -          ios-CFBundleVersion="3.3.3"
    -          windows-packageVersion="1.0.1.2">
    +    
    +## content
    +   Optional.
    +   Defines the app's starting page in the top-level web assets directory. The default
value is index.html, which customarily
    +   appears in a project's top-level www directory.
    +   
    +   Attributes(type) | Description
    +   ----------------- | ------------
    +   src(string) | *Required* <br/> Defines the app's starting page in the top-level
web assets directory. The default value is index.html, which customarily
    +   appears in a project's top-level www directory.
    +
    +   Examples:
    +
    +    <widget ...>
    +        <content src="startPage.html"></content>
    +    </widget>
     
    -If alternative version is not specified, the following
    -defaults will be used:
    +    
    +## access
    +   Defines the set of external domains the app is allowed to communicate with. The default
value shown above allows it to access any server. 
    +   See the Domain [Whitelist Guide](../guide/appdev/whitelist/index.html) for details.

     
    -        // assuming version = MAJOR.MINOR.PATCH-whatever
    -        versionCode = PATCH + MINOR * 100 + MAJOR * 10000
    -        CFBundleVersion = "MAJOR.MINOR.PATCH"
    -        packageVersion = "MAJOR.MINOR.PATCH.0"
    +   Attributes(type) | Description
    +   ----------------- | ------------
    +   origin(string) | *Required* <br/> Defines the set of external domains the app
is allowed to communicate with. 
    +   The default value shown above allows it to access any server. 
    +   See the Domain [Whitelist Guide](../guide/appdev/whitelist/index.html) for details.

     
    -## Global Preferences
    +   Examples:
     
    -The following global preferences apply to all platforms:
    +    <widget ...>
    +        <access origin="*"></content>
    +    </widget>
    +    
    +    <widget ...>
    +        <access origin="http://google.com"></content>
    +    </widget>
    +    
    +    
    +## allow-navigation
    +   Controls which URLs the WebView itself can be navigated to. Applies to top-level navigations
only.
    +   
    +   Attributes(type) | Description
    +   ----------------- | ------------
    +   href(string) | *Required* <br/> Defines the set of external domains the WebView
is allowed to navigate to. 
    +   See the cordova-plugin-whitelist [cordova-plugin-whitelist](https://github.com/apache/cordova-plugin-whitelist#navigation-whitelist)
for details.
    +   
    +   Examples:
    +   
    +    <!-- Allow links to example.com -->
    +    <allow-navigation href="http://example.com/*" />
    +
    +    <!-- Wildcards are allowed for the protocol, as a prefix to the host, or as a
suffix to the path -->
    +    <allow-navigation href="*://*.example.com/*" />
    +   
    +## allow-intent
    +   Controls which URLs the app is allowed to ask the system to open. By default, no external
URLs are allowed.
    +   
    +   Attributes(type) | Description
    +   ----------------- | ------------
    +   href(string) | *Required* <br/> Defines which URLs the app is allowed to ask
the system to open. 
    +   See the cordova-plugin-whitelist [cordova-plugin-whitelist](https://github.com/apache/cordova-plugin-whitelist#intent-whitelist)
for details.  
    +  
    +   Examples:
    +   
    +    <allow-intent href="http://*/*" />
    +    <allow-intent href="https://*/*" />
    +    <allow-intent href="tel:*" />
    +    <allow-intent href="sms:*" />
    +  
    +## engine
    +   Specifies what platform to restore during a prepare. For more details, see the Platforms
& Plugins Version Management.
    +   
    +   Attributes(type) | Description
    +   ----------------- | ------------
    +   name(string) | *Required* <br/> Name of the platform to be restored
    +   spec(string) | *Required* <br/> Version of the platform to be restored
    +   
    +   Examples:
    +
    +    <engine name="android" spec="^4.0.0" />
    +    
    +## preference
    +   Sets various optinos as pairs of name/value attributes. Each preference's name is
case-insensitive. Many preferences are unique to specific platforms,
    +   and will be indicated as such.  
    +
    +   Attributes(type) | Description
    +   ----------------- | ------------
    +   AllowInlineMediaPlayback(boolean) | *Default: false* <br/> **Platforms supported:
iOS** <br/> Set to true to allow HTML5 media playback to appear inline within the screen
layout, using browser-supplied controls rather than native controls. For this to work, add
the webkit-playsinline attribute to any ```<video>``` elements. 
    +   AndroidLaunchMode(string) | *Default: singleTop* <br/> Allowed values: standard,
singleTop, singleTask, singleInstance <br/> **Platforms supported: Android** <br/>
Sets the Activity android:launchMode attribute. This changes what happens when the app is
launched from app icon or intent and is already running. 
    +   AppendUserAgent(string) | **Platforms supported: Android** <br/> If set, the
value will append to the end of old UserAgent of webview. When using with OverrideUserAgent,
this value will be ignored.
    +   AppendUserAgent(string) | **Platforms supported: iOS** <br/> If set, the value
will append to the end of old UserAgent of webview. When using with OverrideUserAgent, this
value will be ignored.
    +   BackgroundColor(string) | **Platforms supported: Android, BlackBerry** <br/>
Supports a four-byte hex value, with the first byte representing the alpha channel, and standard
RGB values for the following three bytes. 
    +   BackupWebStorage(string) | *Default: cloud* <br/> Allowed values: none, local,
cloud. <br/> **Platforms supported: iOS** <br/>  Set to cloud to allow web storage
data to backup via iCloud. Set to local to allow only local backups via iTunes sync. Set to
none prevent web storage backups.
    +   ChildBrowser(string) | *Default: enable* <br/> **Platforms supported: BlackBerry**
<br/> Disables child browser windows. By default, apps launch a secondary browser window
to display resources accessed via window.open() or by specifying a _blank anchor target. Specify
disable to override this default behavior.
    +   CordovaWebViewEngine(string) | *Default: CDVUIWebViewEngine* <br/> **Platforms
supported: iOS** <br/> This sets the WebView engine plugin to be used to render the
host app. The plugin must conform to the CDVWebViewEngineProtocol protocol. The 'value' here
should match the 'feature' name of the WebView engine plugin that is installed. This preference
usually would be set by the WebView engine plugin that is installed, automatically.
    +   DefaultVolumeStream(string) | *Default: default* <br/> **Platforms supported:
Android**<br/> Added in cordova-android 3.7.0, This preference sets which volume the
hardware volume buttons link to. By default this is "call" for phones and "media" for tablets.
Set this to "media" to have your app's volume buttons always change the media volume. Note
that when using Cordova's media plugin, the volume buttons will dynamically change to controlling
the media volume when any Media objects are active.
    +   DisallowOverscroll(boolean) | *Default: false* <br/> **Platforms supported:
iOS, Android** <br/> Set to **true** if you don't want the interface to display any
feedback when users scroll past the beginning or end of content. On iOS, overscroll gestures
cause content to bounce back to its original position. on Android, they produce a more subtle
glowing effect along the top or bottom edge of the content. <br/>
    +   EnableViewportScale(boolean) | *Default: false* <br/>  **Platforms supported:
iOS** <br/> Set to true to allow a viewport meta tag to either disable or restrict the
range of user scaling, which is enabled by default. Place a viewport such as the following
in the HTML to disable scaling and fit content flexibly within the rendering WebView: <br/>
```<meta name='viewport' content='width=device-width, initial-scale=1, user-scalable=no'
/>```
    +   ErrorUrl(URL) | *Default: null* <br/> **Platforms supported: Android** <br/>
If set, will display the referenced page upon an error in the application instead of a dialog
with the title "Application Error".
    +   ErrorUrl(string) | **Platforms supported: iOS** <br/> If set, will display the
referenced local page upon an error in the application.
    +   FullScreen(boolean) | *Default: false* <br/> Allows you to hide the status bar
at the top of the screen.
    +   GapBetweenPages(float) | *Default: 0* <br/> **Platforms supported: iOS** <br/>
The size of the gap, in points, between pages.
    +   HideKeyboardFormAccessoryBar(boolean) | *Default: false* <br/> **Platforms supported:
BlackBerry** <br/> set to true to hide the additional toolbar that appears above the
keyboard, helping users navigate from one form input to another.
    +   InAppBrowserStorageEnabled (boolean) | *Default: true* <br/> **Platforms supported:
Android** <br/> Controls whether pages opened within an InAppBrowser can access the
same localStorage and WebSQL storage as pages opened with the default browser.
    +   KeepRunning(boolean) | *Default: true* <br/> **Platforms supported: Android**
<br/> Determines whether the application stays running in the background even after
a [pause](../../../cordova/events/events.pause.html) event fires. Setting this to false does
not kill the app after a [pause](../../../cordova/events/events.pause.html) event, but simply
halts execution of code within the cordova webview while the app is in the background.
    +   KeyboardDisplayRequiresUserAction(boolean) | *Default: true* <br/> **Platforms
supported: iOS** <br/> Set to false to allow the keyboard to appear when calling focus()
on form inputs.
    +   LoadUrlTimeoutValue(number in milliseconds) | *Default: 20000, 20 seconds* <br/>
**Platforms supported: Android** <br/> hen loading a page, the amount of time to wait
before throwing a timeout error. 
    +   LoadingDialog(string) | *Default: null* <br/> **Platforms supported: Android**
<br/> If set, displays a dialog with the specified title and message, and a spinner,
when loading the first page of an application. The title and message are separated by a comma
in this value string, and that comma is removed before the dialog is displayed.
    +   LogLevel(string) | *Default: ERROR* <br/> Allowed values: ERROR, WARN, INFO,
DEBUG, VERBOSE <br/> **Platforms supported: Android** <br/> Sets the minimum log
level through which log messages from your application will be filtered.
    +   MediaPlaybackAllowsAirPlay(boolean) | *Default: true* <br/> **Platforms supported:
iOS** <br/> Set to false to prevent Air Play from being used in this view. Available
in default UIWebView and WKWebView.
    +   MediaPlaybackRequiresUserAction(boolean) | *Default: false* <br/> **Platforms
supported: iOS** <br/> Set to true to prevent HTML5 videos or audios from playing automatically
with the autoplay attribute or via JavaScript.
    +   Min/Max UAP(Regex) | Allowed values: **/(Microsoft.+? &#124; Windows.+?)-(MinVersion
&#124; MaxVersionTested)/i** <br/> **Platforms supported: Windows** <br/>
Sets the min/max UAP versions for Windows. If nothing is specified, Windows.Universal at version
10.0.10240.0 will be used.
    +   Orientation(string) | *Default: default* <br/> Allowed values: default, landscape,
portait <br/> Allows you to lock orientation and prevent the interface from rotating
in response to changes in orientation. <br/> **NOTE:** The default value means Cordova
will strip the orientation preference entry from the platform's manifest/configuration file
allowing the platform to fallback to its default behavior. For iOS, to specify both portrait
& landscape mode you would use the platform specific value 'all'.
    +   OverrideUserAgent(string) | **Platforms supported: Android** <br/> If set, the
value will replace the old UserAgent of webview. It is helpful to identify the request from
app/browser when requesting remote pages. Use with caution, this may causes compitiable issue
with web servers. For most cases, use AppendUserAgent instead.
    +   OverrideUserAgent(string) | **Platforms supported: iOS** <br/> If set, the value
will replace the old UserAgent of webview. It is helpful to identify the request from app/browser
when requesting remote pages. Use with caution, this may causes compitiable issue with web
servers. For most cases, use AppendUserAgent instead.
    --- End diff --
    
    Repeated. 


---
If your project is set up for it, you can reply to this email and have your
reply appear on GitHub as well. If your project does not have this feature
enabled and wishes so, or if the feature is enabled but not working, please
contact infrastructure at infrastructure@apache.org or file a JIRA ticket
with INFRA.
---

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


Mime
View raw message