Tôi có ứng dụng có truy cập Internet và không muốn lưu trữ nhiều tệp string.xml
cho các ngôn ngữ khác nhau.Tài nguyên bản địa hóa có thể được tải xuống trong thời gian chạy không?
Những gì tôi muốn:
- ứng dụng chỉ có một
string.xml
với chuỗi tiếng anh chứa. - Khi người dùng khởi chạy - Tôi thấy ngôn ngữ điện thoại của người dùng và yêu cầu máy chủ của riêng tôi cho tệp ngôn ngữ cần thiết. (các khóa tài nguyên sẽ giống nhau)
- Khi tệp tài nguyên mới xuất hiện, tất cả giao diện sẽ hoạt động với tệp mới.
Câu hỏi đặt ra là cách thay đổi hiện tại hoặc thêm tệp string.xml
mới trong thời gian chạy?
Vấn đề của giải pháp này - bạn không thể tham khảo cơ sở dữ liệu từ tệp xml và bạn không thể sử dụng phương thức Context.getString() của standart. – Jin35
Yup, đó là mặt tối của giải pháp, nhưng miễn là bạn muốn sử dụng giải pháp đã cung cấp, không có sự khác biệt, chỉ điều này rõ ràng là tách biệt với hệ thống và dễ thực hiện hơn. –
Và tôi có thể tạo, ví dụ thư mục 'giá trị-de' trong tài nguyên của tôi và đặt tệp xml mới ở đó không? – Jin35