GoogleSignInSDK ใช้งาน UIWebView
ทุกคนรู้ว่า GoogleSignInSDK (iOS) เวอร์ชันใดที่การใช้งาน UIWebView ถูกลบออกเวอร์ชัน 4.4.0 ครอบคลุมหรือไม่
คำตอบ
เนื่องจากไม่มีการเอ่ยถึงใด ๆ เกี่ยวกับเรื่องนี้อย่างเป็นทางการในบันทึกประจำรุ่นคุณสามารถใช้ข้อเสนอแนะจากนี้UIWebViewคำตอบของการตรวจสอบเวอร์ชันได้ลบออกอ้างอิงถึง
เล่นgrep -r UIWebView .คำสั่งในไดเรกทอรีโครงการของคุณจะต้องเป็นผลผลิตไฟล์ในที่ "UIWebView สตริง" ปรากฏขึ้นแม้แต่คนไบนารี
ฉันไปข้างหน้าและติดตั้งGoogleSignInในโครงการที่ว่างเปล่า ตะเข็บที่เวอร์ชัน 4.4.0 ยังคงใช้UIWebViewอยู่ ผลลัพธ์ของgrep -r UIWebView .ไดเร็กทอรีโปรเจ็กต์คือ:
~ grep -r UIWebView . ./Pods/GoogleSignIn/CHANGELOG.md:- Supports sign-in via UIWebView rather than app switching to a browser, Binary file ./Pods/GoogleSignIn/Frameworks/GoogleSignIn.framework/GoogleSignIn matches
เห็นได้ชัดว่าไฟล์ไบนารีภายในGoogleSignIn.frameworkมีการอ้างอิงดังกล่าว
แต่เนื่องจากเวอร์ชัน 5.0.0 มีการอ้างอิงUIWebViewเฉพาะในREADME.mdและCHANGELOG.mdไฟล์:
~ grep -r UIWebView . ./Pods/AppAuth/README.md:for the auth request. `UIWebView` and `WKWebView` are explicitly *not* ./Pods/GoogleSignIn/CHANGELOG.md:- Supports sign-in via UIWebView rather than app switching to a browser,
ดังนั้นหากคุณต้องการอัปโหลดแอปพลิเคชันใหม่ใน App Store คุณอาจต้องอัปเกรดเป็นเวอร์ชัน 5.0.0 เป็นอย่างน้อย
เมื่อเดือนที่แล้วฉันประสบปัญหานี้ ในที่สุด googling ก็แก้ปัญหานี้ได้ด้วยวิธีต่อไปนี้
เพียงแสดงความคิดเห็นในไลบรารีพ็อดทั้งหมดและลองใช้กับไฟล์พ็อดนี้เท่านั้น
pod 'GoogleSignIn'
แล้วรับ
pod install
จากนั้นวางบรรทัดนี้ในเทอร์มินัล
~ grep -r UIWebView
หมายเหตุ: สังเกตว่าบรรทัดด้านบนมีจุด (.) ในตัวอักษรตัวสุดท้ายและตรวจสอบว่าไม่พบ "UIWebView"
หากไม่พบ 'UIWebView' แสดงว่าไฟล์พ็อดนี้ไม่เป็นไร
อีกครั้งแยกไฟล์ pod หนึ่งไฟล์และทำซ้ำขั้นตอนที่ 1 ขั้นตอนที่ 2 และขั้นตอนที่ 3 จำเป็นทีละไฟล์เนื่องจากไฟล์พ็อดหนึ่งไฟล์อาจขึ้นอยู่กับไฟล์พ็อดอื่น
หากคุณทำตามขั้นตอนเหล่านี้อย่างรอบคอบฉันหวังว่า 'UIWebView' จะลบออกจากไฟล์พ็อดทั้งหมด