From ff339f0b966c5ca62867689a13ea713e6cb62a15 Mon Sep 17 00:00:00 2001 From: Katarina Stenstedt Date: Mon, 6 Jul 2009 10:41:17 -0700 Subject: [PATCH] AI 150335: Removed the links to wikipedia. BUG=1918247 Automated import of CL 150335 --- .../resources/res-selection-flowchart.png | Bin 0 -> 23228 bytes .../guide/topics/resources/resources-i18n.jd | 207 +++++++++--------- 2 files changed, 105 insertions(+), 102 deletions(-) create mode 100644 docs/html/guide/topics/resources/res-selection-flowchart.png diff --git a/docs/html/guide/topics/resources/res-selection-flowchart.png b/docs/html/guide/topics/resources/res-selection-flowchart.png new file mode 100644 index 0000000000000000000000000000000000000000..d738b3f0c866ef39f9b756dc08dd615798ec5400 GIT binary patch literal 23228 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 Z$(iO>E@?EQ0ek6lH?)kd*JwIE{2ztiF(?24 literal 0 HcmV?d00001 diff --git a/docs/html/guide/topics/resources/resources-i18n.jd b/docs/html/guide/topics/resources/resources-i18n.jd index 4bbb44ac5e5a2..2bcc5e33deeaa 100644 --- a/docs/html/guide/topics/resources/resources-i18n.jd +++ b/docs/html/guide/topics/resources/resources-i18n.jd @@ -37,7 +37,7 @@ PNG, and JPEG files. The XML files have very different formats depending on what they describe. This document describes what kinds of files are supported, and the syntax or format of each.

Resources are externalized from source code, and XML files are compiled into -a binary, fast loading format for efficiency reasons. Strings, likewise are compressed +a binary, fast loading format for efficiency reasons. Strings, likewise, are compressed into a more efficient storage form. It is for these reasons that we have these different resource types in the Android platform.

@@ -88,12 +88,12 @@ of any XML files.

You will create and store your resource files under the appropriate subdirectory under the res/ directory in your project. Android has a resource compiler (aapt) that compiles resources according to which -subfolder they are in, and the format of the file. Here is a list of the file +subfolder they are in, and the format of the file. Table 1 shows a list of the file types for each resource. See the Available Resources for descriptions of each type of object, the syntax, and the format or syntax of the containing file.

- +

Table 1

@@ -410,7 +410,7 @@ public class MyActivity extends Activity

Alternate Resources (for alternate languages and configurations)

-

You can supply different resources for your product according to the UI +

You can supply different resources for your application to use depending on the UI language or hardware configuration on the device. Note that although you can include different string, layout, and other resources, the SDK does not expose methods to let you specify which alternate resource set to load. Android @@ -436,7 +436,7 @@ MyApp/ Append these to the end of the resource folder name, separated by dashes. You can add multiple qualifiers to each folder name, but they must appear in the order they are listed here. For example, a folder containing drawable -resources for a fully specified configuration would look like:

+resources for a fully specified configuration would look like this:

 MyApp/
@@ -444,8 +444,7 @@ MyApp/
         drawable-en-rUS-port-160dpi-finger-keysexposed-qwerty-dpad-480x320/
 
-

More typically, you will only specify a few specific configuration options -that a resource is defined for. You may drop any of the values from the +

More typically, you will only specify a few specific configuration options. You may drop any of the values from the complete list, as long as the remaining values are still in the same order:

@@ -457,41 +456,46 @@ MyApp/ drawable-port-160dpi/ drawable-qwerty/ - +

Table 2 lists the valid folder-name qualifiers, in order of precedence. Qualifiers that are listed higher in the table take precedence over those listed lower, as described in How Android finds the best matching directory.

+

Table 2

Directory
- - - + + + - - - + + + - - + + - - + + @@ -506,6 +510,14 @@ MyApp/ + + + + + + + +
Qualifier Values
LanguageThe two letter ISO - 639-1 language code in lowercase. For example: - en, fr, es
MCC and MNCThe mobile country code and mobile network code from the SIM in the device. For example mcc310-mnc004 (U.S., Verizon brand); mcc208-mnc00 (France, Orange brand); mcc234-mnc00 (U.K., BT brand).
+
+ If the device uses a radio connection (GSM phone), the MCC will come from the SIM, and the MNC will come from the network to which the device is attached. You might sometimes use the MCC alone, for example to include country-specific legal resources in your application. If your application specifies resources for a MCC/MNC combination, those resources can only be used if both the MCC and the MNC match.
RegionThe two letter - ISO - 3166-1-alpha-2 language code in uppercase preceded by a lowercase - "r". For example: rUS, rFR, rES
Language and regionThe two letter ISO + 639-1 language code and two letter + ISO + 3166-1-alpha-2 region code (preceded by lowercase "r"). For example + en-rUS, fr-rFR, es-rES.
+
+ The codes are case-sensitive: The language code is lowercase, and the country code is uppercase. You cannot specify a region alone, but you can specify a language alone, for example en, fr, es.
Screen orientation port, land, square
Screen pixel density92dpi, 108dpi, etc.
92dpi, 108dpi, etc. When Android selects which resource files to use, it handles screen density differently than the other qualifiers. In step 1 of How Android finds the best matching directory (below), screen density is always considered to be a match. In step 4, if the qualifier being considered is screen density, Android will select the best final match at that point, without any need to move on to step 5.
Touchscreen type notouch, stylus, finger
Whether the keyboard is available to the userkeysexposed, keyshidden
keysexposed, keyshidden, keyssoft
+ If your application has specific resources that should only be used with a soft keyboard, use the keyssoft value. If no keyssoft resources are available (only keysexposed and keyshidden) and the device shows a soft keyboard, the system will use keysexposed resources.
Primary text input method nokeys, qwerty, 12key 320x240, 640x480, etc. The larger dimension must be specified first.
SDK versionThe SDK version supported by the device, for example v3. The Android 1.0 SDK is v1, the 1.1 SDK is v2, and the 1.5 SDK is v3.
(Minor version)(You cannot currently specify minor version. It is always set to 0.)

This list does not include device-specific parameters such as carrier, @@ -513,92 +525,84 @@ branding, device/hardware, or manufacturer. Everything that an application needs to know about the device that it is running on is encoded via the resource qualifiers in the table above.

-

Here are some general guidelines on qualified resource directory names:

+

All resource directories, qualified and unqualified, live under the res/ folder. Here are some guidelines on qualified resource directory names:

    -
  • Values are separated by a dash (as well as a dash after the base directory - name)
  • -
  • Values are case-sensitive (even though they must be unique across all folder - names in a case-insensitive way)
    For example,
  • -
      -
    • A portrait-specific drawable directory must be named - drawable-port, not drawable-PORT.
    • -
    • You may not have two directories named drawable-port - and drawable-PORT, even if you had intended "port" and - "PORT" to refer to different parameter values.
    • -
    -
  • Only one value for each qualifier type is supported (that is, you cannot - specify drawable-rEN-rFR/)
  • -
  • You can specify multiple parameters to define specific configurations, - but they must always be in the order listed above. - For example, drawable-en-rUS-land will apply to landscape view, - US-English devices.
  • -
  • Android will try to find the most specific matching directory for the current - configuration, as described below
  • -
  • The order of parameters listed in this table is used to break a tie in case - of multiple qualified directories (see the example given below)
  • -
  • All directories, both qualified and unqualified, live under the res/ folder. - Qualified directories cannot be nested (you cannot have res/drawable/drawable-en)
  • -
  • All resources will be referenced in code or resource reference syntax by - their simple, undecorated name. So if a resource is named this:
    -       MyApp/res/drawable-port-92dp/myimage.png
    - It would be referenced as this:
    -       R.drawable.myimage (code)
    -       @drawable/myimage (XML)
  • +
  • You can specify multiple qualifiers, separated by dashes. For example, drawable-en-rUS-land will apply to US-English + devices in landscape orientation.
  • +
  • The qualifiers must be in the order listed in Table 2 above. For example: +
      +
    • Correct: values-mcc460-nokeys/
    • +
    • Incorrect: values-nokeys-mcc460/
    • +
    +
  • +
  • Values are case-sensitive. For example, a portrait-specific drawable directory must be named + drawable-port, not drawable-PORT or drawable-Port.
  • +
  • Only one value for each qualifier type is supported. For example, if you want to use exactly the same drawable files for Spain and France, you will need two resource directories, such as drawable-rES/ and drawable-rFR/, containing identical files. You cannot + have a directory named drawable-rES-rFR/.
  • +
  • Qualified directories cannot be nested. For example, you cannot have res/drawable/drawable-en.
-

How Android finds the best matching directory

+

How resources are referenced in code

+

All resources will be referenced in code or resource reference syntax by + their simple, undecorated names. So if a resource were named this:
+      MyApp/res/drawable-port-92dpi/myimage.png
+ It would be referenced as this:
+      R.drawable.myimage (code)
+      @drawable/myimage (XML)

+

If several drawable directories are available, Android will select one of them (as described below) and load myimage.png from it.

+

How Android finds the best matching directory

Android will pick which of the various underlying resource files should be -used at runtime, depending on the current configuration. The selection process -is as follows:

- +used at runtime, depending on the current configuration of the device. The example used here assumes the following device configuration:

+
+

Locale = en-GB
+ Screen orientation = port
+ Screen pixel density = 108dpi
+ Touchscreen type = notouch
+ Primary text input method = 12key
+

+
+

Here is how Android makes the selection:

  1. - Eliminate any resources whose configuration does not match the current - device configuration. For example, if the screen pixel density is 108dpi, - this would eliminate only MyApp/res/drawable-port-92dpi/. -
    -
    -MyApp/res/drawable/myimage.png
    -MyApp/res/drawable-en/myimage.png
    -MyApp/res/drawable-port/myimage.png
    -MyApp/res/drawable-port-92dpi/myimage.png
    -
    -
    -
  2. -
  3. - Pick the resources with the highest number of matching configurations. - For example, if our locale is en-GB and orientation is port, then we - have two candidates with one matching configuration each: - MyApp/res/drawable-en/ and MyApp/res/drawable-port/. - The directory MyApp/res/drawable/ is eliminated because - it has zero matching configurations, while the others have one matching - configuration. -
    -
    -MyApp/res/drawable/myimage.png
    -MyApp/res/drawable-en/myimage.png
    -MyApp/res/drawable-port/myimage.png
    -
    -
    -
  4. -
  5. - Pick the final matching file based on configuration precedence, which - is the order of parameters listed in the table above. That is, it is - more important to match the language than the orientation, so we break - the tie by picking the language-specific file, MyApp/res/drawable-en/. -
    -
    MyApp/res/drawable-en/myimage.png
    -MyApp/res/drawable-port/myimage.png
    -
    -
    -
  6. + Eliminate resource files that contradict the + device configuration. For example, assume that the following resource directories are available for drawables. The drawable-fr-rCA/ directory will be eliminated, because it contradicts the locale of the device.
    +
    MyApp/res/drawable/
    +MyApp/res/drawable-en/
    +MyApp/res/drawable-fr-rCA/
    +MyApp/res/drawable-en-port/
    +MyApp/res/drawable-en-notouch-12key/
    +MyApp/res/drawable-port-92dpi/
    +MyApp/res/drawable-port-notouch-12key
    + Exception: Screen pixel density is the one qualifier that is not used to eliminate files. Even though the screen density of the device is 108 dpi, drawable-port-92dpi/ is not eliminated from the list, because every screen density is considered to be a + match at this point. +
  7. From Table 2, pick the highest-precedence qualifier that remains in the list. (Start with MCC, then move down through the list.)
  8. +
  9. Do any of the available resource directories include this qualifier?
  10. +
      +
    • If No, return to step 2 and look at the next qualifier listed in Table 2. In our example, the answer is "no" until we reach Language.
    • +
    • If Yes, move on to step 4.
    • +
    +
  11. Eliminate resource directories that do not include this qualifier. In our example, we eliminate all the directories that do not include a language qualifier.
  12. +
    MyApp/res/drawable/
    +MyApp/res/drawable-en/
    +MyApp/res/drawable-en-port/
    +MyApp/res/drawable-en-notouch-12key/
    +MyApp/res/drawable-port-92dpi/
    +MyApp/res/drawable-port-notouch-12key
    + Exception: If the qualifier in question is screen pixel density, Android will select the option that most closely matches the device, and the selection process will be complete. In general, Android will prefer scaling down a larger original image to scaling up a smaller original image.

    + +
  13. Go back and repeat steps 2, 3, and 4 until only one choice remains. In the example, screen orientation is the next qualifier in the table for which we have any matches. + Eliminate resources that do not specify a screen orientation.

    +
    MyApp/res/drawable-en/
    +MyApp/res/drawable-en-port/
    +MyApp/res/drawable-en-notouch-12key/
    + Only one choice remains, so that's it. When drawables are called for in this example application, the Android system will load resources from the MyApp/res/drawable-en-port/ directory.
- - -

Terminology

- +

Tip: The precedence of the qualifiers is more important than the number of qualifiers that exactly match the device. For example, in step 4 above, the last choice on the list includes three qualifiers that exactly match the device (orientation, touchscreen type, and input method), while drawable-en has only one parameter that matches (language). However, language has a higher precedence, so drawable-port-notouch-12key is out.

+

This flowchart summarizes how Android selects resource directories to load.

+

resource-selection

+

Terminology

The resource system brings a number of different pieces together to form the final complete resource functionality. To help understand the overall system, here are some brief definitions of the core concepts and @@ -671,7 +675,7 @@ information is applied as approriate) and load them into its instance.

Configuration: For any particular resource identifier, there may be multiple different available values depending on the current configuration. The configuration includes the locale (language and country), screen -orientation, screen density, etc. The current configuration is used to +orientation, etc. The current configuration is used to select which resource values are in effect when the resource table is loaded.

@@ -710,4 +714,3 @@ SDK matures, this section will contain information on the Internationalization and Localization features of the Android platform. In the meantime, it is a good idea to start by externalizing all strings, and practicing good structure in creating and using resources.

-