تحديد الإصدار

يُجري فريق Maps JavaScript API تحديثات منتظمة على واجهة برمجة التطبيقات لإضافة ميزات جديدة وإصلاح الأخطاء وتحسين الأداء. توضّح هذه الصفحة إصدارات واجهة برمجة التطبيقات المتاحة للاستخدام في تطبيقاتك.

قنوات الإصدار وأرقام الإصدارات

في تطبيقك، يمكنك تحديد قنوات الإصدار أو أرقام الإصدارات:

  • يتم تحديد القناة الأسبوعية باستخدام v=weekly.
    يتم تحديث هذه القناة مرة واحدة في الأسبوع، وهي الأحدث.
  • يتم تحديد القناة الفصلية باستخدام v=quarterly.
    يتم تحديث هذه القناة مرة واحدة كل ربع سنة، وهي الأكثر قابلية للتوقّع.
  • يتم تحديد القناة التجريبية باستخدام v=beta.
    تستند هذه القناة إلى قناة weekly، ويتم تحديثها مرة واحدة في الأسبوع. ويتضمّن تغييرات إضافية لاختبار الميزة قبل إطلاقها وجمع الملاحظات بشأنها.
  • يتم تحديد قناة ألفا باستخدام v=alpha.
    تستند هذه القناة إلى قناة beta، ويتم تحديثها مرة واحدة في الأسبوع. يتضمّن تجارب لجمع ملاحظات العملاء حول النماذج الأولية. وهي مخصّصة لأغراض التطوير فقط ويجب عدم استخدامها في الإنتاج.
  • يتم تحديد رقم الإصدار باستخدام v=n.nn.
    يمكنك اختيار v=3.62 أو v=3.61 أو v=3.60 أو v=3.59.
    يتم تعديل أرقام الإصدارات مرة واحدة كل ربع سنة (راجِع التحديثات الربع سنوية).

إذا لم تحدّد قناة أو إصدارًا بشكل صريح، ستتلقّى القناة الأسبوعية تلقائيًا. إذا نقلت بياناتك من الخطة المميزة ولم تحدّد قناة أو إصدارًا بشكل صريح، ستتلقّى القناة الربع سنوية تلقائيًا. إذا حدّدت إصدارًا غير صالح، ستتلقّى القناة التلقائية.

اختيار القناة الأسبوعية

بالنسبة إلى معظم التطبيقات، ننصح باستخدام القناة الأسبوعية. هذا هو الإصدار الأحدث والأكثر حداثة، ويتضمّن آخر إصلاحات الأخطاء والتحسينات في الأداء. يمكنك تحديد القناة الأسبوعية من خلال تحميل 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.62 هو الإصدار الأسبوعي. يتم تحديث هذا الإصدار أسبوعيًا بإضافة ميزات جديدة وإصلاح الأخطاء وتحسين الأداء.

في منتصف نوفمبر، سيتم تعديل القناة الأسبوعية إلى الإصدار 3.63. في ذلك الوقت، قد يزيل الإصدار الجديد الميزات المتوقّفة نهائيًا و/أو يتضمّن تغييرات غير متوافقة مع الإصدارات السابقة.

اختيار القناة الفصلية

قد تستفيد بعض التطبيقات من التحديثات الأقل عددًا والأكبر حجمًا، لأنّ ذلك يتيح إمكانية أكبر للتوقّع. يجب أن تستخدم هذه التطبيقات قناة الإصدارات الفصلية. استخدِم هذا النهج إذا كنت تريد الحصول على إصلاحات للأخطاء وتحسينات في الأداء في وقت متوقّع (راجِع التحديثات الفصلية). يمكنك تحديد القناة الربع سنوية من خلال تحميل 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.61 هو الإصدار المتاح على القناة الربع سنوية. خلال الربع السنوي، لا يتلقّى هذا الإصدار ميزات جديدة أو إصلاحات للأخطاء أو تحسينات في الأداء. قد نضيف إلى هذا الإصدار من حين لآخر إصلاحات لأخطاء أمنية.

في منتصف نوفمبر، سيتم تعديل القناة الفصلية إلى الإصدار 3.62. في ذلك الوقت، سيتضمّن الإصدار الجديد ميزات جديدة، وستتم إزالة الميزات المتوقّفة نهائيًا، و/أو سيتم تقديم تغييرات غير متوافقة مع الإصدارات السابقة خلال الأشهر الثلاثة السابقة.

اختيار القناة التجريبية

استخدِم القناة التجريبية لتجربة الميزات والتغييرات الجديدة في الإصدار التجريبي. تكون ميزات الإصدار التجريبي كاملة، ولكن قد تتضمّن بعض المشاكل المعلقة (يُرجى استخدام أداة تتبُّع المشاكل للإبلاغ عن المشاكل وتقديم الملاحظات). لا يشمل الإصدار التجريبي أي اتفاقية مستوى خدمة أو سياسة إيقاف، وقد لا تكون بعض التغييرات متوافقة مع الإصدارات السابقة.

تستند هذه القناة إلى قناة 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.61,
  });
  </script>

يمكنك حاليًا تحديد v=3.62 أو v=3.61 أو v=3.60 أو v=3.59.

  • يتلقّى الإصدار 3.62 تحديثات أسبوعية تتضمّن ميزات جديدة وإصلاحات للأخطاء وتحسينات في الأداء.
  • لا يتلقّى الإصدار 3.61 تحديثات أسبوعية.
  • لا يتلقّى الإصدار 3.60 تحديثات أسبوعية.
  • لا يتلقّى الإصدار 3.59 تحديثات أسبوعية.
  • يجوز لنا، من حين لآخر، إدخال إصلاحات لأخطاء أمنية في أي إصدار.
  • قد نُجري تغييرات غير متوافقة مع الإصدارات السابقة عند إنشاء إصدار جديد.

بعد منتصف تشرين الثاني (نوفمبر)، سيصبح بإمكانك تحديد v=3.63 أو v=3.62 أو v=3.61 أو v=3.60.

  • سيتلقّى الإصدار 3.63 تحديثات أسبوعية تتضمّن ميزات جديدة وإصلاحات للأخطاء وتحسينات في الأداء.
  • لن يتلقّى الإصدار 3.62 تحديثات أسبوعية بعد الآن.
  • لن يتلقّى الإصدار 3.61 تحديثات أسبوعية بعد الآن.
  • لن يتلقّى الإصدار 3.60 تحديثات أسبوعية بعد الآن.
  • يجوز لنا، من حين لآخر، إدخال إصلاحات لأخطاء أمنية في أي إصدار.
  • لن يكون الإصدار 3.59 متاحًا بعد الآن. سيتم تجاهل أي محاولة لتحميل هذا الإصدار، وستتلقّى القناة التلقائية بدلاً من ذلك.

يوضّح الرسم البياني أدناه الإصدارات التي ستكون متاحة في كل قناة خلال العام المقبل.

v=weekly v=quarterly v=3.nn v=3.nn-1 أغسطس 2025 نوفمبر 2025 فبراير 2026 مايو 2026 v3.59 v3.60 v3.60 v3.61 v3.61 v3.61 v3.62 v3.62 v3.62 v3.62 v3.63 v3.63 v3.63 v3.64 v3.64 v3.65

تأثّر تطبيقي بتحديث

عند تعديل قنوات الإصدار، قد يؤثر ذلك في تطبيقك. قد يحدث ذلك لأنّ تطبيقك يعتمد على ميزات غير موثّقة أو تم إيقافها نهائيًا، أو بسبب خطأ أو إصلاح خطأ قد طرحناه.

كحلّ مؤقت، يمكنك إعادة ضبط تطبيقك لاستخدام إصدار قديم.

  1. افتح وحدة التحكّم في أدوات المطوّرين في المتصفّح، وابحث عن قيمة google.maps.version.
  2. عدِّل علامة النص البرمجي التي تحمّل واجهة برمجة التطبيقات، واطلب رقم إصدار أقدم.
    على سبيل المثال، إذا كانت قيمة google.maps.version هي "3.62.2"، استخدِم v=3.61 في علامة النص البرمجي.
    سيعمل هذا الحلّ المؤقت لفترة محدودة فقط.

بعد تطبيق الحلّ المؤقت، سيكون لديك وقت (عادةً من 3 إلى 6 أشهر) لتحديث تطبيقك كي لا يستخدم الميزات غير الموثَّقة أو المتوقّفة نهائيًا، ويراعي الأخطاء أو إصلاحات الأخطاء.

بعد ذلك، عليك الرجوع إلى علامة النص البرمجي الأصلية لتحميل واجهة برمجة التطبيقات.

يمكنك أيضًا إنشاء طلب دعم أو الإبلاغ عن مشكلة.

إشعارات ربع سنوية

يطرح فريق Maps JavaScript API إصدارًا جديدًا مرة واحدة كل ربع سنة. يحدث ذلك في منتصف شباط (فبراير) ومنتصف أيار (مايو) ومنتصف آب (أغسطس) ومنتصف تشرين الثاني (نوفمبر). سيكون التحديث التالي في منتصف شهر تشرين الثاني (نوفمبر). ستوفّر القناة الأسبوعية الجديدة الإصدار 3.63، وسيتم تحديث القنوات الأخرى في ذلك الوقت.

آخر الأخبار المتعلّقة بقناتك

تشير القناة الأسبوعية حاليًا إلى الإصدار 3.62.

في منتصف نوفمبر، سيتم تعديل القناة الأسبوعية من الإصدار 3.62 إلى الإصدار 3.63. في هذه المرحلة، سيتضمّن الإصدار الجديد ميزات جديدة، وستتم إزالة الميزات المتوقّفة نهائيًا، و/أو سيتم تقديم تغييرات غير متوافقة مع الإصدارات السابقة. وقد تحتاج إلى اختبار هذه التغييرات عند تعديل القناة.

خلال الربع، سيتم تحديث الإصدار الجديد أسبوعيًا بإضافة ميزات جديدة وإصلاح الأخطاء وتحسين الأداء. لن يؤدي ذلك إلى إزالة الميزات المتوقّفة نهائيًا ولن يؤدي إلى حدوث مشاكل عدم توافق مع الإصدارات القديمة.

إشعار ربع سنوي بشأن القناة

تشير القناة الربع سنوية حاليًا إلى الإصدار 3.61.

في منتصف نوفمبر، سيتم تعديل القناة الفصلية من الإصدار 3.61 إلى الإصدار 3.62. عند التحديث، سيتضمّن هذا الإصدار ميزات جديدة، وستتم إزالة الميزات المتوقّفة نهائيًا، و/أو سيتم تقديم تغييرات غير متوافقة مع الإصدارات السابقة خلال الأشهر الثلاثة الماضية. وقد تحتاج إلى اختبار هذه التغييرات عند تعديل القناة.

خلال هذا الربع، لن يتضمّن هذا الإصدار ميزات جديدة أو إصلاحات للأخطاء أو تحسينات في الأداء. لن يؤدي ذلك إلى إزالة الميزات المتوقّفة نهائيًا ولن يؤدي إلى حدوث مشاكل عدم توافق مع الإصدارات القديمة.

تحديثات الإصدار

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

الإصدار 3.63

سيتم طرح الإصدار الجديد 3.63 في منتصف تشرين الثاني (نوفمبر). عند طرح هذا الإصدار، سيتضمّن ميزات جديدة، وستتم إزالة الميزات المتوقّفة نهائيًا، و/أو سيتم تقديم تغييرات غير متوافقة مع الإصدارات السابقة مقارنةً بالإصدار 3.62. عليك اختبار تطبيقك عند التبديل بين أرقام الإصدارات.

وخلال الربع، سيتم تحديث الإصدار الجديد أسبوعيًا بإضافة ميزات جديدة وإصلاح الأخطاء وتحسين الأداء. لن يؤدي ذلك إلى إزالة الميزات المتوقّفة نهائيًا ولن يؤدي إلى حدوث مشاكل عدم توافق مع الإصدارات القديمة.

الإصدار 3.62

يتضمّن هذا الإصدار ميزات جديدة ويزيل ميزات تم إيقافها و/أو يقدّم تغييرات غير متوافقة مع الإصدار 3.61. عليك اختبار تطبيقك عند التبديل بين أرقام الإصدارات.

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

الإصدار 3.61

يتضمّن هذا الإصدار ميزات جديدة ويزيل ميزات تم إيقافها و/أو يقدّم تغييرات غير متوافقة مع الإصدار السابق 3.60. عليك اختبار تطبيقك عند التبديل بين أرقام الإصدارات.

ولن يتم تحديث هذا الإصدار بعد الآن بإضافة ميزات جديدة أو إصلاح الأخطاء أو تحسين الأداء. لن تتم إزالة الميزات التي تم إيقافها نهائيًا بعد هذا الإصدار، ولن يتم تقديم أي تغييرات جديدة غير متوافقة مع الإصدارات السابقة.

الإصدار 3.60

يتضمّن هذا الإصدار ميزات جديدة ويزيل ميزات تم إيقافها نهائيًا و/أو يقدّم تغييرات غير متوافقة مع الإصدار 3.59. عليك اختبار تطبيقك عند التبديل بين أرقام الإصدارات.

ولن يتم تحديث هذا الإصدار بعد الآن بإضافة ميزات جديدة أو إصلاح الأخطاء أو تحسين الأداء. لن تتم إزالة الميزات التي تم إيقافها نهائيًا بعد هذا الإصدار، ولن يتم تقديم أي تغييرات جديدة غير متوافقة مع الإصدارات السابقة.

الإصدار 3.59

بعد منتصف شهر نوفمبر، سيتم حذف هذا الإصدار ولن يعود بإمكانك استخدامه. سيتم تجاهل أي محاولة لتحميل هذا الإصدار، وستتلقّى القناة التلقائية بدلاً من ذلك.

الإصدارات المتوافقة

في أي ربع سنة، تتوفّر أربع إصدارات. تتوفّر جميع هذه الإصدارات الأربعة.

عمليات التحقّق من الإصدار

لإجراء عملية تصحيح الأخطاء، استخدِم السمة 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>

مستندات إصدارات واجهة برمجة التطبيقات

يتضمّن دليل المطوّرين دائمًا وصفًا للإصدار الأسبوعي.

بالإضافة إلى ذلك، هناك مرجع يتم الاحتفاظ به بشكل منفصل لكل إصدار: