header-img
Info :

iOS ํ”„๋ ˆ์ž„์›Œํฌ, ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ ์กฐ์‚ฌํ•œ ๋‚ด์šฉ๋“ค์ž…๋‹ˆ๋‹ค. ์‹ค์ œ ๊ฐœ๋ฐœ ์‹œ ์—‘์Šค์ฝ”๋“œ์ƒ์—์„œ ์„ค์ •ํ•ด์ค˜์•ผ ํ•  ๋ถ€๋ถ„์ด ๋” ์žˆ๋Š”๋ฐ ํ•ด๋‹น ๋ถ€๋ถ„์€ ๊ธฐ๊ณ„ ๋งˆ๋ƒฅ ๊ณ„์† ์˜ค๋ฅ˜ ํ•˜๋‚˜์”ฉ ๋ณด๋ฉด์„œ ๋ผ์›Œ๋งž์ถ”๋Š” ๋ฐฉ์‹์œผ๋กœ ํ•ด๊ฒฐํ–ˆ๊ธฐ ๋•Œ๋ฌธ์— ๋ฐฉ์‹ ์ •๋„๋งŒ ์ฐธ๊ณ ํ•ด์ฃผ์„ธ์š”. ์•„๋ž˜ ์ž‘์„ฑ๋œ ์ˆœ์„œ๋Œ€๋กœ ๋ณด์‹œ๋Š”๊ฒŒ ๋” ์ดํ•ด๊ฐ€ ์ž˜ ๋˜์‹ค ๊ฒƒ์ž…๋‹ˆ๋‹ค. ์ €๋Š” iOS ์ฒ˜์Œํ•˜๋Š” ์ž…์žฅ์—์„œ ์ž‘์„ฑํ•œ๊ฑฐ๋ผ ํ‹€๋ฆฐ ๋‚ด์šฉ์ด ์žˆ์„ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ๊ฐ์ž ๋นŒ๋“œ ์„ธํŒ…์— ๋งž๊ฒŒ ์„ค์ •ํ•ด์ค˜์•ผ ํ•˜๋Š” ๋ถ€๋ถ„์ด ๋งŽ๋‹ค๊ณ  ํŒ๋‹จํ•ด์„œ ์˜ค๋ฅ˜๋„ ๋งŽ์ด ๋‚˜์‹ค๊ฒ๋‹ˆ๋‹ค... 


[iOS] framework ๊ธฐ๋ณธ : https://dongdong216.tistory.com/4

 

[iOS] framework ๊ธฐ๋ณธ

1. CPU Architecture ์•„์ดํฐ์€ ๊ธฐ์ข…์— ๋”ฐ๋ผ ๋‹ค๋ฅธ ์•„ํ‚คํ…์ฒ˜์˜ CPU๋ฅผ ์‚ฌ์šฉํ•จ. ๋นŒ๋“œ๋ฅผ ํ•˜๋ฉด Execute file์ด ์ƒ์„ฑ๋˜๊ณ  ์ด ํŒŒ์ผ์„ CPU์—์„œ ์ฝ๊ธฐ ๋•Œ๋ฌธ์— ์ด์— ๋งž๋Š” ์•„ํ‚คํ…์ฒ˜ ์ƒ์„ฑ์ด ํ•„์š”ํ•จ. ๊ธฐ์ข…๋ณ„ ์•„ํ‚คํ…์ฒ˜ armv7 :

dongdong216.tistory.com

[iOS] Private Repository์— CocoaPod Framework ์˜ฌ๋ฆฌ๊ธฐ : https://dongdong216.tistory.com/6

 

[iOS] Private Repository์— CocoaPod Framework ์˜ฌ๋ฆฌ๊ธฐ

1. bitbucket์— ๋‘ ๊ฐœ์˜ repository๊ฐ€ ํ•„์š”ํ•จ. ์‹ค์ œ ํ”„๋ ˆ์ž„์›Œํฌ๋กœ ์‚ฌ์šฉํ•  ์ฝ”๋“œ ์ €์žฅํ•  remote repo 1๋ฒˆ์—์„œ ์˜ฌ๋ฆฐ cocoapod ํ”„๋ ˆ์ž„์›Œํฌ์˜ ์ŠคํŽ™์„ ๊ด€๋ฆฌํ•  remote repo ๋น„ํŠธ๋ฒ„ํ‚ท์— ๋‘ ๊ฐœ ๋‹ค private์œผ๋กœ ๋งŒ๋“ค๊ณ  git ์ฃผ

dongdong216.tistory.com

[iOS] XCFramework private repository์— cocoapod์œผ๋กœ ๋ฐฐํฌํ•˜๊ธฐ : https://dongdong216.tistory.com/7

 

[iOS] XCFramework private repository์— cocoapod์œผ๋กœ ๋ฐฐํฌํ•˜๊ธฐ

A. pros & cons pros ๋นŒ๋“œ๋œ ํ”„๋ ˆ์ž„์›Œํฌ ๋‹จ์œ„ ๊ณต์œ ์ด๊ธฐ ๋•Œ๋ฌธ์— ๋‚ด๋ถ€ ์ฝ”๋“œ๋ฅผ ์•…์„ฑ ์œ ์ €๊ฐ€ ์ง์ ‘ ๋””์ปดํŒŒ์ผ ํ•ด๋ณด์ง€ ์•Š๋Š” ์ด์ƒ ๋ณด์•ˆ ๋น„๊ต์  ๋†’์Œ static / dynamic framework๋ฅผ ๋ฐฐํฌํ•˜๋Š” ์ชฝ์—์„œ ๊ฐ•์ œํ•  ์ˆ˜ ์žˆ์Œ (๋ฐ›

dongdong216.tistory.com

[iOS] XCFramework build script : https://dongdong216.tistory.com/8

 

[iOS] XCFramework build script

A. ์ „์ฒด ๊ณผ์ • ํ”„๋ ˆ์ž„์›Œํฌ > Targets > Build Phases ์ด๋™ ํ›„ new Target Aggregate ์ถ”๊ฐ€ Run script phase ์ถ”๊ฐ€ ์‰˜ ์ฝ”๋“œ ์ถ”๊ฐ€ ๋นŒ๋“œ ํ…Œ์ŠคํŠธ B. ๊ฐ ๊ณผ์ • ์ƒ์„ธ - 1 Project Navigator์—์„œ SDK Point Home ์„ ํƒ ๋งŒ์•ฝ ํ”„๋กœ์ ํŠธ์— X ์ณ

dongdong216.tistory.com

[iOS] framework ์ž‘์—…ํ™˜๊ฒฝ ๋งŒ๋“ค๊ธฐ : https://dongdong216.tistory.com/9

 

[iOS] framework ์ž‘์—…ํ™˜๊ฒฝ ๋งŒ๋“ค๊ธฐ

A. ์ „์ฒด ๊ณผ์ • SDK Framework Project, Test App Project ๋‘˜ ๋‹ค ์กด์žฌํ•œ๋‹ค๋Š” ์ „์ œ ํ•˜์— ์ž‘์„ฑํ•˜์˜€์Šต๋‹ˆ๋‹ค. Workspace ์ƒ์„ฑ ๋งŒ๋“  ์›Œํฌ์ŠคํŽ˜์ด์Šค ์—ด๊ณ  Project Navigator ์šฐํด๋ฆญ > Add File to “workspace ์ด๋ฆ„” > ํ”„๋ ˆ์ž„์›Œํฌ, ํ”„

dongdong216.tistory.com

[iOS] Framework์— ์ข…์†์„ฑ ์ถ”๊ฐ€ ์‹œ ์ž‘์—…ํ™˜๊ฒฝ ์„ธํŒ… : https://dongdong216.tistory.com/10

 

[iOS] Framework์— ์ข…์†์„ฑ ์ถ”๊ฐ€ ์‹œ ์ž‘์—…ํ™˜๊ฒฝ ์„ธํŒ…

A. Framework ๊ฐœ๋ฐœํ•  ๋•Œ Framework ํ”„๋กœ์ ํŠธ ๋””๋ ‰ํ† ๋ฆฌ์—์„œ cmd open → pod init ์ถ”๊ฐ€ํ•˜๊ณ ์ž ํ•˜๋Š” ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ .podfile์— ๋„ฃ์–ด์ค€ ํ›„ pod install ํ…Œ์ŠคํŠธ ํ”„๋กœ์ ํŠธ, ํ”„๋ ˆ์ž„์›Œํฌ ํ”„๋กœ์ ํŠธ ๊ฐ™์ด ๋„ฃ์–ด ๋‘” ์›Œํฌ์ŠคํŽ˜์ด

dongdong216.tistory.com

[iOS] 1st party framework์—์„œ 3rd party framework ์‚ฌ์šฉ : https://dongdong216.tistory.com/11

 

[iOS] 1st party framework์—์„œ 3rd party framework ์‚ฌ์šฉ

A. Umbrella Framework ๋ถˆ๊ฐ€๋Šฅ Technical Note TN2435: Embedding Frameworks In An App Umbrella framework : ํ”„๋ ˆ์ž„์›Œํฌ๊ฐ€ ๋‹ค๋ฅธ ํ”„๋ ˆ์ž„์›Œํฌ๋ฅผ ํฌํ•จํ•˜๋Š” ํ˜•ํƒœ. macOS์—์„œ๋Š” ๊ฐ€๋Šฅํ•˜์ง€๋งŒ ์ง€์–‘๋˜๋Š” ๊ตฌ์กฐ. iOS, watchOS, tvOS์—์„œ๋Š” ๋ถˆ

dongdong216.tistory.com

[iOS] pod dependency trouble shooting : https://dongdong216.tistory.com/12

 

[iOS] pod dependency trouble shooting

A. ์ง€ํ–ฅํ•˜๋Š” ๊ฒƒ third party lib๋ฅผ ์‚ฌ์šฉํ•˜๊ณ  ์žˆ๋Š” framework๋ฅผ xcframework๋กœ buildํ•  ์ˆ˜ ์žˆ์–ด์•ผ ํ•จ. cocoapod์— ๋ฐฐํฌํ•  ๋•Œ ์ด xcframework๊ฐ€ ์˜์กดํ•˜๊ณ  ์žˆ๋Š” ์ข…์†์„ฑ๋“ค์„ ์ž๋™์œผ๋กœ ์„ค์น˜ํ•  ์ˆ˜ ์žˆ์–ด์•ผ ํ•จ. B. ํ•ด๊ฒฐ๋ฐฉ์•ˆ 2

dongdong216.tistory.com

[iOS] static framework to xcframework, cocoapod ๋ฐฐํฌ : https://dongdong216.tistory.com/13

 

[iOS] static framework to xcframework, cocoapod ๋ฐฐํฌ

A. ๊ฒฐ๋ก  ํ˜ธ์ŠคํŠธ ์•ฑ์—์„œ static, dynamic ๊ด€๊ณ„ ์—†์ด ์‚ฌ์šฉ ๊ฐ€๋Šฅ ํ˜ธ์ŠคํŠธ ์•ฑ์—์„œ ์ด๋ฏธ a ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ ์‚ฌ์šฉํ•˜๊ณ  ์žˆ๋Š”๋ฐ ํ”„๋ ˆ์ž„์›Œํฌ์—์„œ๋„ a ์‚ฌ์šฉํ•ด์•ผ ๋˜๋ฉด ์ถฉ๋Œ ์—†์ด ๊ทธ๋ƒฅ ์„ค์น˜๋˜์–ด ์žˆ๋Š” ๊ฑธ๋กœ ์‚ฌ์šฉ๋จ. ํ”„๋ ˆ

dongdong216.tistory.com

 

๋”๋ณด๊ธฐ
CS/iOS, Swift