簡単なチェックを試みています。文字列名のロケールに値として「es」がある場合。
public String locale =
Locale.getDefault().getLanguage().toLowerCase().toString();
// ...
Log.v(tag, "Idioma del sistema: «" + locale +"»");
if (locale != "es") {
showDialog(R.string.warningTitleDialog,
"We are sorry that this tool is only available in Spanish " +
"language. See Author menu item for more information. [" +
locale + "]");
locale = "en";
}
adb logcat
文字列「locale」の内容として「es」が表示されますが、条件内のコードが実行されています。