ملاحظات إصدار حزمة تطوير البرامج (SDK) لنظام التشغيل iOS وmacOS من Google

لم يتم إصدارها

  • تغيير جذري: تم تعديل تبعية AppAuth إلى الإصدار 3.0.0 وتعديل تبعية GTMAppAuth إلى الإصدار 6.0.0.
  • تغيير مهم: تم رفع الحد الأدنى من إصدارات أنظمة التشغيل المستهدَفة إلى iOS 15.0 وmacOS 12.0، بما يتوافق مع الحد الأدنى الجديد الذي تم ضبطه في AppAuth 3.0.0. يجب أن تظل المشاريع التي يجب أن تتوافق مع إصدارات نظام التشغيل القديمة تستخدم الإصدار 9.2.0 من GoogleSignIn.
  • تمت إعادة تسمية بيان Swift Package Manager الخاص بالإصدار من Package@swift-5.5.swift إلى Package@swift-5.7.swift، لأنّ الإصدار 3.0.0 من AppAuth يتطلّب الإصدار 5.7 من swift-tools-version أو إصدارًا أحدث.
  • تم توسيع نطاق التبعية GTMSessionFetcher للسماح بالإصدارَين 4.x و5.x، بما يتوافق مع الإصدار 6.0.0 من GTMAppAuth.
  • أضِف GIDSignIn.wrapperIdentifier حتى تتمكّن حِزم تطوير البرامج (SDK) التي تتضمّن ميزة "تسجيل الدخول باستخدام حساب Google" من تعريف نفسها تلقائيًا في سجلّات بيانات التشخيص من Google من خلال المَعلمة الجديدة gidwrapper. يجب الموافقة على استخدامها، ولن يتغيّر السلوك التلقائي.
  • تم تثبيت أسماء Swift لطُرق إنشاء GIDClaim باستخدام تعليقات توضيحية NS_SWIFT_NAME صريحة. تظل أسماء Swift المستورَدة بدون تغيير (authTime() وessentialAuthTime() وamr() وessentialAMR())، ولم تعُد تعتمد على إرشادات إعادة التسمية الضمنية في أداة استيراد Objective-C.

9.2.0

  • عرض تاريخ انتهاء صلاحية الرمز المميز لإعادة التحميل (#577)
  • إتاحة طلب المطالبة amr (مراجع طرق المصادقة) (#600)
  • إزالة إدخالات سلسلة المفاتيح عند إجراء عملية تثبيت جديدة (#567)
  • تعديل الحد الأدنى لمتطلبات AppAuth-iOS إلى الإصدار 2.1.0 (#603)
  • إصلاح مشكلة معالجة الحِزم الاختيارية للسلاسل المترجَمة (#373)
  • تضمين جميع العناوين العامة بدون شروط في العنوان الشامل (#595)
  • نقل عملية استيراد GIDSignInButton خارج التجميع الشرطي (#591)
  • داخلي
    • إصلاح تحذيرات الإيقاف النهائي في Swift Package Manager (#579)
    • تحسين تعليق المستند الخاص بـ GIDSignInButtonStyle (#204)
    • حلّ مشكلة التحذير بشأن الأطفال غير المعيّنين في قائمة مواد العرض AppIcon (#348)
    • إعادة تصميم سير عمل GitHub Actions (‫#580)
    • ترقية GitHub Actions إلى أحدث الإصدارات لتكون متوافقة مع Node 24 (‎#592 و‎#593)

9.1.0

  • السماح بطلب claims (auth_time فقط حاليًا) من خلال طرق تسجيل الدخول (#550 و#552 و#553 و#569)
  • تعديل طرق addScopes: في GIDSignIn لتضمين claims التي تم طلبها سابقًا (#557)
  • داخلي
    • تعيين قيمة إلى keychainStore في أقرب وقت ممكن في أداة التهيئة (#540)
    • إضافة دعم للغة Swift 6 (#543 و#544 و#546)
    • تعديل مهام سير عمل GitHub Actions (‎#545 و‎#570)
    • تعديل تطبيق DaysUntilBirthday النموذجي ليتوافق مع طلب auth_time (#555)
    • إعادة تسمية tokenClaims إلى claims في جميع أنحاء الرمز (#568)

9.0.0

  • السماح بتقديم nonce مخصّص من خلال GSI إلى AppAuth (#402، #476)
  • حلّ مشكلة رمز الخطأ غير الصالح في GIDSignIn (#472)
  • إتاحة استخدام GTMAppAuth 5 على أجهزة macOS (#522)
  • إصلاح الأخطاء في عملية نقل البيانات في "وضع حماية البيانات" (#533)
  • داخلي
    • إضافة AppAuthCore كعنصر تابع صريح (#470)
    • تعديل محاكي iPhone من الإصدار 14 إلى 15 (#494)
    • اختبار دمج زر الإصلاح السريع (#497)
    • تحديث المشغّل إلى macos-13 (#498)
    • تعديل scorecards.yml لاستخدام upload-artifact@v4.6.2 (#516)
    • تعديل تبعيتَي AppAuth وGTMAppAuth (#517 و#521)
    • إصلاح اختبارات الدمج في Swift لمستخدم مكرّر الزيارة (#518)
    • تعديل .gitignore لتضمين .build وPackage.resolved (#520)
    • تعديل GIDSignInTest لإعداد NSUserDefaults وإيقافه بشكل صحيح (#527)

8.0.0

  • إصدار عام يضيف إمكانية استخدام خدمة App Check من Firebase لتحديد سلامة تطبيقك عند تسجيل الدخول باستخدام حساب Google
  • تعديل الحد الأدنى من إصدار iOS المتوافق إلى الإصدار 12 (#445)
  • داخلي
    • تحديث اعتمادية AppCheckCore إلى الإصدار 11.0 (#454)
    • إضافة عملية إرجاع instancetype إلى أداة الاختبار المساعدة (‎#393)
    • إزالة الاستيراد النمطي لـ GTMSessionFetcher (#403)
    • تحديث activesupport من الإصدار 5.2.5 إلى الإصدار 5.2.8.1 في مجموعة الحزم (#429)
    • إزالة برنامج التشغيل القديم macos-11 (#447)
    • تعديل استخدام واجهة برمجة التطبيقات المتوقّفة نهائيًا لأرشفة البيانات في الاختبارات (#449)

7.1.0-fac-beta-1.1.0

  • إصدار تجريبي يتيح استخدام رموز مميّزة من خدمة App Check على Firebase لإثبات سلامة تطبيقك عند تسجيل الدخول باستخدام Google
  • إضافة دعم لبيان الخصوصية الذي تم إصداره في v7.1.0
  • داخلي

7.1.0

  • تحديث إلى Swift 5.0 في حزمة GoogleSignInSwiftSupport (#317)
  • تعديلات على المستندات (#351 و#372)
  • إضافة بيان الخصوصية (#382)
  • داخلي
    • إصلاح خطأ إملائي في SFSafariViewController (#291)
    • إصلاح استخدام OCMock في اختبار الوحدة (#298)
    • استخدام بروتوكول التفويض الجديد من GTMAppAuth 4.0.0 (#299)
    • تأكَّد من أنّ قيمة completion ليست فارغة قبل طلب -[GIDSignIn restorePreviousSignIn:] (#301)
    • إزالة مشغّل macos-11 في مهام سير عمل GitHub (#302)
    • تعديل اسم زر التحديث لكي تجتاز اختبارات التشغيل الآلي لواجهة المستخدم (#308)

7.1.0-fac-beta-1.0.0

  • إصدار تجريبي يتيح استخدام رموز مميّزة من خدمة App Check على Firebase لإثبات سلامة تطبيقك عند تسجيل الدخول باستخدام Google
  • داخلي
    • تعديل الحد الأدنى لإصدار iOS في ملف Podfile الخاص بمثال SignInSample (#355)
    • تعديل هدف اختبار وحدة AppCheckExample لاجتيازه أثناء الدمج المستمر (#356)

7.1.0-fac-eap-1.0.0

  • إصدار "برنامج الاستخدام المبكر" (EAP) الذي يتيح استخدام رموز مميّزة من خدمة App Check على Firebase لإثبات سلامة تطبيقك عند تسجيل الدخول باستخدام Google
    • استخدِم -[GIDSignIn configureWithCompletion:] لضبط صورة نظام عامة (GSI) لاستخدام فحص التطبيقات من Firebase في أقرب وقت ممكن في تطبيقك لتقليل وقت الاستجابة.
    • استخدِم -[GIDSignIn configureDebugProviderWithAPIKey:completion:] في إصدارات تصحيح الأخطاء أو بيئات الدمج المستمر.
    • تطبيق نموذجي جديد يعرض مثالاً على إعداد خدمة "تسجيل الدخول باستخدام Google" لاستخدام خدمة App Check من Firebase.
  • داخلي
    • إصلاح خطأ إملائي في SFSafariViewController (#291)
    • إزالة مشغّل macos-11 في مهام سير عمل GitHub (#302)
    • تعديل اسم زر التحديث لكي تجتاز اختبارات التشغيل الآلي لواجهة المستخدم (#308)
    • تأكَّد من أنّ قيمة completion ليست فارغة قبل طلب -[GIDSignIn restorePreviousSignIn:] (#301)
    • استخدام بروتوكول التفويض الجديد من GTMAppAuth 4.0.0 (#299)

7.0.0

  • يمكن الآن تقديم جميع إعداداتك من خلال ملف Info.plist. (#228)
    • استخدِم المفاتيح التالية في أزواج <key>KEY</key><string>VALUE</string> لضبط حزمة تطوير البرامج (SDK):
      • GIDClientID (مطلوب)
      • GIDServerClientID (اختياري)
      • GIDHostedDomain (اختياري)
      • GIDOpenIDRealm (اختياري)
  • التوافق مع Swift Concurrency (#187)
  • تحسينات على مساحة واجهة برمجة التطبيقات (‫#249 و‫#228 و‫#187)
    • GIDSignIn
      • سمة configuration الجديدة
      • تمت إزالة وسيطات Configuration: من طرق signIn:.
      • تمت إزالة addScopes: وإضافتها إلى GIDGoogleUser.
      • تمت إعادة تسمية وسيطات callback: إلى completion: للطرق غير المتزامنة التي تتضمّن كتلًا.
    • GIDGoogleUser
      • سمة configuration الجديدة
      • تم نقل طريقة addScopes: الجديدة من GIDSignIn.
      • تمت إزالة الموقع authentication واستبداله بما يلي:
        • سمة accessToken الجديدة
        • سمة refreshToken الجديدة
        • سمة idToken الجديدة
        • سمة fetcherAuthorizer الجديدة
        • طريقة refreshTokensIfNeededWithCompletion: جديدة
    • فئة GIDToken جديدة لتمثيل رموز الدخول المميزة ورموز إعادة التحميل ورموز التعريف في GIDGoogleUser
    • فئة GIDSignInResult جديدة لتمثيل نتيجة عملية تسجيل الدخول أو إضافة النطاقات بنجاح.
    • تمت إزالة تعريفات أنواع الحظر GIDSignInCallback وGIDDisconnectCallback وGIDAuthenticationAction.

6.2.4

  • تم تعديل الاعتمادية GTMSessionFetcher للسماح بالإصدارات 2.x. (#207)

6.2.3

  • إصلاح خطأ تحميل الموارد في GoogleSignInSwift عند استخدام use_frameworks! في CocoaPods (#197)
  • منع أخطاء الإنشاء في GoogleSignInSwift في سيناريوهات معيّنة عند استخدام Swift Package Manager (#166)

6.2.2

  • منع أخطاء الإنشاء في GoogleSignInSwift عند استخدام Swift Package Manager (#157)
  • منع حدوث خطأ في الإصدار على Xcode 12 والإصدارات الأقدم (#158)

6.2.1

  • استخدِم GoogleSignInSwiftSupport كاسم لحزمة CocoaPod المتوافقة مع Swift. (#137)

6.2.0

  • التوافق مع نظام التشغيل macOS (#104)
  • تمت إضافة زر "تسجيل الدخول باستخدام حساب Google" في SwiftUI. (#103)
  • تمت إضافة إمكانية طلب نطاقات إضافية عند تسجيل الدخول. (#30)
  • تم إصلاح عدة مشاكل. (#87، #106)

6.1.0

  • تطبيق جديد نموذجي بلغة Swift يعرض إمكانات SwiftUI (#63)
  • إتاحة التطبيق على Mac Catalyst
  • تحسينات على عملية تنفيذ addScopes (#68, #70)

6.0.2

  • تأكَّد من إمكانية استخدام عمليات استيراد الوحدات عند إنشاء التطبيق كمكتبة. (#53)

6.0.1

  • إصلاح المشكلة التي تمنع استدعاء عمليات رد الاتصال المتداخلة لطريقتَي signIn وaddScopes (#29)

6.0.0

  • أصبحت خدمة تسجيل الدخول باستخدام حساب Google لأجهزة iOS متاحة الآن كمصدر مفتوح.
  • إتاحة أداة Swift Package Manager
  • إتاحة المحاكي على أجهزة كمبيوتر Mac التي تعمل بمعالج M1
  • تعديلات على مساحة عرض واجهة برمجة التطبيقات
    • GIDSignIn
      • أصبحت sharedInstance الآن سمة صف.
      • أصبحت signIn الآن signInWithConfiguration:presentingViewController:callback: وتطلب دائمًا نطاقات الملف الشخصي الأساسية.
      • addScopes:presentingViewController:callback: هي الطريقة الجديدة لإضافة نطاقات تتجاوز الملف الأساسي إلى مستخدم مسجّل الدخول حاليًا.
      • restorePreviousSignIn أصبح الآن restorePreviousSignInWithCallback:.
      • disconnect أصبح الآن disconnectWithCallback:.
      • تمت إزالة بروتوكول GIDSignInDelegate لصالح حزمتَي GIDSignInCallback وGIDDisconnectCallback.
      • تم نقل جميع خصائص إعداد مسار تسجيل الدخول إلى GIDConfiguration.
    • تمت إضافة الفئة GIDConfiguration لتمثيل الإعدادات المطلوبة لتسجيل دخول المستخدم.
    • GIDAuthentication
      • getTokensWithHandler: أصبح الآن doWithFreshTokens:.
      • تمت إعادة تسمية تعريف النوع GIDAuthenticationHandler ليصبح GIDAuthenticationAction.
      • تمت إزالة refreshTokensWithHandler:، يُرجى استخدام doWithFreshTokens: بدلاً منها.
    • لم يعُد بإمكان GIDSignInButton إجراء مكالمات إلى GIDSignIn داخليًا، ويجب توصيله بجهاز IBAction أو جهاز مشابه حتى تتمكّن من الاتصال بـ signInWithConfiguration:presentingViewController:callback: لبدء عملية تسجيل الدخول.

5.0.2

  • تم إصلاح مشكلة إرسال رمز الخطأ غير الصحيح إلى signIn:didSignInForUser:withError: عندما يلغي المستخدم مربّع حوار الموافقة على نظام التشغيل iOS أثناء مسار تسجيل الدخول.

5.0.1

  • تم إصلاح مشكلة عدم إمكانية بدء عملية تسجيل الدخول بشكل صحيح على نظام التشغيل iOS 13.
  • يتطلّب توزيع ملف ZIP الإصدار 11 من Xcode أو إصدارًا أحدث.

5.0.0

  • التغييرات على GIDSignIn
    • تم استبدال "uiDelegate" بـ "presentingViewController".
    • تم استبدال "hasAuthInKeychain" بـ "hasPreviousSignIn".
    • تم استبدال "signInSilently" بـ "restorePreviousSignIn".
    • تمت إزالة رمز الخطأ kGIDSignInErrorCodeNoSignInHandlersInstalled المتوقّف نهائيًا.
  • التغييرات على GIDAuthentication
    • تمت إزالة الطريقتَين المتوقّفتَين نهائيًا getAccessTokenWithHandler: وrefreshAccessTokenWithHandler:.
  • التغييرات على GIDGoogleUser
    • تمت إزالة السمة accessibleScopes المتوقّفة نهائيًا، يُرجى استخدام grantedScopes بدلاً منها.
  • يضيف هذا الأمر تبعيات على AppAuth وGTMAppAuth.
  • تتم إزالة الاعتماد على GoogleToolboxForMac.
  • إيقاف التوافق مع الإصدار 7 من نظام التشغيل iOS

4.4.0

  • يزيل هذا الإعداد الاعتماد على OAuth 2 من "إدارة العلامات من Google".

4.3.0

  • يتوافق مع "إدارة الخدمات الجوّالة للمؤسسات" من Google.

4.2.0

  • تضيف هذه السمة grantedScopes إلى GIDGoogleUser، ما يتيح تأكيد النطاقات التي تم منحها بعد تسجيل الدخول بنجاح.
  • تم إيقاف accessibleScopes نهائيًا في GIDGoogleUser، لذا يُرجى استخدام grantedScopes بدلاً منها.
  • تتم ترجمة GIDSignInButton إلى الهندية (hi) والفرنسية (كندا) (fr-CA).
  • تضيف هذه السمة تبعية إلى إطار عمل LocalAuthentication في النظام.

4.1.2

  • إضافة إمكانية استخدام pod try في GoogleSignIn CocoaPod

4.1.1

  • تم إصلاح مشكلة عدم استدعاء signInWillDispatch:error: في GIDSignInUIDelegate على نظام التشغيل iOS 11. يُرجى العِلم أنّه من المفترض عدم استدعاء signIn:presentViewController: أو signIn:dismissViewController: في نظام التشغيل iOS 11 لأنّ SFAuthenticationSession لا يتم عرضه من خلال وحدة التحكّم في عرض التطبيق.

4.1.0

  • يستخدم SFAuthenticationSession على نظام التشغيل iOS 11.

4.0.2

  • لم يعُد يعتمد على GoogleAppUtilities.

4.0.1

  • يتم التبديل إلى تبعيات حزمة SDK المفتوحة المصدر.
  • لم يعُد ظهور زر تسجيل الدخول يعتمد على النطاقات المطلوبة.

4.0.0

  • أصبح بإمكان GoogleSignIn pod الآن اتّخاذ شكل إطار ثابت. استخدِم الأمر Import مع #import <GoogleSignIn/GoogleSignIn.h> في Objective-C.
  • إضافة إمكانية استخدام الوحدات يمكنك أيضًا استخدام @import GoogleSignIn; في Objective-C، إذا كانت الوحدة مفعّلة، وimport GoogleSignIn في Swift بدون استخدام ملف bridge-header.
  • بالنسبة إلى مستخدمي حزمة zip المستقلة، تتوفّر الآن عدة حِزم، ويجب إضافة جميعها إلى المشروع. ويتيح هذا التقسيم مرونة أكبر في حال تكرار التبعيات.
  • تزيل هذه السمة الطريقة المتوقّفة نهائيًا checkGoogleSignInAppInstalled من GIDSignIn.
  • يزيل السمتَين allowsSignInWithBrowser وallowsSignInWithWebView من GIDSignIn.
  • لم يعُد من الضروري إضافة معرّف الحزمة كمخطط عنوان URL متوافق مع التطبيق.

3.0.0

  • توفّر السمتَين givenName وfamilyName على GIDProfileData.
  • تسمح هذه السمة بضبط السمة loginHint على GIDSignIn لملء معرّف المستخدم أو عنوان بريده الإلكتروني مسبقًا في عملية تسجيل الدخول.
  • تمت إزالة الفئة UIViewController(SignIn) بالإضافة إلى السمة delegate من GIDSignInButton.
  • يتطلّب ذلك ضبط uiDelegate بشكلٍ صحيح على GIDSignIn وربط إطار عمل SafariServices.
  • تزيل هذه السمة الاعتماد على StoreKit.
  • يتيح استخدام bitcode.
  • يتطلّب الإصدار 7.0 من Xcode أو إصدارًا أحدث بسبب عدم توافق bitcode مع الإصدار 6 من Xcode.

2.4.0

  • تعديل زر تسجيل الدخول باستخدام شعار Google الجديد
  • يتيح تقييد النطاق لتسجيل الدخول.
  • تتيح إعادة تحميل رموز التعريف.

2.3.2

  • لم يعُد يتطلّب Xcode 7.

2.3.1

  • إصلاح عُطل في imageURLWithDimension: الخاص بـ "GIDProfileData"

2.3.0

  • يتطلّب الإصدار 7.0 من Xcode أو إصدارًا أحدث.
  • يستخدم SFSafariViewController لتسجيل الدخول على نظام التشغيل iOS 9. يجب ضبط uiDelegate حتى تعمل هذه الميزة.
  • تحسين عملية جلب ملف تعريف المستخدم
  • يتوافق مع GTMFetcherAuthorizationProtocol في GIDAuthentication.

2.2.0

  • متوافق مع الإصدار التجريبي من نظام التشغيل iOS 9. يُرجى العِلم أنّ هذا الإصدار من حزمة تطوير البرامج (SDK) الخاصة بخدمة &quot;تسجيل الدخول باستخدام حساب Google&quot; لا يتضمّن رمز bitcode، لذا عليك ضبط ENABLE_BITCODE على NO في مشروعك إذا كنت تستخدم Xcode 7.
  • تضيف هذه السمة معرّفات وصفية لقيود "التنسيق التلقائي" في GIDSignInButton.
  • لم يعُد يتطلّب ضبط signInSilentlyuiDelegate.

2.1.0

  • إصلاح مشاكل "التنسيق التلقائي" في GIDSignInButton
  • تضيف واجهة برمجة التطبيقات لإعادة تحميل رمز الدخول المميز في GIDAuthentication.
  • وصف أفضل للاستثناءات بشأن clientID غير المعيّن في GIDSignIn
  • تم إصلاح أخطاء بسيطة أخرى.

2.0.1

  • إصلاح الأخطاء

2.0.0

  • يتيح تسجيل الدخول من خلال UIWebView بدلاً من التبديل إلى متصفّح، ويمكن ضبطه باستخدام السمة الجديدة allowsSignInWithWebView.
  • يمكن الآن للتطبيقات التي أوقفت إمكانية التبديل إلى متصفّح من خلال السمة allowsSignInWithBrowser وعرض صفحة ويب داخل التطبيق من خلال السمة allowsSignInWithWebView عرض طلب يوجّه المستخدم إلى تنزيل تطبيق Google من "متجر التطبيقات".
  • إصلاح مشكلة حجم زر تسجيل الدخول عند تفعيل ميزة "التنسيق التلقائي"
  • يتصل signInSilently الآن بالمفوَّض مع ظهور خطأ عندما تكون قيمة hasAuthInKeychain هي NO كما هو موضّح في المستندات
  • إصلاحات أخرى بسيطة للأخطاء

1.0.0

  • حزمة تطوير برامج (SDK) جديدة تركّز على تسجيل الدخول وتتضمّن واجهة برمجة تطبيقات محدَّثة
  • زر تسجيل دخول معروض ديناميكيًا مع علامة تجارية سياقية
  • توفير الملف الشخصي الأساسي
  • تمت إضافة السمة allowsSignInWithBrowser