-
[iOS]BackgroundTasks ํ๋ ์์ํฌ๋ฅผ ์ฌ์ฉํ ๋, task ์คํ, ์ค๋จ ํ ์คํธํ๊ธฐ.๊ฐ๋ฐ ์ฝ์ง๊ธฐ/iOS 2020. 2. 24. 10:45
์๋ ํ์ธ์, ๋ ๋ชฌํด์ ๋๋ค. ์ค๋๋ ์ ๋ BackgroundTasks ํ๋ ์์ํฌ๋ฅผ ์จ๋ณด๋ ค๊ณ ๋ฌดํ ์ฝ์ง ์ค์ด์์..ใ ใ
๊ทธ ์ค task๋ฅผ ์คํ/์ค๋จํ๋ ๋ฒ์ ์ ๋ฆฌํด๋ดค์ด์.
1. ์คํ ํ ์คํธ ํด๋ณด๊ธฐ
1. BGTaskScheduler์๊ฒ task๋ฅผ submitํ๋ ์ฝ๋ ์คํ.
2. ๊ทธ ๋ค์ ์์ ์ break point ์ก๊ธฐ
3. break ํฌ์ธํธ๊ฐ ๊ฑธ๋ฆฌ๋ฉด ์๋ ๋ช ๋ น์ด ์ ๋ ฅํ๊ธฐ.
4. ์ฑ์ ๋ค์ ๊ตฌ๋ ์ํค๊ธฐ. (๋ฐฑ๊ทธ๋ผ์ด๋์์ ๋ช ๋ น์ด๋ฅผ ์คํํ ๊ฒฝ์ฐ, ์ฑ์ ๋ค์ foreground๋ก ์ฌ๋ฆฌ์ ์ผ ํฉ๋๋ค! ์์ธ์ง๋ ๋ชจ๋ฅด๊ฒ ๋ค์... ์ ๋ง ๊ทธ๋ฐ ๊ฑธ๊น์.)
๋ฐ๋์ ์ค ๊ธฐ๊ธฐ์์ ์คํ์์ผ์ผ ํฉ๋๋ค. ๊ทธ๋ฆฌ๊ณ ๋๋ฒ๊ทธ ์ฉ๋๋ก๋ง ์ฌ์ฉํด๋ฌ๋ผ๊ณ ๊ฒฝ๊ณ ๊ฐ ์๋ค์
e -l objc -- (void)[[BGTaskScheduler sharedScheduler] _simulateLaunchForTaskWithIdentifier:@"Info.plist์ ๋ฑ๋กํ ํ์คํฌ Identifier"]
์ ์ํ๋๋ฉด ์ฝ์์ ์๋ ๋ฉ์์ง๊ฐ ๋จ๋ฉด์ ๊ตฌ๋๋ฉ๋๋ค. ํ์คํฌ ์ํํ๋ ๊ณณ์์ BP๋ ์กํ๋๋ค.
Simulating launch for task with identifier ์๊น ์คํ ์ํจ ํ์คํธ Identifier
Starting simulated task: <BGAppRefreshTask: ์๊น ์คํ ์ํจ ํ์คํธ Identifier>2. ํ์คํฌ ์ํ ๋ฉ์ถ๊ธฐ
1. ํ ์คํธ ํ ํ์คํฌ ๋ธ๋ก ๋ด๋ถ์ ๋ธ๋ ์ดํฌ ํฌ์ธํธ ๊ฑธ๊ธฐ
2. ํ์คํฌ๋ฅผ ์คํ ์ํค๊ธฐ (์์ ๋ช ๋ น์ด๋ฅผ ์ฌ์ฉํด์ ์คํ ์ํฌ ์ ์์ด์)
3. ๋ธ๋ ์ดํฌ ํฌ์ธํธ๊ฐ ๊ฑธ๋ฆฌ๋ฉด ์๋ ๋ช ๋ น์ด ์ ๋ ฅํ๊ธฐ.
e -l objc -- (void)[[BGTaskScheduler sharedScheduler] _simulateExpirationForTaskWithIdentifier:@"๋ฑ๋กํ Task Identifier"]
๋ง ์๋ฃ๋ ๋ ๋ชฌํด์ ์๋ฎฌ์์ ๋๋ ค๋ณด์์ง๋ง ์๋๋ค๋ ์๋ต์ ๋ฐ์์ต๋๋ค ใ ใ + ์ด ๋ฐฉ๋ฒ์ ํ์ฐธ ์ฐพ์๋๋ฐ... ๋ฐ๋ก ์๋ ๋งํฌ์ ์๋๋ผ๊ตฌ์? ใ ใ ์ ์ ๋ ๋ชป๋ณด๊ณ ํ์ฐธ ์ฝ์ง์ ํ๊ณ ์๋๋ค๊ณ ํ๋์ง.... ๋ฏผ๋ง์ฐ....
'๊ฐ๋ฐ ์ฝ์ง๊ธฐ > iOS' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ