html5/JqueryMobile/Phonegap アプリを開発しています。特定の html にリダイレクトするには、デバイスの言語を検出する必要があります。Phonegap のnavigator.globalization.getPreferredLanguage
. iOS デバイスでは正常に動作します。
以下のコードは、言語「onDeviceReady」を検出し、リダイレクトを実行します。このコードは iOS と Android で共通のはずですが、Android デバイスで試してみるとうまくいきません。画面がフリーズします。何が原因でしょうか?
<!DOCTYPE HTML>
<html>
<head>
<title>Language</title>
<script type="text/javascript" charset="utf-8" src="cordova-2.5.0.js"></script>
<script type="text/javascript" charset="utf-8">
document.addEventListener("deviceready", onDeviceReady, false);
function onDeviceReady() {
navigator.globalization.getPreferredLanguage(
function (language)
{
if(language.value == "it")
{window.location.replace("index_it.html");}
else if (language.value == "ar")
{window.location.replace("index_ar.html");}
else
{window.location.replace("index_en.html");}},
function ()
{
alert('Error getting language\n');
}
);
}
</script>
</head>
<body>
</body>
</html>