سؤال

لا أحد يعرف ما إذا كان اي فون يدعم أو قريبا دعم W3C تحديد الموقع الجغرافي مواصفات?

أنا أبحث لبناء التطبيق لمستخدمي الهواتف المتحركة ، ولكن بدلا من قضاء الوقت في تطوير تطبيقات لكل منصة مختلفة (اي فون, الروبوت, الخ...), انني افضل بكثير لإنشاء تطبيق ويب الذي يجعل من استخدام معيار W3C.

هل كانت مفيدة؟

المحلول

هذا الرمز عملت بالنسبة لي -- على اي فون متصفح الويب سفاري و اضاف باعتبارها مكافأة حتى أنه يعمل مع فايرفوكس 3.5 على جهاز الكمبيوتر المحمول!تحديد الموقع الجغرافي مواصفات API هو جزء من W3 اتحاد معايير ولكن حذر من أن يكون:أنه لم يتم الانتهاء حتى الآن.

alt text
(المصدر: bemoko.com) alt text
(المصدر: bemoko.com)

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE html PUBLIC "-//WAPFORUM//DTD XHTML Mobile 1.0//EN" "http://www.wapforum.org/DTD/xhtml-mobile10.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<title>Geolocation API Demo</title>
<meta content="width=device-width; initial-scale=1.0; maximum-scale=1.0; user-scalable=0;" name="viewport"/>
<script>
function successHandler(location) {
    var message = document.getElementById("message"), html = [];
    html.push("<img width='256' height='256' src='http://maps.google.com/maps/api/staticmap?center=", location.coords.latitude, ",", location.coords.longitude, "&markers=size:small|color:blue|", location.coords.latitude, ",", location.coords.longitude, "&zoom=14&size=256x256&sensor=false' />");
    html.push("<p>Longitude: ", location.coords.longitude, "</p>");
    html.push("<p>Latitude: ", location.coords.latitude, "</p>");
    html.push("<p>Accuracy: ", location.coords.accuracy, " meters</p>");
    message.innerHTML = html.join("");
}
function errorHandler(error) {
    alert('Attempt to get location failed: ' + error.message);
}
navigator.geolocation.getCurrentPosition(successHandler, errorHandler);
</script>
</head>
<body>
<div id="message">Location unknown</div>
</body>
</html>

نصائح أخرى

يمكنك الآن الحصول على موقع من واجهات برمجة التطبيقات جافا سكريبت في متصفح سفاري التالية فون 3.0 الإصدار - قمنا بإنشاء سبيل المثال العمل @ http://blog.bemoko.com/2009/06/17/iphone-30-geolocation-javascript-api/

منذ نظام التشغيل اي فون 3.0 سفاري يدعم الحصول على الموقع الجغرافي.انظر: سفاري مكتبة مرجعية:الحصول على المواقع الجغرافية على الجانب الآخر W3C الجغرافية API المواصفات لا يزال في مشروع.

لقد قمت بتحديث MyWhirledView التعليمات البرمجية.يعمل على دائرة الرقابة الداخلية 4.3 الجهاز.جوجل لم يعد يتطلب مفتاح API للوصول إلى خريطة ثابتة المكتبة.

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE html PUBLIC "-//WAPFORUM//DTD XHTML Mobile 1.0//EN" "http://www.wapforum.org/DTD/xhtml-mobile10.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<title>iPhone 4.0 geolocation demo</title>
<meta content="width=device-width; initial-scale=1.0; maximum-scale=1.0; user-scalable=0;" name="viewport"/>
<script>
function handler(location) {
var message = document.getElementById("message");
message.innerHTML ="<img src='http://maps.google.com/maps/api/staticmap?center=" + location.coords.latitude + "," + location.coords.longitude + "&zoom=14&size=256x256&maptype=roadmap&sensor=false&markers=color:blue%7Clabel:ABC%7C" + location.coords.latitude + "," + location.coords.longitude + "' />";



message.innerHTML+="<p>Longitude: " + location.coords.longitude + "</p>";
message.innerHTML+="<p>Accuracy: " + location.coords.accuracy + "</p>";
message.innerHTML+="<p>Latitude: " + location.coords.latitude + "</p>";



}
navigator.geolocation.getCurrentPosition(handler);
</script>
</head>
<body>
<div id="message">Location unknown</div>
</body>
</html>

هذه الفجوة هو السبب في أنني وضعت Locatable تطبيق إنه أساسا plug-in for iPhone سفاري.انها حاليا متوفر فقط للهواتف اي فون.

انظر http://lbs.tralfamadore.com/

فإنه من الممكن الحصول على المعلومات لتحديد المواقع في جافا سكريبت على اي فون.على QuickConnectiPhone إطار يعرض لك هذا فضلا عن تسارع المعلومات.

للحصول على هذه المعلومات سيكون لديك لتثبيت التطبيق على الجهاز ومع ذلك.هذا الإطار سوف تكون متاحة قريبا على الروبوت التطبيقات المثبتة وكذلك نوكيا.

يمكنك وضع طلبك في إطار كل من هذه الأجهزة ، ترجمة ، السفينة.

QuickConnectiPhone هو متاح في https://sourceforge.net/projects/quickconnect/

و إذا كنت الاتصال بي أستطيع أن أعطيك ما قبل الإفراج عن إصدارات أندرويد ونوكيا.

رودس هو وعد "تطوير-مرة واحدة-تشغيل-في كل مكان" الحل.لم يحاكم بها نفسي.

هذه الصغيرة هي مكتبة جافا سكريبت عبر منصة ويدعم جميع الهواتف الذكية الحديثة من خارج منطقة الجزاء:

http://code.google.com/p/geo-location-javascript/

هنا هو كيف يمكنك استخدامها:

//determine if the handset has client side geo location capabilities
if(geo_position_js.init()){
   geo_position_js.getCurrentPosition(success_callback,error_callback);
}else{
   alert("Functionality not available");
}

حاليا, ليس من الممكن الحصول على اي فون هو موقف لتحديد المواقع باستخدام واجهات برمجة التطبيقات جافا سكريبت.هناك حديث أن هذا من شأنه أن يكون لطيفا, ولكن بالطبع أبل لن أعلق على إدخال تحسينات في المستقبل في الأماكن العامة.

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top