يُجري فريق Maps JavaScript API تحديثات منتظمة على واجهة برمجة التطبيقات لإضافة ميزات جديدة وإصلاح الأخطاء وتحسين الأداء. توضّح هذه الصفحة إصدارات واجهة برمجة التطبيقات المتاحة للاستخدام في تطبيقاتك.
قنوات الإصدار وأرقام الإصدارات
في تطبيقك، يمكنك تحديد قنوات الإصدار أو أرقام الإصدارات:
- يتم تحديد القناة الأسبوعية بالرمز
v=weekly.
يتم تحديث هذه القناة مرة واحدة في الأسبوع، وهي الأحدث. - يتم تحديد القناة الفصلية باستخدام
v=quarterly.
يتم تعديل هذه القناة مرة واحدة كل ربع سنة، وهي الأكثر قابلية للتوقّع. - يتم تحديد القناة التجريبية باستخدام
v=beta.
تستند هذه القناة إلى قناةweekly، ويتم تحديثها مرة واحدة في الأسبوع. ويتضمّن تغييرات إضافية لاختبار الميزة قبل إطلاقها وجمع الملاحظات. - يتم تحديد قناة ألفا باستخدام
v=alpha.
تستند هذه القناة إلى قناةbeta، ويتم تحديثها مرة واحدة في الأسبوع. يتضمّن تجارب لجمع ملاحظات العملاء حول النماذج الأولية. وهي مخصّصة لأغراض التطوير فقط ويجب عدم استخدامها في بيئة إنتاجية. - يتم تحديد رقم الإصدار باستخدام
v=n.nn.
يمكنك اختيارv=3.65أوv=3.64أوv=3.63أوv=3.62.
يتم تعديل أرقام الإصدارات مرة واحدة كل ربع سنة (راجِع التحديثات الربع سنوية).
إذا لم تحدّد قناة أو إصدارًا بشكل صريح، ستتلقّى القناة الأسبوعية تلقائيًا. إذا نقلت بياناتك من الخطة المميزة ولم تحدّد قناة أو إصدارًا بشكل صريح، ستتلقّى القناة الربع سنوية تلقائيًا. إذا حدّدت إصدارًا غير صالح، ستتلقّى القناة التلقائية.
اختيار القناة الأسبوعية
بالنسبة إلى معظم التطبيقات، ننصح باستخدام القناة الأسبوعية. هذا هو الإصدار الأحدث والأكثر حداثة، ويتضمّن آخر إصلاحات الأخطاء والتحسينات في الأداء. يمكنك تحديد القناة الأسبوعية من خلال تحميل Maps JavaScript API باستخدام علامة النص البرمجي التالية:
<script> (g=>{var h,a,k,p="The Google Maps JavaScript API",c="google",l="importLibrary",q="__ib__",m=document,b=window;b=b[c]||(b[c]={});var d=b.maps||(b.maps={}),r=new Set,e=new URLSearchParams,u=()=>h||(h=new Promise(async(f,n)=>{await (a=m.createElement("script"));e.set("libraries",[...r]+"");for(k in g)e.set(k.replace(/[A-Z]/g,t=>"_"+t[0].toLowerCase()),g[k]);e.set("callback",c+".maps."+q);a.src=`https://maps.${c}apis.com/maps/api/js?`+e;d[q]=f;a.onerror=()=>h=n(Error(p+" could not load."));a.nonce=m.querySelector("script[nonce]")?.nonce||"";m.head.append(a)}));d[l]?console.warn(p+" only loads once. Ignoring:",g):d[l]=(f,...n)=>r.add(f)&&u().then(()=>d[l](f,...n))})({ key: "YOUR_API_KEY", v: "weekly", }); </script>
في الوقت الحالي، الإصدار 3.65 هو الإصدار الأسبوعي. يتم تحديث هذا الإصدار أسبوعيًا بإضافة ميزات جديدة وإصلاح الأخطاء وتحسين الأداء.
في منتصف أغسطس، سيتم تعديل القناة الأسبوعية إلى الإصدار 3.66. في ذلك الوقت، قد يزيل الإصدار الجديد الميزات المتوقّفة نهائيًا و/أو يقدّم تغييرات غير متوافقة مع الإصدارات السابقة.
اختيار القناة الفصلية
قد تستفيد بعض التطبيقات من التحديثات الأقل عددًا والأكبر حجمًا، لأنّها توفّر إمكانية أكبر للتوقّع. يجب أن تستخدم هذه التطبيقات قناة الإصدارات الفصلية. استخدِم هذا الأسلوب إذا كنت تريد الحصول على إصلاحات للأخطاء وتحسينات في الأداء في وقت متوقّع (راجِع التحديثات الفصلية). يمكنك تحديد القناة الربع سنوية من خلال تحميل Maps JavaScript API باستخدام علامة النص البرمجي التالية:
<script> (g=>{var h,a,k,p="The Google Maps JavaScript API",c="google",l="importLibrary",q="__ib__",m=document,b=window;b=b[c]||(b[c]={});var d=b.maps||(b.maps={}),r=new Set,e=new URLSearchParams,u=()=>h||(h=new Promise(async(f,n)=>{await (a=m.createElement("script"));e.set("libraries",[...r]+"");for(k in g)e.set(k.replace(/[A-Z]/g,t=>"_"+t[0].toLowerCase()),g[k]);e.set("callback",c+".maps."+q);a.src=`https://maps.${c}apis.com/maps/api/js?`+e;d[q]=f;a.onerror=()=>h=n(Error(p+" could not load."));a.nonce=m.querySelector("script[nonce]")?.nonce||"";m.head.append(a)}));d[l]?console.warn(p+" only loads once. Ignoring:",g):d[l]=(f,...n)=>r.add(f)&&u().then(()=>d[l](f,...n))})({ key: "YOUR_API_KEY", v: "quarterly", }); </script>
الإصدار الحالي من القناة الربع سنوية هو 3.64. وخلال الربع السنوي، لا يتلقّى هذا الإصدار ميزات جديدة أو إصلاحات للأخطاء أو تحسينات في الأداء. قد نضيف إلى هذا الإصدار من حين لآخر إصلاحات لأخطاء أمنية.
في منتصف أغسطس، سيتم تعديل القناة الربع سنوية إلى الإصدار 3.65. في ذلك الوقت، سيتضمّن الإصدار الجديد ميزات جديدة، وستتم إزالة الميزات التي تم إيقافها نهائيًا، و/أو سيتم تقديم تغييرات غير متوافقة مع الإصدارات السابقة خلال الأشهر الثلاثة السابقة.
اختيار القناة التجريبية
استخدِم القناة التجريبية لتجربة الميزات والتغييرات الجديدة في الإصدار التجريبي. تكون الميزات التجريبية مكتملة، ولكن قد تتضمّن بعض المشاكل المعلقة (يُرجى استخدام أداة تتبُّع المشاكل للإبلاغ عن المشاكل وتقديم الملاحظات). لا يشمل الإصدار التجريبي أي اتفاقية مستوى خدمة أو سياسة إيقاف، وقد لا تكون بعض التغييرات متوافقة مع الإصدارات السابقة.
تستند هذه القناة إلى قناة weekly، ويتم تحديثها مرة واحدة في الأسبوع.
يمكنك تحديد قناة الإصدار التجريبي من خلال تحميل Maps JavaScript API باستخدام علامة النص البرمجي التالية:
<script> (g=>{var h,a,k,p="The Google Maps JavaScript API",c="google",l="importLibrary",q="__ib__",m=document,b=window;b=b[c]||(b[c]={});var d=b.maps||(b.maps={}),r=new Set,e=new URLSearchParams,u=()=>h||(h=new Promise(async(f,n)=>{await (a=m.createElement("script"));e.set("libraries",[...r]+"");for(k in g)e.set(k.replace(/[A-Z]/g,t=>"_"+t[0].toLowerCase()),g[k]);e.set("callback",c+".maps."+q);a.src=`https://maps.${c}apis.com/maps/api/js?`+e;d[q]=f;a.onerror=()=>h=n(Error(p+" could not load."));a.nonce=m.querySelector("script[nonce]")?.nonce||"";m.head.append(a)}));d[l]?console.warn(p+" only loads once. Ignoring:",g):d[l]=(f,...n)=>r.add(f)&&u().then(()=>d[l](f,...n))})({ key: "YOUR_API_KEY", v: "beta", }); </script>
اختيار قناة الإصدار الأوّلي
استخدِم قناة الإصدار الأولي لتجربة الميزات والتغييرات التجريبية الجديدة. يُرجى استخدام Issue Tracker للإبلاغ عن المشاكل وتقديم الملاحظات. لا يشمل الإصدار الأوّلي أي اتفاقية مستوى خدمة أو سياسة إيقاف، وقد لا تكون بعض التغييرات متوافقة مع الإصدارات السابقة. وهي مخصّصة لأغراض التطوير فقط ويجب عدم استخدامها في بيئة إنتاجية.
تستند هذه القناة إلى قناة beta، ويتم تحديثها مرة واحدة في الأسبوع.
يمكنك تحديد قناة الإصدار الأولي من خلال تحميل Maps JavaScript API باستخدام علامة البرنامج النصي التالية:
<script> (g=>{var h,a,k,p="The Google Maps JavaScript API",c="google",l="importLibrary",q="__ib__",m=document,b=window;b=b[c]||(b[c]={});var d=b.maps||(b.maps={}),r=new Set,e=new URLSearchParams,u=()=>h||(h=new Promise(async(f,n)=>{await (a=m.createElement("script"));e.set("libraries",[...r]+"");for(k in g)e.set(k.replace(/[A-Z]/g,t=>"_"+t[0].toLowerCase()),g[k]);e.set("callback",c+".maps."+q);a.src=`https://maps.${c}apis.com/maps/api/js?`+e;d[q]=f;a.onerror=()=>h=n(Error(p+" could not load."));a.nonce=m.querySelector("script[nonce]")?.nonce||"";m.head.append(a)}));d[l]?console.warn(p+" only loads once. Ignoring:",g):d[l]=(f,...n)=>r.add(f)&&u().then(()=>d[l](f,...n))})({ key: "YOUR_API_KEY", v: "alpha", }); </script>
اختيار رقم إصدار
لا تحدِّد إصدارًا بالرقم إلا إذا كنت تختبر تطبيقك وتعدّله بانتظام. والسبب هو أنّه يتم حذف الإصدارات المرقمة في النهاية عند إنشاء إصدارات جديدة كل ثلاثة أشهر. يمكنك تحديد رقم الإصدار من خلال تحميل Maps JavaScript API باستخدام علامة النص البرمجي التالية:
<script> (g=>{var h,a,k,p="The Google Maps JavaScript API",c="google",l="importLibrary",q="__ib__",m=document,b=window;b=b[c]||(b[c]={});var d=b.maps||(b.maps={}),r=new Set,e=new URLSearchParams,u=()=>h||(h=new Promise(async(f,n)=>{await (a=m.createElement("script"));e.set("libraries",[...r]+"");for(k in g)e.set(k.replace(/[A-Z]/g,t=>"_"+t[0].toLowerCase()),g[k]);e.set("callback",c+".maps."+q);a.src=`https://maps.${c}apis.com/maps/api/js?`+e;d[q]=f;a.onerror=()=>h=n(Error(p+" could not load."));a.nonce=m.querySelector("script[nonce]")?.nonce||"";m.head.append(a)}));d[l]?console.warn(p+" only loads once. Ignoring:",g):d[l]=(f,...n)=>r.add(f)&&u().then(()=>d[l](f,...n))})({ key: "YOUR_API_KEY", v: 3.64, }); </script>
يمكنك حاليًا تحديد
v=3.65 أو
v=3.64 أو
v=3.63 أو
v=3.62.
- يتلقّى الإصدار 3.65 تحديثات أسبوعية تتضمّن ميزات جديدة وإصلاحات للأخطاء وتحسينات في الأداء.
- لا يتلقّى الإصدار 3.64 تحديثات أسبوعية.
- لا يتلقّى الإصدار 3.63 تحديثات أسبوعية.
- لا يتلقّى الإصدار 3.62 إشعارات أسبوعية.
- يجوز لنا، من حين لآخر، إدخال إصلاحات لأخطاء أمنية في أي إصدار.
- قد نُجري تغييرات غير متوافقة مع الإصدارات السابقة عند إنشاء إصدار جديد.
بعد منتصف آب (أغسطس)، ستتمكّن من تحديد
v=3.66 أو
v=3.65 أو
v=3.64 أو
v=3.63.
- سيتلقّى الإصدار 3.66 تحديثات أسبوعية تتضمّن ميزات جديدة وإصلاحات للأخطاء وتحسينات في الأداء.
- لن يتلقّى الإصدار 3.65 تحديثات أسبوعية بعد الآن.
- لن يتلقّى الإصدار 3.64 تحديثات أسبوعية بعد الآن.
- لن يتلقّى الإصدار 3.63 تحديثات أسبوعية بعد الآن.
- يجوز لنا، من حين لآخر، إدخال إصلاحات لأخطاء أمنية في أي إصدار.
- لن يعود الإصدار 3.62 متاحًا. سيتم تجاهل أي محاولة لتحميل هذا الإصدار، وستتلقّى القناة التلقائية بدلاً من ذلك.
يوضّح الرسم البياني أدناه الإصدارات التي ستكون متاحة في كل قناة خلال العام المقبل.
تأثّر تطبيقي بتحديث
عند تعديل قنوات الإصدار، قد يؤثر ذلك في تطبيقك. قد يحدث ذلك لأنّ تطبيقك يعتمد على ميزات غير موثَّقة أو تم إيقافها نهائيًا، أو بسبب خطأ أو إصلاح خطأ قد طرحناه.
كحلّ مؤقت، يمكنك إعادة ضبط تطبيقك لاستخدام إصدار قديم.
- افتح وحدة التحكّم في أدوات المطوّرين في المتصفّح، وابحث عن قيمة
google.maps.version. - عدِّل علامة النص البرمجي التي تحمّل واجهة برمجة التطبيقات، واطلب رقم إصدار أقدم.
على سبيل المثال، إذا كانت قيمةgoogle.maps.versionهي "3.65.2"، استخدِمv=3.64في علامة البرنامج النصي.
سيعمل هذا الحلّ البديل المؤقت لفترة محدودة فقط.
بعد تطبيق الحلّ المؤقت، سيكون لديك وقت (عادةً من 3 إلى 6 أشهر) لتحديث تطبيقك كي لا يستخدم الميزات غير الموثّقة أو المتوقّفة نهائيًا، ويراعي الأخطاء أو إصلاحات الأخطاء.
بعد ذلك، عليك الرجوع إلى علامة النص البرمجي الأصلية لتحميل واجهة برمجة التطبيقات.
يمكنك أيضًا إنشاء طلب دعم أو الإبلاغ عن مشكلة.
إشعارات ربع سنوية
يطرح فريق Maps JavaScript API إصدارًا جديدًا مرة واحدة كل ربع سنة. ويحدث ذلك في منتصف شباط (فبراير) ومنتصف أيار (مايو) ومنتصف آب (أغسطس) ومنتصف تشرين الثاني (نوفمبر). سيتم طرح التحديث التالي في منتصف شهر أغسطس. ستوفّر القناة الأسبوعية الجديدة الإصدار 3.66، وسيتم تحديث القنوات الأخرى في ذلك الوقت.
آخر الأخبار المتعلّقة بقناتك
تشير القناة الأسبوعية حاليًا إلى الإصدار 3.65.
في منتصف أغسطس، سيتم تعديل القناة الأسبوعية من الإصدار 3.65 إلى الإصدار 3.66. في هذه المرحلة، سيتضمّن الإصدار الجديد ميزات جديدة، وستتم إزالة الميزات المتوقّفة نهائيًا، و/أو سيتم تقديم تغييرات غير متوافقة مع الإصدارات السابقة. وقد تحتاج إلى اختبار هذه التغييرات عند تعديل القناة.
خلال الربع، سيتم تحديث الإصدار الجديد أسبوعيًا بإضافة ميزات جديدة وإصلاح الأخطاء وتحسين الأداء. لن تتم إزالة الميزات المتوقّفة ولن يتم تقديم ميزات غير متوافقة مع الإصدارات القديمة.
إشعار ربع سنوي بشأن القناة
تشير القناة الربع سنوية حاليًا إلى الإصدار 3.64.
في منتصف أغسطس، سيتم تعديل القناة الربع سنوية من الإصدار 3.64 إلى الإصدار 3.65. عند التحديث، سيتضمّن هذا الإصدار ميزات جديدة، وستتم إزالة الميزات المتوقّفة نهائيًا، و/أو سيتم تقديم تغييرات غير متوافقة مع الإصدارات السابقة خلال الأشهر الثلاثة الماضية. وقد تحتاج إلى اختبار هذه التغييرات عند تعديل القناة.
خلال هذا الربع، لن يتضمّن هذا الإصدار ميزات جديدة أو إصلاحات للأخطاء أو تحسينات في الأداء. لن تتم إزالة الميزات المتوقّفة ولن يتم تقديم ميزات غير متوافقة مع الإصدارات القديمة.
تحديثات الإصدار
في منتصف أغسطس، سيتم إعادة ضبط أرقام الإصدارات لاستيعاب إصدار جديد.
الإصدار 3.66
سيتم طرح الإصدار الجديد 3.66 في منتصف آب (أغسطس). عند طرح هذا الإصدار، سيتضمّن ميزات جديدة، وستتم إزالة الميزات المتوقّفة نهائيًا، و/أو سيتم تقديم تغييرات غير متوافقة مع الإصدار 3.65. يجب اختبار تطبيقك عند التغيير بين أرقام الإصدارات.
خلال الربع، سيتم تحديث الإصدار الجديد أسبوعيًا بإضافة ميزات جديدة وإصلاح الأخطاء وتحسين الأداء. لن تتم إزالة الميزات المتوقّفة ولن يتم تقديم ميزات غير متوافقة مع الإصدارات القديمة.
الإصدار 3.65
يتضمّن هذا الإصدار ميزات جديدة ويزيل ميزات تم إيقافها نهائيًا و/أو يقدّم تغييرات غير متوافقة مع الإصدار 3.64. يجب اختبار تطبيقك عند التغيير بين أرقام الإصدارات.
بعد منتصف آب (أغسطس)، لن يتم تحديث هذا الإصدار بإضافة ميزات جديدة أو إصلاح الأخطاء أو تحسين الأداء. لن تتم إزالة الميزات المتوقّفة ولن يتم تقديم ميزات غير متوافقة مع الإصدارات القديمة.
الإصدار 3.64
يتضمّن هذا الإصدار ميزات جديدة ويزيل ميزات تم إيقافها و/أو يقدّم تغييرات غير متوافقة مع الإصدار 3.63. يجب اختبار تطبيقك عند التغيير بين أرقام الإصدارات.
ولن يتم تحديث هذا الإصدار بعد ذلك بإضافة ميزات جديدة أو إصلاح الأخطاء أو تحسين الأداء. لن تتم إزالة الميزات التي تم إيقافها نهائيًا بعد هذا الإصدار، ولن يتم تقديم أي تغييرات جديدة غير متوافقة مع الإصدارات السابقة.
الإصدار 3.63
يتضمّن هذا الإصدار ميزات جديدة ويزيل ميزات تم إيقافها و/أو يقدّم تغييرات غير متوافقة مع الإصدار 3.62. يجب اختبار تطبيقك عند التغيير بين أرقام الإصدارات.
ولن يتم تحديث هذا الإصدار بعد ذلك بإضافة ميزات جديدة أو إصلاح الأخطاء أو تحسين الأداء. لن تتم إزالة الميزات التي تم إيقافها نهائيًا بعد هذا الإصدار، ولن يتم تقديم أي تغييرات جديدة غير متوافقة مع الإصدارات السابقة.
الإصدار 3.62
بعد منتصف أغسطس، سيتم حذف هذا الإصدار ولن يعود بإمكانك استخدامه. سيتم تجاهل أي محاولة لتحميل هذا الإصدار، وسيتم عرض القناة التلقائية بدلاً من ذلك.
الإصدارات المتوافقة
في أي ربع سنة، تتوفّر أربع إصدارات. تتوفّر جميع هذه الإصدارات الأربعة.
عمليات التحقّق من الإصدار
لإجراء عملية تصحيح الأخطاء، استخدِم السمة google.maps.version للحصول على الإصدار الحالي من واجهة برمجة تطبيقات JavaScript لـ "خرائط Google" في تطبيقك.
يكتب نموذج الرمز البرمجي التالي إصدار واجهة برمجة التطبيقات في وحدة تحكّم المتصفّح.
(لمزيد من المعلومات حول وحدة تحكّم المتصفّح، يُرجى الاطّلاع على دليل
التحقّق من الأخطاء في المتصفّح).
<!DOCTYPE html>
<html>
<head>
<title>Display Google Maps API Version</title>
</head>
<body>
<script>
function initMap() {
// Add your map here.
console.log('Google Maps API version: ' + google.maps.version);
}
</script>
<script src="https://maps.googleapis.com/maps/api/js?key=YOUR_API_KEY&callback=initMap"
defer></script>
</body>
</html>مستندات عن إصدارات واجهة برمجة التطبيقات
يصف دليل المطوّرين دائمًا الإصدار الأسبوعي.
بالإضافة إلى ذلك، هناك مرجع يتم الاحتفاظ به بشكل منفصل لكل إصدار:
- مرجع واجهة برمجة التطبيقات الإصدار 3.65 (القناة الأسبوعية)
- مرجع واجهة برمجة التطبيقات الإصدار 3.64 (القناة الفصلية)
- مرجع واجهة برمجة التطبيقات الإصدار 3.63
- مرجع واجهة برمجة التطبيقات الإصدار 3.62
- تم حذف الإصدارات من 3.0 إلى 3.61.