یادداشت‌های انتشار iOS و macOS SDK ورود به سیستم Google

۹.۱.۰

  • اجازه درخواست claims (در حال حاضر، فقط auth_time ) از طریق روش‌های ورود ( #550 ، #552 ، #553 ، #569 )
  • به‌روزرسانی addScopes: متدها در GIDSignIn برای شامل کردن claims قبلی ( #557 )
  • داخلی
    • در اسرع وقت در مقداردهنده اولیه ( #540 ) به keychainStore اختصاص دهید
    • اضافه شدن پشتیبانی برای سوئیفت ۶ ( #۵۴۳ ، #۵۴۴ ، #۵۴۶ )
    • به‌روزرسانی گردش‌های کاری GitHub Actions ( #545 ، #570 )
    • برنامه نمونه DaysUntilBirthday را برای پشتیبانی از ادعای auth_time به‌روزرسانی کنید ( #555 )
    • تغییر نام tokenClaims به claims در سراسر کد ( #568 )

۹.۰.۰

  • اجازه ارائه یک nonce سفارشی از طریق GSI به AppAuth ( #402 ، #476 )
  • رفع کد خطای نامعتبر در GIDSignIn ( #472 )
  • اضافه شدن پشتیبانی از GTMAppAuth 5 در macOS ( #522 )
  • رفع اشکالات مهاجرت محافظت‌شده با داده‌ها ( #533 )
  • داخلی
    • AppAuthCore را به عنوان وابستگی صریح اضافه کنید ( #470 )
    • به‌روزرسانی شبیه‌ساز آیفون از ۱۴ به ۱۵ ( #۴۹۴ )
    • رفع مشکل تست ادغام دکمه‌های سویفت ( #497 )
    • به‌روزرسانی runner به macos-13 ( #498 )
    • scorecards.yml را برای استفاده از upload-artifact@v4.6.2 ( #516 ) به‌روزرسانی کنید.
    • به‌روزرسانی وابستگی‌های AppAuth و GTMAppAuth ( #517 ، #521 )
    • رفع مشکل تست‌های یکپارچه‌سازی سوئیفت برای یک کاربر بازگشتی ( #518 )
    • .gitignore را به‌روزرسانی کنید تا ‎.build‎ و ‎Package.resolved‎ را شامل شود ( #520 )
    • به‌روزرسانی GIDSignInTest برای تنظیم و حذف صحیح NSUserDefaults ( #527 )

۸.۰.۰

  • نسخه عمومی با اضافه شدن پشتیبانی از Firebase App Check برای بررسی یکپارچگی برنامه شما هنگام ورود به سیستم با گوگل
  • حداقل پشتیبانی iOS را به iOS 12 به‌روزرسانی کنید ( #445 )
  • داخلی
    • به‌روزرسانی وابستگی AppCheckCore به نسخه ۱۱.۰ ( #۴۵۴ )
    • اضافه کردن instancetype return به تابع کمکی test ( #393 )
    • حذف ورودی ماژولار GTMSessionFetcher ( #403 )
    • افزایش پشتیبانی فعال از ۵.۲.۵ به ۵.۲.۸.۱ در گروه bundler ( #۴۲۹ )
    • حذف runner منسوخ شده macos-11 ( #447 )
    • به‌روزرسانی استفاده از API بایگانی منسوخ‌شده در آزمایش‌ها ( #449 )

۷.۱.۰-فیس-بتا-۱.۱.۰

  • نسخه بتا با پشتیبانی از توکن‌های Firebase App Check که برای تأیید صحت برنامه شما هنگام ورود به سیستم با گوگل استفاده می‌شوند.
  • پشتیبانی از مانیفست حریم خصوصی که در نسخه ۷.۱.۰ منتشر شد، اضافه شد.
  • داخلی

۷.۱.۰

  • به‌روزرسانی به Swift 5.0 در غلاف GoogleSignInSwiftSupport ( #317 )
  • به‌روزرسانی‌های مستندات ( #۳۵۱ ، #۳۷۲ )
  • اضافه کردن مانیفست حریم خصوصی ( #382 )
  • داخلی
    • رفع خطای تایپی در SFSafariViewController ( #291 )
    • رفع مشکل استفاده از OCMock در تست واحد ( #298 )
    • استفاده از پروتکل نماینده جدید از GTMAppAuth 4.0.0 ( #299 )
    • قبل از فراخوانی -[GIDSignIn restorePreviousSignIn:] ( #301 ) مطمئن شوید که completion nil نباشد.
    • حذف دونده‌ی macos-11 در گردش‌های کاری GitHub ( #302 )
    • مرجع نام دکمه را به‌روزرسانی می‌کند تا تست‌های اتوماسیون رابط کاربری با موفقیت انجام شوند ( #308 )

۷.۱.۰-فیس-بتا-۱.۰.۰

  • نسخه بتا با پشتیبانی از توکن‌های Firebase App Check که برای تأیید صحت برنامه شما هنگام ورود به سیستم با گوگل استفاده می‌شوند.
  • داخلی
    • به‌روزرسانی حداقل نسخه iOS فایل پادفایل SignInSample ( #355 )
    • به‌روزرسانی هدف تست واحد AppCheckExample برای موفقیت در طول ادغام مداوم ( #356 )

۷.۱.۰-face-eap-1.0.0

  • نسخه برنامه دسترسی زودهنگام (EAP) با پشتیبانی از توکن‌های Firebase App Check که برای تأیید صحت برنامه شما هنگام ورود به سیستم با گوگل استفاده می‌شوند، منتشر شد.
  • داخلی
    • رفع خطای تایپی در SFSafariViewController ( #291 )
    • حذف دونده‌ی macos-11 در گردش‌های کاری GitHub ( #302 )
    • مرجع نام دکمه را به‌روزرسانی می‌کند تا تست‌های اتوماسیون رابط کاربری با موفقیت انجام شوند ( #308 )
    • قبل از فراخوانی -[GIDSignIn restorePreviousSignIn:] ( #301 ) مطمئن شوید که completion nil نباشد.
    • استفاده از پروتکل نماینده جدید از GTMAppAuth 4.0.0 ( #299 )

۷.۰.۰

  • اکنون تمام پیکربندی‌ها از طریق فایل Info.plist شما قابل ارائه هستند. ( #228 )
    • برای پیکربندی SDK از کلیدهای زیر در جفت‌های <key>KEY</key><string>VALUE</string> استفاده کنید:
      • GIDClientID (الزامی)
      • GIDServerClientID (اختیاری)
      • GIDHostedDomain (اختیاری)
      • GIDOpenIDRealm (اختیاری)
  • پشتیبانی از همزمانی Swift . ( #187 )
  • بهبودهای سطح API ( #۲۴۹ ، #۲۲۸ ، #۱۸۷ )
    • GIDSignIn
      • ویژگی configuration جدید.
      • آرگومان‌های Configuration: از متدهای signIn: حذف شدند.
      • addScopes: حذف و به GIDGoogleUser اضافه شد.
      • callback: آرگومان‌ها برای completion: برای متدهای ناهمزمان که بلوک‌ها را می‌گیرند.
    • GIDGoogleUser
      • ویژگی configuration جدید.
      • متد جدید addScopes: از GIDSignIn منتقل شد.
      • ویژگی authentication حذف و با این جایگزین شد:
        • ویژگی جدید accessToken .
        • ویژگی جدید refreshToken .
        • ویژگی جدید idToken .
        • ویژگی جدید fetcherAuthorizer .
        • متد جدید refreshTokensIfNeededWithCompletion:
    • کلاس جدید GIDToken برای نمایش توکن‌های دسترسی، به‌روزرسانی و شناسه در GIDGoogleUser .
    • کلاس جدید GIDSignInResult برای نمایش نتیجه‌ی یک جریان موفق signIn یا addScopes.
    • تعاریف نوع بلوک GIDSignInCallback ، GIDDisconnectCallback و GIDAuthenticationAction حذف شد.

۶.۲.۴

  • وابستگی GTMSessionFetcher به‌روزرسانی شد تا نسخه‌های ۲.x را نیز پشتیبانی کند. ( #۲۰۷ )

۶.۲.۳

  • رفع مشکل بارگذاری منابع در GoogleSignInSwift با استفاده از CocoaPods use_frameworks! ( #197 )
  • جلوگیری از خطاهای ساخت برای GoogleSignInSwift در سناریوهای خاص هنگام استفاده از Swift Package Manager. ( #166 )

۶.۲.۲

  • جلوگیری از خطاهای ساخت برای GoogleSignInSwift هنگام استفاده از Swift Package Manager. ( #157 )
  • جلوگیری از خطای ساخت در Xcode نسخه ۱۲ و قبل از آن. ( #۱۵۸ )

۶.۲.۱

  • از GoogleSignInSwiftSupport به عنوان نام CocoaPod پشتیبانی Swift استفاده کنید. ( #137 )

۶.۲.۰

  • پشتیبانی از macOS. ( #104 )
  • دکمه‌ی «ورود با گوگل» در SwiftUI اضافه شد. ( #103 )
  • قابلیت درخواست محدوده‌های اضافی در زمان ورود به سیستم اضافه شد. ( #30 )
  • چندین مشکل برطرف شد. ( #87 ، #106 )

۶.۱.۰

  • نمونه برنامه جدید سوئیفت که SwiftUI را نشان می‌دهد. ( #63 )
  • پشتیبانی از مک کاتالیست
  • بهبودهایی در پیاده‌سازی addScopes . ( #68 ، #70 )

۶.۰.۲

  • مطمئن شوید که ماژول‌های وارد شده هنگام ساخت به عنوان کتابخانه قابل استفاده باشند. ( #53 )

۶.۰.۱

  • رفع مشکل فراخوانی نشدن توابع بازگشتی تو در تو برای متدهای signIn و addScopes. ( #29 )

۶.۰.۰

  • ورود به سیستم گوگل برای iOS اکنون متن‌باز است.
  • پشتیبانی از مدیریت بسته‌های سوئیفت.
  • پشتیبانی از شبیه‌ساز در مک‌های M1.
  • به‌روزرسانی‌های سطح API
    • GIDSignIn
      • sharedInstance اکنون یک ویژگی کلاس است.
      • signIn اکنون به signInWithConfiguration:presentingViewController:callback: و همیشه محدوده‌های پروفایل پایه را درخواست می‌کند.
      • addScopes:presentingViewController:callback: روش جدیدی برای اضافه کردن scopeهایی فراتر از پروفایل پایه به کاربری است که در حال حاضر وارد سیستم شده است.
      • اکنون restorePreviousSignIn restorePreviousSignInWithCallback: است.
      • disconnect اکنون disconnectWithCallback: است.
      • پروتکل GIDSignInDelegate به نفع بلوک‌های GIDSignInCallback و GIDDisconnectCallback حذف شده است.
      • تمام ویژگی‌های پیکربندی جریان ورود به سیستم به GIDConfiguration منتقل شده‌اند.
    • کلاس GIDConfiguration برای نمایش پیکربندی مورد نیاز برای ورود کاربر اضافه شده است.
    • GIDAuthentication
      • getTokensWithHandler: اکنون doWithFreshTokens: است.
      • typedef مربوط به GIDAuthenticationHandler GIDAuthenticationAction تغییر نام داده است.
      • refreshTokensWithHandler: حذف شده است، به جای آن doWithFreshTokens: استفاده کنید.
    • GIDSignInButton دیگر به صورت داخلی GIDSignIn را فراخوانی نمی‌کند و برای اینکه بتوانید signInWithConfiguration:presentingViewController:callback: برای شروع جریان ورود به سیستم فراخوانی کنید، باید به یک IBAction یا مشابه آن متصل شود.

۵.۰.۲

  • رفع مشکل ارسال کد خطای اشتباه به signIn:didSignInForUser:withError: هنگامی که کاربر در حین ورود به سیستم، کادر گفتگوی رضایت iOS را لغو می‌کند.

۵.۰.۱

  • مشکلی که باعث می‌شد روند ورود به سیستم در iOS 13 به درستی شروع نشود، برطرف شد.
  • توزیع zip به Xcode نسخه ۱۱ یا بالاتر نیاز دارد.

۵.۰.۰

  • تغییرات در GIDSignIn
    • uiDelegate با presentingViewController جایگزین شده است.
    • hasAuthInKeychain با hasPreviousSignIn جایگزین شده است.
    • signInSilently با restorePreviousSignIn جایگزین شده است.
    • کد خطای منسوخ‌شده‌ی kGIDSignInErrorCodeNoSignInHandlersInstalled حذف شد.
  • تغییرات در احراز هویت GID
    • متدهای منسوخ شده getAccessTokenWithHandler: و refreshAccessTokenWithHandler: حذف شدند.
  • تغییرات در GIDGoogleUser
    • ویژگی منسوخ accessibleScopes حذف شد و به جای آن grantedScopes استفاده کنید.
  • وابستگی‌هایی به AppAuth و GTMAppAuth اضافه می‌کند.
  • وابستگی به GoogleToolboxForMac را حذف می‌کند.
  • پشتیبانی از iOS 7 را متوقف می‌کند.

۴.۴.۰

  • وابستگی به GTM OAuth 2 را حذف می‌کند.

۴.۳.۰

  • از مدیریت موبایل سازمانی گوگل پشتیبانی می‌کند.

۴.۲.۰

  • grantedScopes به GIDGoogleUser اضافه می‌کند، که امکان تأیید اینکه کدام scopeها پس از ورود موفقیت‌آمیز اعطا شده‌اند را فراهم می‌کند.
  • accessibleScopes در GIDGoogleUser منسوخ می‌کند، به جای آن grantedScopes استفاده کنید.
  • GIDSignInButton برای زبان‌های hi (هندی) و fr-CA (فرانسوی (کانادا)) بومی‌سازی می‌کند.
  • وابستگی را به چارچوب LocalAuthentication سیستم اضافه می‌کند.

۴.۱.۲

  • پشتیبانی pod try برای GoogleSignIn CocoaPod اضافه شد.

۴.۱.۱

  • مشکلی که باعث می‌شد signInWillDispatch:error: در GIDSignInUIDelegate در iOS 11 فراخوانی نشود، برطرف شد. لطفاً توجه داشته باشید که قرار نیست هیچ‌کدام signIn:presentViewController: و signIn:dismissViewController: در iOS 11 فراخوانی شوند، زیرا SFAuthenticationSession توسط کنترلر نمای برنامه ارائه نمی‌شود.

۴.۱.۰

  • از SFAuthenticationSession در iOS 11 استفاده می‌کند.

۴.۰.۲

  • دیگر به GoogleAppUtilities وابسته نیست.

۴.۰.۱

  • به وابستگی‌های پاد متن‌باز تغییر می‌کند.
  • ظاهر دکمه ورود دیگر به محدوده‌های درخواستی بستگی ندارد.

۴.۰.۰

  • GoogleSignIn pod اکنون به شکل یک فریم‌ورک استاتیک درمی‌آید. با استفاده از #import <GoogleSignIn/GoogleSignIn.h> در Objective-C، آن را ایمپورت کنید.
  • پشتیبانی از ماژول اضافه شد. همچنین می‌توانید در Objective-C، در صورت فعال بودن ماژول، @import GoogleSignIn; ‎ استفاده کنید و import GoogleSignIn .
  • برای کاربران توزیع مستقل زیپ، اکنون چندین فریم‌ورک ارائه شده است و همه آنها باید به یک پروژه اضافه شوند. این تجزیه، انعطاف‌پذیری بیشتری را در صورت وجود وابستگی‌های تکراری فراهم می‌کند.
  • متد منسوخ شده checkGoogleSignInAppInstalled از GIDSignIn حذف می‌کند.
  • ویژگی‌های allowsSignInWithBrowser و allowsSignInWithWebView را از GIDSignIn حذف می‌کند.
  • دیگر نیازی به اضافه کردن شناسه بسته به عنوان یک طرح URL پشتیبانی شده توسط برنامه نیست.

۳.۰.۰

  • ویژگی‌های givenName و familyName را روی GIDProfileData ارائه می‌دهد.
  • به شما امکان می‌دهد با تنظیم ویژگی loginHint در GIDSignIn شناسه یا آدرس ایمیل کاربر را در جریان ورود به سیستم از قبل وارد کنید.
  • دسته UIViewController(SignIn) و همچنین ویژگی delegate از GIDSignInButton حذف شدند.
  • مستلزم آن است که uiDelegate به درستی روی GIDSignIn تنظیم شده باشد و چارچوب SafariServices نیز لینک شده باشد.
  • وابستگی به StoreKit را حذف می‌کند.
  • پشتیبانی از بیت‌کد را ارائه می‌دهد.
  • به دلیل ناسازگاری بیت‌کد با Xcode 6، به Xcode 7.0 یا بالاتر نیاز دارد.

۲.۴.۰

  • دکمه ورود به سیستم با لوگوی جدید گوگل به‌روزرسانی شد.
  • از محدودیت دامنه برای ورود به سیستم پشتیبانی می‌کند.
  • امکان به‌روزرسانی توکن‌های شناسه را فراهم می‌کند.

۲.۳.۲

  • دیگر نیازی به Xcode 7 نیست.

۲.۳.۱

  • رفع مشکل از کار افتادن imageURLWithDimension: در فایل GIDProfileData .

۲.۳.۰

  • به Xcode نسخه ۷.۰ یا بالاتر نیاز دارد.
  • از SFSafariViewController برای ورود به سیستم در iOS 9 استفاده می‌کند. برای اینکه این قابلیت کار کند، باید uiDelegate تنظیم شده باشد.
  • دریافت پروفایل کاربر را بهینه می‌کند.
  • از پروتکل مجوز GTMFetcher در احراز هویت GID پشتیبانی می‌کند.

۲.۲.۰

  • سازگار با iOS 9 (بتا). توجه داشته باشید که این نسخه از Sign-In SDK شامل بیت‌کد نمی‌شود، بنابراین اگر از Xcode 7 استفاده می‌کنید، باید ENABLE_BITCODE را در پروژه خود روی NO تنظیم کنید.
  • شناسه‌های توصیفی برای محدودیت‌های چیدمان خودکار GIDSignInButton اضافه می‌کند.
  • signInSilently دیگر نیازی به تنظیم uiDelegate ندارد.

۲.۱.۰

  • مشکلات مربوط به چیدمان خودکار با GIDSignInButton برطرف شد.
  • API را برای به‌روزرسانی توکن دسترسی در GIDAuthentication اضافه می‌کند.
  • شرح استثنای بهتر برای clientID اختصاص داده نشده در GIDSignIn.
  • سایر رفع اشکالات جزئی.

۲.۰.۱

  • رفع اشکالات

۲.۰.۰

  • به جای تغییر برنامه به مرورگر، از ورود به سیستم از طریق UIWebView پشتیبانی می‌کند، که با ویژگی جدید allowsSignInWithWebView قابل تنظیم است.
  • اکنون برنامه‌هایی که قابلیت تغییر برنامه به مرورگر از طریق allowsSignInWithBrowser و نمایش وب درون برنامه از طریق allowsSignInWithWebView را غیرفعال کرده‌اند، این امکان را دارند که اعلانی را نمایش دهند که به کاربر دستور می‌دهد برنامه گوگل را از اپ استور دانلود کند.
  • مشکل اندازه دکمه ورود به سیستم هنگام فعال بودن طرح‌بندی خودکار برطرف شد
  • اکنون signInSilently وقتی hasAuthInKeychain مطابق مستندات NO باشد، delegate را با خطا فراخوانی می‌کند.
  • رفع اشکالات جزئی دیگر

۱.۰.۰

  • SDK جدید با محوریت ورود به سیستم و API به‌روزرسانی‌شده
  • دکمه ورود به سیستم با رندر پویا و برندسازی متنی
  • پشتیبانی از پروفایل پایه
  • ویژگی allowSignInWithBrowser اضافه شد