728x90 ๋ฐ์ํ ios39 [Flutter Error] CocoaPods could not find compatible versions for pod "cloud_fire ์๋ ํ์ธ์ Foma ๐ป ์ ๋๋ค! ์ค๋์ ์ค๋๋ง์ ํ๋ฌํฐ ๊ณต๋ถ๋ฅผ ํ๋๋ฐ ํ์ด์ด๋ฒ ์ด์ค์ ์ฐ๋ ๊ณผ์ ์์ ์ค๋ฅ๊ฐ ๋ฐ์ํ์ต๋๋ค. ์ ๋ชฉ์ฒ๋ผ "CocoaPods could not find compatible versions for pod "cloud_firestore": In Podfile" ๋ผ๋ ์๋ฌ์์ต๋๋ค. ํด์์ ํด๋ณด๋ "์ฝ์ฝ์ํ์์ ํ์ด์ด์คํ ์ด๊ฐ ํธํ๋๋ ๋ฒ์ ์ ์ฐพ์ ์ ์์ด" ์์ต๋๋ค. ํด๊ฒฐ ๋ฐฉ๋ฒ์ Flutter ํ๋ก์ ํธ์ iOS ํด๋๋ก ์ด๋ํ๋ฉด Podfile์ด ์์๊ฑฐ์์. ์๋์ ๊ฐ์ด Podfile์์ #platform:ios, '9.0' ์ด๋ผ๊ณ ์ ํ์์๊ฑฐ์์. ์ด ๋ถ๋ถ์ #์ ์์ ์ฃผ๊ณ ios๋ฒ์ ์ 10.0์ผ๋ก ์ฌ๋ ค์ฃผ๋ฉด ์๋ฌ๊ฐ ํด๊ฒฐ๋ ๊ฒ๋๋ค. platform :ios, '10.0' 2021. 11. 12. [iOS Error] UICollectionView ReusableView ์๋ฌ ์๋ ํ์ธ์ Foma ๐ป ์ ๋๋ค! ์ค๋ ๋ง๋ ์๋ฌ๋ ๋ฐ๋ก ์์ ๊ฐ์ด 'NSInternalInconsistencyException' ์ค๋ฅ ์์ต๋๋ค. ์ด๊ฒ ๋ฌด์จ ๋ง์ด๋๋ฉด ์ปฌ๋ ์ ๋ทฐ์์ ReusableView๋ฅผ ์ฌ์ฉํ๋๋ฐ dequeReusableCell๋ก ๋ณดํต๊ณผ ๊ฐ์ด ์ธํ ํ๊ธฐ ๋๋ฌธ์ ๋๋ค. ์ ์ฝ๋๋ฅผ ๋ณด๋ฉด ์๋์ ๊ฐ์ด ์ปฌ๋ ์ ๋ทฐ ํค๋์ ํธํฐ๋ฅผ ReusableView๋ก ๋ง๋ค์ด์ ์ธํ ํ๋๋ฐ์. ์๋์ ๊ฐ์ด dequeํ๋ ๋ถ๋ถ์ด ์ผ๋ฐ ์ ๊ณผ ๊ฐ์ด dequeReusableCell๋ก ๋์ด์์ต๋๋ค. func collectionView(_ collectionView: UICollectionView, viewForSupplementaryElementOfKind kind: String, at indexPath: IndexPath) -.. 2021. 11. 10. [iOS/UI] ์ด๋ฏธ์ง ์ค์ผ๋ก ํ๋/์ถ์ํ๊ธฐ(feat. ์คํฌ๋กค๋ทฐ) ์๋ ํ์ธ์ Foma ๐ป ์ ๋๋ค! ์ค๋ ์์๋ณผ ๊ฒ์ ์ด๋ฏธ์ง๋ฅผ ํ๋ํ๋ ๋ฐฉ๋ฒ์ ๋๋ค. ๋ฐ๋ก ์์ํ ๊ฒ์~ Storyboard ๋ ์ด์์์ ์๋์ ๊ฐ์ด ์คํฌ๋กค๋ทฐ์ ์ด๋ฏธ์ง๋ทฐ๊ฐ ํฌํจ๋๊ฒ ํด์ฃผ์ธ์. ViewController ๋จผ์ ์ด๋ฏธ์ง๋ทฐ์ ์คํฌ๋กค๋ทฐ๋ฅผ ์ฐ๊ฒฐํด์ฃผ์ธ์. @IBOutlet weak var imageView: UIImageView! @IBOutlet weak var scrollView: UIScrollView! ์ด๊ธฐ ์ธํ ์ ์๋์ ๊ฐ์ด ํด์ฃผ์ธ์. 1. ์ด๋ฏธ์ง๋ทฐ์ ์ด๋ฏธ์ง๋ฅผ ์ํ๋ ๊ฒ์ผ๋ก ์ธํ ํด์ค๋๋ค. 2. ์คํฌ๋กค๋ทฐ์ ๋๋ฆฌ๊ฒ์ดํธ๋ฅผ ํ์ฌ ๋ทฐ์ปจํธ๋กค๋ฌ๋ก ์ค์ ํด์ฃผ์ธ์. (์์ง ์ค๋ฅ๊ฐ ๋ ๊ฑฐ์์.) 3. ์คํฌ๋กค๋ทฐ์ ์ฒ์ ์ค์ค์ผ์ผ์ ์ ํด์ค๋๋ค. (๋ฐ๋ก ์ค์ ํ์ง ์์ผ๋ฉด 1.0์ ๋๋ค.) 4. ์คํฌ๋กค๋ทฐ์ ์ต์ ์ค์ค์ผ์ผ์ ์ ํด์ค๋๋ค... 2021. 11. 3. [iOS Error] The compiler is unable to type-check this expression in reasonable time; try breaking up the expression into distinct sub-expressions ์๋ ํ์ธ์ Foma ๐ป ์ ๋๋ค! ์ค๋์ ์ ๋ชฉ๊ณผ ๊ฐ์ด ํ์ ์ถ๋ก ์๋ฌ๋ฅผ ๋ง๋๊ฒ ๋์๋๋ฐ์. "The compiler is unable to type-check this expression in reasonable time; try breaking up the expression into distinct sub-expressions " ์๋ ๊ทผ๋ฐ... ๋ถ๋ช ์ ์๋ ์๋๋๋ฐ ์ ์ด๋ฐ ์ค๋ฅ๊ฐ ๋จ์ง...? ํ๊ณ ๊ตฌ๊ธ๋งํด์ ์ฐพ์๋ณด์๋๋ Xcode 12 Beta์์ ์๊ธฐ๋ ์ค๋ฅ๋ผ๊ณ ํ๋ค์... ํด์์ ํด๋ณด๋ฉด ์๋์ ๊ฐ์ต๋๋ค. "์ปดํ์ผ๋ฌ์์ ํด์ํ๊ธฐ์ ๋ ์ฝ๋๊ฐ ๋๋ฌด ๋ณต์กํด..ใ ์ข๋ง ์ชผ๊ฐ์ ์จ์ค..." ์ ์๋ ์ฝ๋๊ฐ ์ด์ ๊ฐ์ด ๋์ด์์์ด์.. (์ filterํด๋๊ณ ... map์ ๋ ์ผ์ง...) filter์ ๋๊ฐ์.. 2021. 11. 2. [Design Pattern] RIBs๋?(feat. Uber) ์๋ ํ์ธ์ Foma๐ ์ ๋๋ค! ์ค๋์ Uber์์ ๋ง๋ ํ๋ ์์ํฌ์ธ RIBs์ ๋ํด์ ์์๋ณด๋๋ก ํ๊ฒ ์ต๋๋ค. iOS๊ณ์์ ์์ฃผ ๊ณ ์์ด์ '๋ฏผ์๋ค'๋๋ ์ฌ๋ฌ ๋์์ธ ํจํด์ ๊ฑฐ์ณ์ RIBs์ ์ ์ฐฉํ๊ฒ ๋์๋ค๊ณ ํ๊ณ ๋ ๋ง์ ํ์ฌ์์ RIBs ํ๋ ์์ํฌ๋ฅผ ์ฌ์ฉํ๊ณ ์๋๋ผ๊ตฌ์. ๊ทธ๋์ ์ด๋ค ์ ์ด ์ฅ์ ์ด๊ณ ๋ ์ด๋ป๊ฒ ์ฌ์ฉํ๋์ง์ ๋ํด์ ๋ค๋ค๋ณด๋๋ก ํ๊ฒ ์ต๋๋ค! ๋ฐ๋ก ์์ํ ๊ฒ์~ RIBs๋? ๊ณต์ ๊นํ์์ ์ด๋ ๊ฒ ์๊ฐํฉ๋๋ค. RIBs๋ Uber์ ๋ชจ๋ฐ์ผ ํฌ๋ก์ค ํ๋ซํผ ์ํคํ ์ฒ ํ๋ ์์ํฌ์ ๋๋ค. RIB์ด๋ผ๋ ์ด๋ฆ์ ์ด ์ํคํ ์ฒ์ ํต์ฌ ๊ตฌ์ฑ ์์์ธ Router, Interactor ๋ฐ Builder์ ์ฝ์ด์ ๋๋ค. ์ด ํ๋ ์์ํฌ๋ ๋ง์ ์์ ์์ง๋์ด์ ์ค์ฒฉ ์ํ๊ฐ ์๋ ๋ชจ๋ฐ์ผ ์ฑ์ ์ํด ์ค๊ณ๋์์ต๋๋ค. ์ ๊ณต RIBs ์ํค.. 2021. 8. 18. [iOS] Code Snippet ์ฌ์ฉํด๋ณด๊ธฐ(feat. ์ฝ๋ ์๋์์ฑ) ์๋ ํ์ธ์ Foma ๐ ์ ๋๋ค! ์ค๋์ Xcode์์ ์ํ๋ ์ฝ๋๋ฅผ ๋จ์ถ์ด๋ง ์ ๋ ฅํ๋ฉด ์๋์ผ๋ก ์์ฑํด์ฃผ๋ Code snippet์ ๋ํด์ ์์๋ณด๊ฒ ์ต๋๋ค. ๋ฐ๋ก ์์ํ ๊ฒ์~ Code Snippet์ด๋? ์ฝ๋ ์ค๋ํซ์ ์์ฃผ ์ฐ๋ ์ฝ๋๋ค์ ๋ฏธ๋ฆฌ ์์ฑํด๋๊ณ ๋จ์ถ์ด๋ฅผ ์ด์ฉํด์ ๊ฐํธํ๊ฒ ์ฝ๋๋ฅผ ์์ฑํ ์ ์๋ ์์ฃผ ์ ์ฉํ ๊ธฐ๋ฅ์ ๋๋ค. ํ์์ guard๋ฌธ์ด๋,switch๋ฌธ์ ์ ๋ ฅํ๋ฉด ์๋์ ๊ฐ์ด ๋จ๋๊ฑธ ๋ง์ด ๋ณด์ จ์๊ฑฐ์์. Guard Statement,Switch Statement๋ฅผ ์ํฐ๋ฅผ ํ๋ฉด ์๋์ ๊ฐ์ด ์๋์ผ๋ก ์ฝ๋๊ฐ ์ ๋ ฅ๋๋ ๊ฒ์ด ๋ฐ๋ก ์ฝ๋ ์ค๋ํซ์ ๋๋ค. Code Snippet ์ฌ์ฉํด๋ณด๊ธฐ ์ด๋ฏธ ๋ง๋ค์ด์ง ์ฝ๋ ์ค๋ํซ์ด ๋ง์ง๋ง ์์ฃผ ์ฐ๋ ์ฝ๋๋ ๋ชจ๋ ๋ค๋ฅด์์์? ์ด์ ์ฝ๋ ์ค๋ํซ์ ์ปค์คํ ์์ ์ฌ์ฉํ๋ ๋ฐฉ๋ฒ์ ๋ํด์.. 2021. 8. 17. [iOS] ํธ์ฌ ์๋ฆผ ํญํ์ ๋ ํน์ ํ์ด์ง๋ก ์ด๋ํ๊ธฐ(How to handle Push Notification?) ์๋ ํ์ธ์ Foma๐ ์ ๋๋ค! ์ค๋์ ์ ์ ๊ฐ ํธ์ฌ ์๋ฆผ๋ฐ๋ฅผ ํญํ์ ๋ ํน์ ํ์ด์ง๋ก ์ด๋ํ๋ ๊ฒ์ ์ ๋ฆฌํด๋ณด๋๋ก ํ๊ฒ ์ต๋๋ค. ๋ฐ๋ก ์์ํ ๊ฒ์~ Preview AppDelegate ๋จผ์ UserNotifications๋ฅผ import ํด์ค๋๋ค. import UserNotifications ์๋์ ๊ฐ์ด userNotificationCenter๋ฅผ ๋ง๋ค์ด์ฃผ์ธ์. let userNotificationCenter = UNUserNotificationCenter.current() didFinishLaunchingWithOptions ๋ฉ์๋์ ์์์ ๋ง๋ค์ด์ค userNotificationCenter์ ๋๋ฆฌ๊ฒ์ดํธ๋ฅผ self๋ก ํด์ค๋๋ค. application.registerForRemoteNotifications()๋ ์์ฑํด.. 2021. 8. 9. [iOS] iOS ์ฑ ์ถ์ํ๋ ๋ฒ ์์๋ณด๊ธฐ ์๋ ํ์ธ์ Foma๐ ์ ๋๋ค! ์ค๋์ ์ฑ์ ์ถ์ํ๋ ๋ฐฉ๋ฒ์ ๋ํด์ ์์๋ณด๊ฒ ์ต๋๋ค. ๋ฐ๋ก ์์ํ ๊ฒ์~ Xcode Xcode ์๋จ ํญ์์ Product-Archive๋ฅผ ๋๋ฌ์ค๋๋ค. (๋๋ฐ์ด์ค๋ ์ค์ ๋๋ฐ์ด์ค์ ์ฐ๊ฒฐ๋์ด ์๊ฑฐ๋ Any iOS Device๋ฅผ ์ ํํด์ฃผ์ธ์) Archive๊ฐ ๋ชจ๋ ๋๋ฌ๋ค๋ฉด Distribute App์ ๋๋ฌ์ ๋ฐฐํฌํด์ค๋๋ค. (Archive๋ ์ฑ ํฌ๊ธฐ์ ๋ฐ๋ผ ๋ค๋ฅด์ง๋ง ํ 10๋ถ ์ ๋ ์์๋๋ ๊ฒ ๊ฐ์ต๋๋ค.) ๋ฐฐํฌํ๋ ๋ฐฉ๋ฒ์ ๋ํด ๋ฌผ์ด๋ณด๋ค์. App Store Connect๋ฅผ ๋๋ฌ์ฃผ์ธ์. ์ฑ์คํ ์ด ์ปค๋ฅํธ์ Upload ํด์ฃผ์ธ์! ๋ฐฐํฌ ์ต์ ์ ์ ํํ๋๋ฐ ๋ ๊ฐ ๋ค ์ ํํด์ฃผ์ธ์! ์ฑ ๊ด๋ฆฌํ๋ ๋ฐฉ๋ฒ์ ๋ํด์ ๋ฌผ์ด๋ณด๋ค์. Automatically manage signing์ ์ ํํด์ค๋๋ค. ์ฑ์ .. 2021. 7. 29. [iOS] UIKit์์ SwiftUI Preview ์ฌ์ฉํด๋ณด๊ธฐ ์๋ ํ์ธ์ Foma๐ ์ ๋๋ค! ์ผ๋ง ์ ์ ์ ํ๋ธ์์ ๋งํ๊ฒฝ iOS ๊ฐ๋ฐ๊ธฐ๋ฅผ ๋ณด๋ค๊ฐ (https://www.youtube.com/watch?v=W_1FoBtaV7A) UI๋ฅผ ๊ฐ๋ฐํ๋๋ฐ ์คํ ๋ฆฌ๋ณด๋์ ์ฝ๋๋ก ๊ตฌํํ๋ ์ฅ๋จ์ ์ ๋ชจ๋ ์ด์ฉํ ์ ์๋๊ฒ UIKit์์ Preview๋ฅผ ์ฌ์ฉํ๋ ๊ฒ์ด๋ผ๊ณ ํ๋๋ผ๊ตฌ์. Preview๋ฅผ ์ฌ์ฉํ๋ฉด ์ฝ๋๋ก ํ๋ฉด์ ๊ตฌํํ๋๋ผ๋ ์ง๊ด์ ์ผ๋ก ํ๋ฉด์ ๋ณผ ์ ์๊ณ ๋ํ ์คํ ๋ฆฌ๋ณด๋๋ก ๊ฐ๋ฐํ ๋ ์๊ธฐ๋ ์ถฉ๋ ๋ฌธ์ ๋ฑ์ ์์ ์ค ์ ์๊ธฐ ๋๋ฌธ์ด์ฃ ! ๊ทธ๋์ ์ค๋์ UIKit์์ Preview๋ฅผ ์ด๋ป๊ฒ ์ ์ฉํ๋์ง์ ๋ํด ์์๋ณด๊ฒ ์ต๋๋ค~ UIViewController + Extension ์๋์ ๊ฐ์ด ํ๋ฆฌ๋ทฐ ์ต์คํ ์ ์ ๋ง๋ค์ด์ค์ ์ด๋ค ๋ทฐ์ปจํธ๋กค๋ฌ์์๋ ์ธ ์ ์๊ฒ ๋ง๋ค์ด์ค๋๋ค. import Swif.. 2021. 7. 28. [iOS] TestFlight ํ ์คํธ ์ฌ์ฉ์ ์ด๋ํ๊ธฐ ์๋ ํ์ธ์ Foma๐ ์ ๋๋ค. ์ง๋ ๊ธ์์ ํ ์คํธ ํ๋ผ์ดํธ๋ฅผ ์ด๋ป๊ฒ ๋ฐฐํฌํ๋์ง์ ๋ํด์ ์์๋ณด์๋๋ฐ์. ํ ์คํธ ํ๋ผ์ดํธ ์ฌ์ฌ๋ฅผ ๊ฑฐ์น๊ณ ํ ๋ช์๊ฐ ๋ค? ํ ์คํธ๊ฐ ํต๊ณผ๋์์ต๋๋ค. ๊ทธ๋์ ์ค๋์ ํ ์คํธ ํ๋ผ์ดํธ์ ํ ์คํธ๋ฅผ ํ ์ฌ์ฉ์๋ฅผ ์ด๋ํ๋ ๋ฒ์ ๋ํด์ ์ ๋ฆฌํด๋ณด๋ ํ๊ฒ ์ต๋๋ค. App Store Connect ์ฑ์คํ ์ด ์ปค๋ฅํธ๋ก ์ด๋ํ์๋ฉด ํต๊ณผ๊ฐ ๋์๋ค๋ฉด ์๋์ ๊ฐ์ด "ํ ์คํธ ์ค๋น ์๋ฃ" ๋ผ๊ณ ์จ์ ธ์์๊ฑฐ์์. ํ ์คํธ ๊ธฐ๊ฐ์ 90์ผ์ด ์ฃผ์ด์ง๋ค์. ์ฌ์ฉ์๋ฅผ ์ถ๊ฐํ๊ธฐ ์ํด์ App Store Connect์ ์ฌ์ฉ์ ๋ฐ ์ก์ธ์ค๋ก ๊ฐ์ค๋๋ค. ์ ๊ท ์ฌ์ฉ์์ ์ ๋ณด๋ฅผ ์ ๋ ฅํด์ฃผ๊ณ ์ด๋๋ฅผ ๋๋ฌ์ค๋๋ค. ์ด๋๊ฐ ์ ์์ ์ผ๋ก ๋์๋ค๋ฉด ์๋์ ๊ฐ์ด ์ฌ์ฉ์์ ์ ๋ณด๊ฐ ์ถ๊ฐ๊ฐ ๋๊ณ ์ด๋ ์ฌ์ ์ก์ด๋ผ๋ ๋ฌธ๊ตฌ๊ฐ ๋ณด์ผ๊ฑฐ์์. ํด๋น ์ด๋ฉ์ผ๋ก ์ด๋ํ์ ์.. 2021. 7. 22. [iOS] TestFlight ๋ฑ๋กํ๋ ๋ฐฉ๋ฒ ์์๋ณด๊ธฐ ์๋ ํ์ธ์ Foma๐ ์ ๋๋ค! ์ค๋์ ์ฑ์ ์ถ์ํ๊ธฐ ์ ์ ํ ์คํธ ์ฌ์ฉ์์๊ฒ ์ฑ์ ๋ค์ด๋ก๋ ํ ์ ์๊ฒ ํ๋ ํ ์คํธํ๋ผ์ดํธ์ ๋ํด์ ์์๋ณด๊ฒ ์ต๋๋ค! ๋ฐ๋ก ์์ํ ๊ฒ์~ Xcode ํ ์คํธ๋ฅผ ์งํํ๊ณ ์ถ์ ํ๋ก์ ํธ๋ฅผ ์คํํด์ค๋๋ค. Any iOS Device(arm64)๋ก ๋ง์ถฐ์ฃผ์๊ณ Xcode ์์ชฝ ํญ์ Product - Archive๋ฅผ ๋๋ฌ์ฃผ์ธ์. (Archiveํ๋๋ฐ ๋ช๋ถ์ ๋ ์์๋ฉ๋๋ค..) ๋ฒ์ ๊ณผ ์ต์๋ฒ์ ์ด ์ ์ฉ๋๊ธฐ ๋๋ฌธ์ ์ ํ์ธํ๊ณ ์์นด์ด๋ธ๋ฅผ ํด์ฃผ์ธ์! ์์นด์ด๋ธ ์๋ฃ๋๋ฉด ์๋์ ๊ฐ์ ์๋ก์ด ์ฐฝ์ด ๋ฐํ ๋ฐ Distribute App์ ๋๋ฌ์ฃผ์ธ์. (No suitable application records were found. ๋ง์ฝ ์์ ๊ฐ์ ์ค๋ฅ๊ฐ ๋ด๋ค๋ฉด App Store Connect์ ํด๋น ์ฑ์ด ๋ฑ๋ก๋์ง.. 2021. 7. 21. [iOS] UI Test ๊ฐ๋จํ๊ฒ ์ฌ์ฉํด๋ณด๊ธฐ ์๋ ํ์ธ์ Foma๐ ์ ๋๋ค! ์ ๋ฒ ํฌ์คํ ์ Unit Test์ ๋ํด์ ๋ค๋ค๋๋ฐ์ ์ค๋์ UI๋ฅผ ํ ์คํธ ํ ์ ์๋ UI Test์ ๋ํด์ ์ ๋ฆฌ๋ฅผ ํด๋ณด๋ ค๊ณ ํฉ๋๋ค ๋ฐ๋ก ์์ํ ๊ฒ์~ UITest Bundle ๋ง๋ค๊ธฐ Project - General ํญ์ผ๋ก ์ด๋ํ์ ์ ์ผ์ชฝ ํ๋จ ๋ถ๋ถ์ +๋ฒํผ์ ๋๋ฌ์ฃผ์ธ์. ๊ทธ๋ฆฌ๊ณค ui๋ฅผ ๊ฒ์ํ๊ณ UI Testing Bundle์ ๋ง๋ค์ด์ฃผ์ธ์. Storyboard ์๋์ ๊ฐ์ด ํ์๊ฐ์ ํ๋ ๋ทฐ์ปจํธ๋กค๋ฌ๋ฅผ ๊ตฌ์ฑํ ๊ฑด๋ฐ์. ์ด๋ฉ์ผ ํ ์คํธํ๋,๋น๋ฐ๋ฒํธ ํ ์คํธํ๋,๋น๋ฐ๋ฒํธ ํ์ธ ํ ์คํธํ๋,ํ์๊ฐ์ ๋ฒํผ์ผ๋ก ๊ตฌ์ฑํด์ฃผ์์ต๋๋ค. SignupViewController IBOutlet์ ๋ชจ๋ ์ฐ๊ฒฐ์์ผ์ฃผ๊ณ signupButton์ ๋๋ ์ ๋ ๋น๋ฐ๋ฒํธ์ ํ์ธ ๋น๋ฐ๋ฒํธ๊ฐ ๋ค๋ฅด๋ค๋ฉด ๊ฒฝ๊ณ ์ฐฝ์ ๋์ฐ๋๋ก ํ์.. 2021. 7. 20. ์ด์ 1 2 3 4 ๋ค์ 728x90 ๋ฐ์ํ