android: Fix Chrome startup crash due to system language choice.

Chrome currently crashes on startup on Android if the system locale is
set to something that it doesn't support.

For example, set the system locale to 'Furlan': regular Android
applications will fallback to display English strings as a fallback,
but Chrome crashes on startup immediately.

This CL fixes the issue, by detecting which locale the Android framework
uses to display strings effectively, then using this value to extract
the corresponding .pak file, instead of trying to find one that matches
the current system setting.

+ Move compressed locale file detection to background thread.
  Since this now requires I/O access when accessing the
  resources, this operation can no longer be performed on
  the UI thread.

For more details, see associated bug entry.

BUG=846633
R=agrieve@chromium.org,astevenson@chromium.org,dtrainor@chromium.org,tedchoc@chromium.org

Change-Id: If2db6136367081ad50b2b80c85b4cc0e1c2c276f
Reviewed-on: https://chromium-review.googlesource.com/1088708
Commit-Queue: David Turner <digit@chromium.org>
Reviewed-by: agrieve <agrieve@chromium.org>
Reviewed-by: Ted Choc <tedchoc@chromium.org>
Cr-Commit-Position: refs/heads/master@{#569738}
5 files changed