2010-09-10 25 views
5

W3C standart konum belirleme API'sini kullanan bir uygulama üzerinde çalışıyorum ama hayatımın Windows 7 ve XP PC'de Safari'de çalışmasını sağlayamadım . IPad'imde ve iPhone'umda iyi çalışıyor. Ayrıca Chrome (5, 6, 7 ve Canary build) ve Firefox'ta (3.6) mükemmel çalışır. Mac'im yok, o yüzden bunu test edemiyorum. IE henüz coğrafi konumu desteklemiyor, bu yüzden de kapsam dahilinde.Geolocation, Windows 7/XP üzerinde Safari 5.x üzerinde çalışmaz

Soyulmuş bir sürüm oluşturdum ve bunu Google Apps Engine'de barındıracağım. Bu nedenle, aşağıdaki kodu inceleyebilirsiniz: http://html5-geolocator.appspot.com/. Tüm (basitleştirilmiş) javascript html'de olduğundan, sağ tıklayıp kaynak hatalarını ayıklayabilmeniz/görüntüleyebilmeniz gerekir.

Google Map API DevGuide'daki örneklerin hemen hemen doğru bir şekilde dönüştürülmesidir. İlginçtir ki, Google'ın barındırdığı örnekler, Windows 7'deki Safari 5.0.x'te ÇALIŞIYOR (ancak benim uygulamamla aynı şekilde diğer tüm platformlarda iyi çalışırlar), örneğin, http://code.google.com/apis/maps/documentation/javascript/examples/map-geolocation.html, APP'imle tam olarak aynı sorunu gösterir. Hiçbir harita görünmez, web sayfası sadece gri renkte kalır. Bazı ayıklama yoluyla

(alert (...) Safari'de, bu navigator.geolocation.getCurrentPosition (myCallback) yürütmek yapar gibi görünüyor :-) "Buradayım", ancak myCallback ulaşmak görünüyor asla eğer o getCurrentPosition'dan hiçbir zaman geri dönmez. Ayrıca tarayıcı penceresini bir gecede açık bırakırsam, sabah geri döndüğümde uyarının ve haritanın (her zaman olmasa da) ortaya çıktığını gördüm. Ayrıca bir errorCallback navigator.geolocation.getCurrentPosition (myCallback, errorCallback) eklemeyi denedim, ancak aynı zamanda hiçbir zaman icra etmeyecek ve tekrar getCurrentPosition çağrısından geri dönmeyeceğini düşündürttüm.

Bunun neden olduğu hakkında herhangi bir fikrin var mı?

DÜZENLEME: Sadece biraz daha test yaptım, zaman aşımı seçeneği (navigator.geolocation.getCurrentPosition (myCallback, errorCallback, {aşımı: 5000});) eklendi ve gerçekten de her zaman aşımına uğramadan olursa olsun Google geolocation hizmetinden asla dönmemesi için ne kadar yükseğe ayarlıyım, ama neden ???

+0

Herkes herhangi bir ipucu bulursak güncelleyecektir -

Şimdi bu algılamak nasıl bakıyorum? – mvilrokx

+0

Aynı sonuçları tam olarak doğrulayabilirim. Krom tatlı, Firefox 3.5 tatlı, Safari 5 zar yok. :( – ADAM

+0

Ayrıca FYI Ben Snow Leopard – ADAM

cevap

3

Kablosuz bağlantınızı açmayı deneyin. Safari'nin çalışmak için kablosuz bağlantıya bağlı olduğu anlaşılıyor. Tam olarak aynı sorunları yaşıyordum, wi-fi bağlantımı açtım ve mükemmel çalışıyor. Bir çözüm

+0

ben kopyalamak wi-fi var, her zaman – mvilrokx

+0

Bunun diğer yığın taşması sorularının bir kopyası olduğunu ve Wifi'yi açmanız gerektiğini söyleyenler yanlıştır. Bu bir Mac'de Safari 5 ise bu işe yarar. Ancak bu soru Windows Safari 5'teydi. Ben de, Wifi veya başka bir yol açarak, Windows Safari 5 üzerinde çalışmak için coğrafi konum elde edemedim. – progressnerd

+0

Gerçekten çok garip, ama wifi bağlantımı açarken aslında benim için çalıştı! Ama bu değil bir çözüm. – FoF