2012-02-01 20 views
5

Ai đó hãy giải thích ý tưởng chính của việc sử dụng strings.xml là gì? Tôi nghĩ rằng nó sẽ hữu ích cho hỗ trợ đa ngôn ngữ nhưng làm thế nào chúng ta có thể tổ chức nó cho điều đó? Tôi có cần nó nếu tôi không muốn sử dụng hỗ trợ đa ngôn ngữ trong ứng dụng Android của mình không?ANDROID: Ý tưởng chính đằng sau việc sử dụng strings.xml là gì?

+1

Có thể bạn không muốn chuyển đổi ứng dụng sang các ngôn ngữ khác. Nhưng Stander là stander – Arslan

+1

Nếu chúng ta sử dụng một chuỗi nhất định ở nhiều nơi, chúng ta có thực sự cần phải thay đổi nó ở mọi nơi nếu giá trị của nó thay đổi không? Sử dụng strings.xml – Piovezan

Trả lời

11

Ý tưởng là nó đại diện cho một địa điểm duy nhất cho các chuỗi khác nhau, do đó, mã của bạn không được tiêu năng suất xâu. Thêm vào đó, bạn có thể dễ dàng bản địa hóa. Tổ chức các tập tin cho nội địa hóa được bao phủ ở đây:

http://developer.android.com/guide/topics/resources/localization.html#creating-alternatives

Bạn có cần nó nếu bạn không địa hóa? Không. Nhưng nó có thể làm mọi thứ dễ dàng hơn trong thời gian dài, và tôi khuyên bạn nên sử dụng nó chỉ vì lý do đó.

+0

Đây là câu trả lời hữu ích. –

+0

Tôi đã sử dụng strings.xml để lưu trữ Strings nhưng không phải cho mục đích bản địa hóa. Tôi đã sử dụng nó bởi vì nó dễ dàng hơn để ghi đè lên các Strings khi sử dụng các dự án thư viện Android. Câu hỏi của tôi là ** làm thế nào an toàn là nó ** để lưu trữ các chuỗi quan trọng như các khóa md5 trong strings.xml? Tôi có các khóa md5 thay đổi tùy thuộc vào Dự án Ứng dụng, nhưng mã sử dụng nó nằm trong Dự án Thư viện, vì vậy tôi lưu trữ Chuỗi trong strings.xml và ghi đè lên tệp trong mỗi Dự án Ứng dụng. –

5

Chuỗi mã hóa cứng là Xấu.

Chuỗi tham số (ví dụ: với strings.xml) là Tốt.

Có khả năng quốc tế hóa dây của bạn (với ngôn ngữ và/hoặc bản địa đặc thù các phiên bản của strings.xml) thậm chí còn tốt hơn :)

PS:

Để tận dụng quốc tế, chỉ cần tạo tài nguyên thư mục con. Google sẽ cung cấp cho bạn rất nhiều tài liệu tham khảo/ví dụ. Herre ai:

http://developer.android.com/guide/topics/resources/localization.html

* res/values/strings.xml 
    Contains English text for all the strings that the application 
    uses, including text for a string named title. 

* res/values-fr/strings.xml 
    Contain French text for all the strings, including title. 

* res/values-ja/strings.xml 
    Contain Japanese text for all the strings... 

Và vâng, bạn hoàn toàn sẽ nhận được trong thói quen sử dụng strings.xml (và colors.xml và dimens.xml etc etc) ngay cả khi bạn don không có kế hoạch quốc tế hóa ngay lập tức.

IMHO ....

+0

Cảm ơn bạn @ paulsm4 –

+0

Tôi đã sử dụng strings.xml để lưu trữ Strings nhưng không phải cho mục đích bản địa hóa. Tôi đã sử dụng nó bởi vì nó dễ dàng hơn để ghi đè lên các Strings khi sử dụng các dự án thư viện Android. Câu hỏi của tôi là ** làm thế nào an toàn là nó ** để lưu trữ các chuỗi quan trọng như các khóa md5 trong strings.xml? Tôi có các khóa md5 thay đổi tùy thuộc vào Dự án Ứng dụng, nhưng mã sử dụng nó nằm trong Dự án Thư viện, vì vậy tôi lưu trữ Chuỗi trong strings.xml và ghi đè lên tệp trong mỗi Dự án Ứng dụng. –

Các vấn đề liên quan