1page.title=Tổng quan về Tài nguyên 2@jd:body 3 4<div id="qv-wrapper"> 5<div id="qv"> 6 <h2>Chủ đề</h2> 7 <ol> 8 <li><a href="providing-resources.html">Cung cấp Tài nguyên</a></li> 9 <li><a href="accessing-resources.html">Truy cập Tài nguyên</a></li> 10 <li><a href="runtime-changes.html">Xử lý Thay đổi Thời gian chạy</a></li> 11 <li><a href="localization.html">Bản địa hóa</a></li> 12 </ol> 13 14 <h2>Tham khảo</h2> 15 <ol> 16 <li><a href="available-resources.html">Loại Tài nguyên</a></li> 17 </ol> 18</div> 19</div> 20 21 22<p>Bạn nên luôn ngoại hiện hóa các tài nguyên chẳng hạn như hình ảnh và xâu từ mã 23ứng dụng của mình, sao cho bạn có thể duy trì chúng một cách độc lập. Việc ngoại hiện hóa 24tài nguyên cũng cho phép bạn cung cấp các tài nguyên thay thế hỗ trợ những cấu hình 25thiết bị cụ thể chẳng hạn như ngôn ngữ hoặc kích cỡ màn hình khác nhau, điều này đang ngày càng trở nên 26quan trọng bởi các thiết bị dựa trên nền tảng Android ngày càng sẵn có với các cấu hình khác nhau. Để 27đảm bảo tính tương thích với các cấu hình khác nhau, bạn phải tổ chức tài nguyên trong 28thư mục {@code res/} dự án của bạn bằng cách sử dụng các thư mục con khác nhau có chức năng nhóm tài nguyên lại theo loại và 29cấu hình.</p> 30 31<div class="figure" style="width:429px"> 32<img src="{@docRoot}images/resources/resource_devices_diagram1.png" height="167" alt="" /> 33<p class="img-caption"> 34<strong>Hình 1.</strong> Hai thiết bị khác nhau, mỗi thiết bị sử dụng bố trí mặc định 35(ứng dụng không cung cấp bố trí thay thế).</p> 36</div> 37 38<div class="figure" style="width:429px"> 39<img src="{@docRoot}images/resources/resource_devices_diagram2.png" height="167" alt="" /> 40<p class="img-caption"> 41<strong>Hình 2.</strong> Hai thiết bị khác nhau, mỗi thiết bị sử dụng một bố trí khác nhau được cung cấp 42cho các kích cỡ màn hình khác nhau.</p> 43</div> 44 45<p>Đối với mọi loại tài nguyên, bạn có thể quy định tài nguyên <em>mặc định</em> và nhiều tài nguyên 46<em>thay thế</em> cho ứng dụng của mình:</p> 47<ul> 48 <li>Tài nguyên mặc định là những tài nguyên nên được sử dụng không phụ thuộc vào 49cấu hình thiết bị hoặc khi không có tài nguyên thay thế khớp với cấu hình 50hiện tại.</li> 51 <li>Tài nguyên thay thế là những tài nguyên mà bạn đã thiết kế để sử dụng với một cấu hình 52cụ thể. Để quy định rằng một nhóm tài nguyên áp dụng cho một cấu hình cụ thể, 53hãy nối hình dạng cấu hình phù hợp với tên thư mục.</li> 54</ul> 55 56<p>Ví dụ, trong khi bố trí UI mặc định của bạn 57được lưu trong thư mục {@code res/layout/}, bạn có thể quy định một bố trí khác sẽ 58được sử dụng khi màn hình ở hướng khổ ngang, bằng cách lưu nó trong thư mục {@code res/layout-land/} 59. Android tự động áp dụng các tài nguyên phù hợp bằng cách khớp cấu hình hiện tại 60của thiết bị với tên thư mục tài nguyên của bạn.</p> 61 62<p>Hình 1 minh họa cách hệ thống áp dụng cùng bố trí cho 63hai thiết bị khác nhau khi không có sẵn tài nguyên thay thế. Hình 2 minh họa 64cùng ứng dụng khi nó thêm một tài nguyên bố trí thay thế cho các màn hình lớn hơn.</p> 65 66<p>Các tài liệu sau trình bày hướng dẫn hoàn chỉnh về cách bạn có thể tổ chức các tài nguyên ứng dụng của mình, 67quy định tài nguyên thay thế, truy cập chúng trong ứng dụng của bạn, và nhiều điều khác:</p> 68 69<dl> 70 <dt><strong><a href="providing-resources.html">Cung cấp Tài nguyên</a></strong></dt> 71 <dd>Những kiểu tài nguyên mà bạn có thể cung cấp trong ứng dụng của mình, nơi lưu chúng, và cách tạo 72tài nguyên thay thế cho những cấu hình thiết bị cụ thể.</dd> 73 <dt><strong><a href="accessing-resources.html">Truy cập Tài nguyên</a></strong></dt> 74 <dd>Cách sử dụng tài nguyên mà bạn đã cung cấp hoặc bằng cách tham chiếu chúng từ mã ứng dụng của mình 75hoặc từ các tài nguyên XML khác.</dd> 76 <dt><strong><a href="runtime-changes.html">Xử lý Thay đổi Thời gian chạy</a></strong></dt> 77 <dd>Cách quản lý những thay đổi cấu hình mà diễn ra trong khi Hoạt động của bạn đang chạy.</dd> 78 <dt><strong><a href="localization.html">Bản địa hóa</a></strong></dt> 79 <dd>Một hướng dẫn từ dưới lên về việc bản địa hóa ứng dụng của bạn bằng cách sử dụng các tài nguyên thay thế. Trong khi đây 80chỉ là một công dụng cụ thể của tài nguyên thay thế, nó rất quan trọng để tiếp cận với nhiều 81người dùng hơn.</dd> 82 <dt><strong><a href="available-resources.html">Loại Tài nguyên</a></strong></dt> 83 <dd>Một tham chiếu về các loại tài nguyên khác nhau mà bạn có thể cung cấp, mô tả các phần tử XML, 84thuộc tính và cú pháp của chúng. Ví dụ, tham chiếu này cho bạn thấy cách tạo một tài nguyên cho 85menu ứng dụng, đối tượng vẽ được, hoạt ảnh, và hơn thế nữa.</dd> 86</dl> 87 88<!-- 89<h2>Raw Assets</h2> 90 91<p>An alternative to saving files in {@code res/} is to save files in the {@code 92assets/} directory. This should only be necessary if you need direct access to original files and 93directories by name. Files saved in the {@code assets/} directory will not be given a resource 94ID, so you can't reference them through the {@code R} class or from XML resources. Instead, you can 95query data in the {@code assets/} directory like an ordinary file system, search through the 96directory and 97read raw data using {@link android.content.res.AssetManager}. For example, this can be more useful 98when dealing with textures for a game. However, if you only need to read raw data from a file 99(such as a video or audio file), then you should save files into the {@code res/raw/} directory and 100then read a stream of bytes using {@link android.content.res.Resources#openRawResource(int)}. This 101is uncommon, but if you need direct access to original files in {@code assets/}, refer to the {@link 102android.content.res.AssetManager} documentation.</p> 103--> 104