page.title=Resources Overview @jd:body
You should always externalize resources such as images and strings from your application code, so that you can maintain them independently. Externalizing your resources also allows you to provide alternative resources that support specific device configurations such as different languages or screen sizes, which becomes increasingly important as more Android-powered devices become available with different configurations. In order to provide compatibility with different configurations, you must organize resources in your project's {@code res/} directory, using various sub-directories that group resources by type and configuration.
For any type of resource, you can specify default and multiple alternative resources for your application:
For example, while your default UI layout is saved in the {@code res/layout/} directory, you might specify a different layout to be used when the screen is in landscape orientation, by saving it in the {@code res/layout-land/} directory. Android automatically applies the appropriate resources by matching the device's current configuration to your resource directory names.
Figure 1 illustrates how the system applies the same layout for two different devices when there are no alternative resources available. Figure 2 shows the same application when it adds an alternative layout resource for larger screens.
The following documents provide a complete guide to how you can organize your application resources, specify alternative resources, access them in your application, and more: