يُجري فريق Maps JavaScript API تحديثات بانتظام لواجهة برمجة التطبيقات من خلال إضافة ميزات جديدة وإصلاح الأخطاء وإجراء تحسينات على الأداء. توضِّح هذه الصفحة إصدارات واجهة برمجة التطبيقات المتاحة للاستخدام في تطبيقاتك.
قنوات الإصدار وأرقام الإصدارات
في تطبيقك، يمكنك تحديد قنوات الإصدار أو أرقام الإصدارات:
- يتم تحديد القناة الأسبوعية باستخدام
v=weekly
.
يتم تحديث هذه القناة مرة واحدة في الأسبوع، وهي أحدث قناة. - يتم تحديد القناة الربع سنوية باستخدام
v=quarterly
.
يتم تعديل هذه القناة مرة واحدة كل ربع سنة، وهي القناة الأكثر قابلية للتنبؤ. - يتم تحديد القناة التجريبية باستخدام
v=beta
.
تستند هذه القناة إلى قناةweekly
، ويتم تحديثها مرة واحدة في الأسبوع. ويشمل ذلك تغييرات إضافية للاختبار المبكر وتلقّي الملاحظات. - يتم تحديد القناة التجريبية باستخدام
v=alpha
.
تستند هذه القناة إلى قناةbeta
، ويتم تحديثها مرة واحدة في الأسبوع. ويشمل ذلك التجارب للحصول على ملاحظات العملاء حول النماذج الأولية. وهي مخصّصة لأغراض التطوير فقط ويجب عدم استخدامها في مرحلة الإنتاج. - يتم تحديد رقم الإصدار باستخدام
v=n.nn
.
يمكنك اختيارv=3.59
أوv=3.58
أوv=3.57
أوv=3.56
.
يتم تعديل أرقام الإصدارات مرة واحدة كل ربع سنة (راجِع التحديثات كل ربع سنة).
إذا لم تحدّد قناة أو إصدارًا بشكل صريح، ستتلقّى تلقائيًا الإصدار الأسبوعي للقناة. إذا نقلت بياناتك من الخطة المدفوعة ولم تحديد قناة أو إصدار بشكل صريح، ستتلقّى القناة الربع سنوية تلقائيًا. إذا حدّدت إصدارًا غير صالح، ستتلقّى قناتك التلقائية.
اختيار القناة الأسبوعية
بالنسبة إلى معظم التطبيقات، ننصح باستخدام القناة الأسبوعية. هذا هو الإصدار الأحدث والأكثر حداثة، ويحتوي على أحدث إصلاحات الأخطاء وتحسينات الأداء. يمكنك تحديد القناة الأسبوعية من خلال تحميل واجهة برمجة التطبيقات 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.59. يتم تحديث هذا الإصدار أسبوعيًا لإضافة ميزات جديدة وإصلاح الأخطاء وتحسين الأداء.
في منتصف شباط (فبراير)، سيتم تحديث القناة الأسبوعية إلى الإصدار 3.60. وفي ذلك الوقت، قد يؤدي الإصدار الجديد إلى إزالة الميزات المتوقّفة نهائيًا و/أو إدخال عدم توافق مع الإصدارات القديمة.
اختيار القناة الربع سنوية
قد تستفيد بعض التطبيقات من تحديثات أقلّ ولكن أكبر حجمًا، لأنّ ذلك يمنح مزيدًا من إمكانية التوقّع. يجب أن تستخدم هذه التطبيقات القناة الربع سنوية. استخدِم هذا النهج إذا كنت تريد أن تصل إصلاحات الأخطاء وتحسينات الأداء في الوقت المتوقّع (اطّلِع على التحديثات ربع السنوية). يمكنك تحديد القناة ربع السنوية من خلال تحميل واجهة برمجة التطبيقات 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.58 متوفّر في القناة الربع سنوية. خلال هذا الربع، لا يحصل هذا الإصدار على ميزات جديدة أو إصلاحات للأخطاء أو تحسينات في الأداء. يجوز لنا من حين لآخر إدخال إصلاحات للأخطاء الأمنية في هذا الإصدار.
في منتصف شباط (فبراير)، سيتم تحديث القناة الفصلية إلى الإصدار 3.59. وفي ذلك الوقت، سيتضمّن الإصدار الجديد ميزات جديدة، وسيزيل الميزات المتوقّفة نهائيًا، و/أو سيضيف عدم توافق مع الإصدارات السابقة من الأشهر الثلاثة السابقة.
اختيار القناة التجريبية
استخدِم القناة التجريبية لتجربة الميزات والتغييرات التجريبية الجديدة. إنّ الميزات التجريبية مكتملة، ولكن قد تتضمّن بعض المشاكل (يُرجى استخدام أداة تتبُّع المشاكل للإبلاغ عن المشاكل وتقديم الملاحظات). لا تخضع القناة التجريبية لأي اتفاقية مستوى خدمة أو سياسة إيقاف نهائي، وقد لا تكون بعض التغييرات متوافقة مع الإصدارات السابقة.
تستند هذه القناة إلى قناة weekly
ويتم تحديثها مرة واحدة في الأسبوع.
يمكنك تحديد القناة التجريبية من خلال تحميل Google 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>
اختيار قناة الشفافية
استخدِم قناة الإصدارات التجريبية لتجربة الميزات والتغييرات التجريبية الجديدة. يُرجى استخدام أداة تتبُّع المشاكل للإبلاغ عن المشاكل وتقديم الملاحظات. لا تخضع قناة الإصدارات التجريبية لأي اتفاقية مستوى خدمة أو سياسة إيقاف نهائي، وقد لا تكون بعض التغييرات متوافقة مع الإصدارات السابقة. وهي مخصّصة لأغراض التطوير فقط ويجب عدم استخدامها في مرحلة الإنتاج.
تستند هذه القناة إلى قناة 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>
اختيار رقم الإصدار
حدِّد إصدارًا برقم فقط إذا كنت تختبر تطبيقك وتُحدِّثه بانتظام. ويعود السبب في ذلك إلى أنّه يتم حذف الإصدارات المرقّمة في نهاية المطاف عند إنشاء إصدارات جديدة كل ربع سنة. يمكنك تحديد رقم الإصدار من خلال تحميل واجهة برمجة تطبيقات JavaScript لخرائط Google باستخدام علامة النص البرمجي التالية:
<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.58, }); </script>
يمكنك حاليًا تحديد
v=3.59
أو
v=3.58
أو
v=3.57
أو
v=3.56
.
- يتلقّى الإصدار 3.59 تحديثات أسبوعية تتضمّن ميزات جديدة وإصلاحات للأخطاء و تحسينات في الأداء.
- لا يتلقّى الإصدار 3.58 تحديثات أسبوعية.
- لا يتلقّى الإصدار 3.57 تحديثات أسبوعية.
- لا يتلقّى الإصدار 3.56 تحديثات أسبوعية.
- يجوز لنا من حين لآخر إدخال إصلاحات لأخطاء الأمان في أي إصدار.
- قد نُجري تغييرات غير متوافقة مع الإصدارات السابقة عند إنشاء إصدار جديد.
بعد منتصف شباط (فبراير)، ستتمكّن من تحديد
v=3.60
أو
v=3.59
أو
v=3.58
أو
v=3.57
.
- سيتلقّى الإصدار 3.60 تحديثات أسبوعية تتضمّن ميزات جديدة وإصلاحات للأخطاء و تحسينات في الأداء.
- لن يتلقّى الإصدار 3.59 تحديثات أسبوعية بعد الآن.
- لن يتلقّى الإصدار 3.58 تحديثات أسبوعية بعد الآن.
- لن يتلقّى الإصدار 3.57 تحديثات أسبوعية بعد الآن.
- يجوز لنا من حين لآخر إدخال إصلاحات لأخطاء الأمان في أي إصدار.
- لن يعود الإصدار 3.56 متاحًا. سيتم تجاهل أي محاولة لتحميل هذا الإصدار ، وستظهر لك قناتك التلقائية بدلاً منه.
يوضِّح الرسم البياني أدناه الإصدارات التي ستتوفّر في كل قناة خلال العام المقبل.
تأثّر طلبي بتعديل
عند تعديل قنوات الإصدار، قد يؤثر ذلك في تطبيقك. قد يحدث ذلك لأنّ تطبيقك يعتمد على ميزات غير موثَّقة أو متوقّفة نهائيًا، أو بسبب خطأ أو إصلاح خطأ قد أجريناه.
كحل مؤقت، يمكنك إعادة ضبط تطبيقك لاستخدام إصدار قديم.
- افتح وحدة التحكّم في أدوات المطوّرين في المتصفّح، واطّلِع على قيمة
google.maps.version
. - عدِّل علامة النص البرمجي التي تحمِّل واجهة برمجة التطبيقات، واطلب رقم إصدار أقدم.
على سبيل المثال، إذا كانgoogle.maps.version
هو "3.59.2"، استخدِمv=3.58
في علامة النص البرمجي.
سيعمل هذا الحل البديل المؤقت لفترة محدودة فقط.
بعد تنفيذ الحلّ المؤقت، سيكون لديك الوقت (عادةً من 3 إلى 6 أشهر) ل تعديل تطبيقك كي لا يستخدم الميزات غير الموثَّقة أو الميزات التي تم إيقافها نهائيًا، ولمعالجة أخطاء التطبيق أو إصلاحها.
بعد ذلك، عليك الرجوع إلى علامة النص البرمجي الأصلية لتحميل واجهة برمجة التطبيقات.
يمكنك أيضًا إنشاء طلب دعم أو الإبلاغ عن مشكلة.
التحديثات ربع السنوية
يطرح فريق Maps JavaScript API إصدارًا جديدًا مرة واحدة كل ربع سنة. ويحدث ذلك في منتصف شباط (فبراير) وأيار (مايو) وأغسطس (آب) وتشرين الثاني (نوفمبر). سيكون التحديث التالي في منتصف شباط (فبراير). ستوفّر القناة الأسبوعية الجديدة الإصدار 3.60، وسيتم تحديث القنوات الأخرى في ذلك الوقت.
آخر الأخبار الأسبوعية حول القناة
تشير القناة الأسبوعية حاليًا إلى الإصدار 3.59.
في منتصف شباط (فبراير)، سيتم تحديث القناة الأسبوعية من الإصدار 3.59 إلى الإصدار 3.60. وفي هذه المرحلة، سيتضمّن الإصدار الجديد ميزات جديدة، ويزيل الميزات المتوقّفة نهائيًا، ويُجري/أو يُدخل تغييرات غير متوافقة مع الإصدارات القديمة. قد تحتاج إلى اختبار هذه التغييرات عند تعديل القناة.
على مدار الربع، سيتم تحديث الإصدار الجديد أسبوعيًا بإضافة ميزات جديدة وإصلاح الأخطاء وتحسينات في الأداء. ولن يؤدي ذلك إلى إزالة الميزات المتوقّفة نهائيًا ولن يؤدي إلى حدوث مشاكل عدم توافق مع الإصدارات القديمة.
آخر الأخبار ربع السنوية حول القناة
تشير القناة الربع سنوية حاليًا إلى الإصدار 3.58.
في منتصف شباط (فبراير)، سيتم تحديث قناة الإصدارات الربع سنوية من الإصدار 3.58 إلى الإصدار 3.59. بعد التحديث، سيتضمّن هذا الإصدار ميزات جديدة، وسيزيل الميزات المتوقّفة نهائيًا، و/أو سيضيف عدم توافق مع الإصدارات القديمة من الأشهر الثلاثة السابقة. قد تحتاج إلى اختبار هذه التغييرات عند تعديل القناة.
خلال هذا الربع، لن يتضمّن هذا الإصدار ميزات جديدة أو إصلاحات للأخطاء أو تحسينات في الأداء. ولن يؤدي ذلك إلى إزالة الميزات المتوقّفة نهائيًا ولن يؤدي إلى حدوث مشاكل عدم توافق مع الإصدارات القديمة.
تحديثات الإصدار
في منتصف شباط (فبراير)، يتم إعادة استخدام أرقام الإصدارات لاستيعاب إصدار جديد.
الإصدار 3.60
سيتم إطلاق الإصدار 3.60 الجديد في منتصف شباط (فبراير). عند طرح هذا الإصدار، سيتضمّن ميزات جديدة، وسيزيل الميزات المتوقّفة نهائيًا، و/أو سيتضمّن ميزات غير متوافقة مع الإصدارات الأقدم مقارنةً بالإصدار 3.59. يجب اختبار تطبيقك عند التبديل بين أرقام الإصدارات.
خلال هذا الربع، سيتم تحديث الإصدار الجديد أسبوعيًا لإضافة ميزات جديدة وإصلاح الأخطاء و إجراء تحسينات على الأداء. ولن يؤدي ذلك إلى إزالة الميزات المتوقّفة نهائيًا ولن يؤدي إلى حدوث مشاكل عدم توافق مع الإصدارات القديمة.
الإصدار 3.59
يتضمّن هذا الإصدار ميزات جديدة ويزيل ميزات متوقّفة نهائيًا و/أو يضيف حالات عدم التوافق مع الإصدارات القديمة مقارنةً بالإصدار 3.58. يجب اختبار تطبيقك عند التبديل بين أرقام الإصدارات.
بعد منتصف شباط (فبراير)، لن يتم تحديث هذا الإصدار بإضافة ميزات جديدة أو إصلاحات للأخطاء أو تحسينات في الأداء. ولن يؤدي ذلك إلى إزالة الميزات المتوقّفة نهائيًا ولن يؤدي إلى حدوث مشاكل عدم توافق مع الإصدارات القديمة.
الإصدار 3.58
يتضمّن هذا الإصدار ميزات جديدة ويزيل ميزات متوقّفة نهائيًا و/أو يضيف حالات عدم توافق مع الإصدارات القديمة مقارنةً بالإصدار 3.57. يجب اختبار تطبيقك عند التبديل بين أرقام الإصدارات.
لن يتم تحديث هذا الإصدار بعد الآن بإضافة ميزات جديدة أو إصلاحات للأخطاء أو تحسينات على الأداء. ولن يؤدي ذلك إلى إزالة الميزات التي تم إيقافها نهائيًا بعد هذا الإصدار ولن يؤدي إلى إدخال مزيد من حالات عدم التوافق مع الإصدارات القديمة.
الإصدار 3.57
يتضمّن هذا الإصدار ميزات جديدة ويزيل ميزات متوقّفة نهائيًا و/أو يضيف حالات عدم توافق مع الإصدارات القديمة مقارنةً بالإصدار 3.56. يجب اختبار تطبيقك عند التبديل بين أرقام الإصدارات.
لن يتم تحديث هذا الإصدار بعد الآن بإضافة ميزات جديدة أو إصلاحات للأخطاء أو تحسينات على الأداء. ولن يؤدي ذلك إلى إزالة الميزات التي تم إيقافها نهائيًا بعد هذا الإصدار ولن يؤدي إلى إدخال مزيد من حالات عدم التوافق مع الإصدارات القديمة.
الإصدار 3.56
بعد منتصف شباط (فبراير)، سيتم حذف هذا الإصدار ولن يعود بالإمكان استخدامه. وسيتم تجاهل أي محاولة لتحميل هذا الإصدار، وستظهر لك قناتك التلقائية بدلاً منه.
التوافق مع الإصدارات
تتوفّر أربعة إصدارات في أي ربع سنة. جميع هذه الإصدارات الأربعة متوافقة.
عمليات التحقّق من الإصدار
لتصحيح الأخطاء، استخدِم السمة google.maps.version
للحصول على
الإصدار الحالي من واجهة برمجة التطبيقات Maps JavaScript API في تطبيقك.
يُسجِّل نموذج التعليمات البرمجية التالي إصدار واجهة برمجة التطبيقات في وحدة تحكّم المتصفّح.
(لمزيد من المعلومات عن وحدة تحكّم المتصفّح، اطّلِع على دليل
التحقّق من الأخطاء في المتصفّح).
<!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.59 (قناة أسبوعية)
- مرجع واجهة برمجة التطبيقات للإصدار 3.58 (القناة ربع السنوية)
- مرجع واجهة برمجة التطبيقات للإصدار 3.57
- مرجع واجهة برمجة التطبيقات للإصدار 3.56
- تم حذف الإصدارات من 3.0 إلى 3.55.