Có cách nào để có được ngôn ngữ được cài đặt Hệ thống từ thiết bị Android hay không. Tôi đã thử với getAvailableLocales()
từ android Get Available locales, nhưng nó không hoạt động cho các thiết bị như Asus, Carbon, Lava, Intex.Android Cách nhận các ngôn ngữ được cài đặt của hệ thống
Ví dụ, nếu tôi gọi getAvailableLocales()
trong thiết bị Nexus của tôi có thể có được miền địa phương đó là có trong Settings-> Language&Input -> Language
Nhưng nếu tôi làm như vậy trên bất kỳ thiết bị Carbon, thay vì nhận được ngôn ngữ từ Settings-> Language&Input -> Language
, tôi nhận được một khác nhau danh sách.
Tôi chỉ muốn danh sách ngôn ngữ được cài đặt trong thiết bị chứ không phải mọi ngôn ngữ được hệ điều hành hỗ trợ.
Bạn có thể mở rộng ý nghĩa của "không hoạt động" cho các thiết bị đó không? Có phải nó đơn giản trả về một mảng trống, một mảng với _only_ 'Locale.US', nó có bị lỗi không, nó có phải là không trả về các ngôn ngữ mà bạn mong muốn có sẵn không? –
Tôi đã cập nhật câu hỏi của mình, vui lòng kiểm tra –
OK, tôi có thể hỏi _why_ bạn cần địa phương không? Bạn nên hiển thị mọi thứ với bất kỳ ngôn ngữ nào mà người dùng của bạn đã chọn (tức là ngôn ngữ mặc định) và ghi vào mạng hoặc bất kỳ thứ gì với 'Locale.US', như [được ghi trong tài liệu 'Locale'] (https://developer.android.com/reference/java/util/Locale.html). Tôi nhớ lại một cái gì đó như bạn đang gặp (ngôn ngữ được cài đặt! Ngôn ngữ), mặc dù tôi không chắc chắn những gì đang xảy ra với điều đó. –