Sencha TouchとOpenLayersを使用して小さなテスト ページを作成し、 GeoServerから WMS/WFS データを受信しています。
HTML ページのエンコーディングを UTF-8 に設定しました。
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
次のステートメントを使用して、GeoServer から WFS データをプルします。
var post = new OpenLayers.Request.POST({
url: 'dataprovider.ashx',
data: ...,
headers: {
"Content-Type": "text/xml;charset=utf-8"
},
callback: function (response) {
...
},
});
UTF-8としてエンコードされた要求されたデータを私に与えるはずだと私は信じています。
IPhone 4 (IOS 4) と Samsung Galaxy Tab 10.1 (Android 3.1) を使用すると、問題なく動作します。
私の問題は次のとおりです。Android 2.2 を搭載したデバイスを使用すると、別のエンコーディングでデータが返されます。
私が受け取ると予想される単語の 1 つは ですがHøj
、私はHøj
(ANSI) を受け取ります。
FireFox と Chrome を使用して、GeoServer からの応答をデバッグする方法は知っていますが、電話やタブレットをデバッグする方法はわかりません。
Android 2.2 でエンコーディングが間違っているのはなぜですか?
更新: この問題は、Android 2.2 を使用するデバイスに関連しているようです。HTC Legend、Samsung Galaxy SII、および Samsung Galaxy Tab 7 で問題が発生しています - すべて Android 2.2 を実行しています。