iOS/Swift 9

[Swift] Live Activity 앱 종료할 때 끄는 방법

iOS 16.2 이상에서만 동작할 수 있다. Appdelegate에서 앱 종료시 추적되는 AppLifeCycle인 applicationWillTerminate에서 사용한다. func applicationWillTerminate(_ application: UIApplication) 앱 종료시에 liveActivity의 end method가 생각하는대로 동작하지 않을 수 있다. class func stopSessionTimeoutAsync() { let semaphore = DispatchSemaphore(value: 0) Task { for activity in Activity.activities { await activity.end(nil, dismissalPolicy: .immediate) } sema..

iOS/Swift 2023.09.18

[프로그래머스] 부족한 금액 계산하기

새로 생긴 놀이기구는 인기가 매우 많아 줄이 끊이질 않습니다. 이 놀이기구의 원래 이용료는 price원 인데, 놀이기구를 N 번 째 이용한다면 원래 이용료의 N배를 받기로 하였습니다. 즉, 처음 이용료가 100이었다면 2번째에는 200, 3번째에는 300으로 요금이 인상됩니다. 놀이기구를 count번 타게 되면 현재 자신이 가지고 있는 금액에서 얼마가 모자라는지를 return 하도록 solution 함수를 완성하세요. 단, 금액이 부족하지 않으면 0을 return 하세요. 제한사항 놀이기구의 이용료 price : 1 ≤ price ≤ 2,500, price는 자연수 처음 가지고 있던 금액 money : 1 ≤ money ≤ 1,000,000,000, money는 자연수 놀이기구의 이용 횟수 count :..

iOS/Swift 2021.09.13

[Swift] isEmpty 사용법 (String 의 값이 있는가 판별)

안녕하세요 String을 저장하는 형태에서 호출할 수 있는 함수 'isEmpty'의 사용법입니다. 위의 보기처럼 사용하시면 아래 값처럼 나오게 됩니다. 자동완성으로 isEmpty가 찾아지는 String의 isEmpty 숫자 형태를 저장하는 경우에는 당연히 isEmpty를 사용할 수 없습니다. 숫자형태는 이렇게 비교할 수 있겠죠 감사합니다. isEmpty 는 String의 값만 비교할 수 있습니다.

iOS/Swift 2021.06.14

[Swift] iOS 탈옥 감지 JailBreak 이렇게 쓰면 돼

iOS 의 탈옥감지는 근본적으로 단말기의 설치되어있는 파일을 검색하여 사용한다. 탈옥 시켜주는 앱이 설치되어있는가, 그에 해당하는 파일이있는가를 검색 및 존재여부를 확인한다. class JailBreak: NSObject { func hasJailbreak() -> Bool { guard let cydiaUrlScheme = NSURL(string: "cydia://package/com.example.package") else { return false } if UIApplication.shared.canOpenURL(cydiaUrlScheme as URL) { return true } #if arch(i386) || arch(x86_64) return false #endif let fileManager..

iOS/Swift 2021.04.01

[Swift] iOS 내부저장 UserDefaults 이렇게 쓰면 돼

iOS의 내부저장중 제일 기본적으로 알아둬야할 UserDefaults가 있다. 사용법이 간단하며, 큰값을 저장하기에 적합하지 않다. 보안성에 매우 취약하다. 저장하기 불러오기 삭제하기 synchronize 저장하기 키값에 밸류를 입력하여 값을 내부에 저장한다. 이렇게 저장하면 Swift라는 키값에 Hello World!!!라는 String 값이 저장된다. 불러오기 키값으로 UserDefault에 저장된 밸류를 불러온다. 위의 저장된 값을 Swift키값으로 불러온다는 뜻이다 삭제하기 지우고 싶을땐 이렇게 사용하자 그렇다면 해당 키값의 값이 삭제될것이다. Synchronize synchronize()를 Set한 뒤 호출해준다면 내부저장이 완료된다는 뜻이다. 허나 항상 반드시 호출하지 않아도 Set되면서 자동..

iOS/Swift 2021.02.08

[Swift] 버전 컨트롤

준비물 Appversion: String ServerVersion: String 준비물 Value Appversion = "1.0.0" ServerVersion = "1.0.0" Code ⬇️⬇️⬇️⬇️⬇️⬇️⬇️⬇️⬇️⬇️ 더보기 //MARK:[version check begin] public class versionCheck { class func checkVersionState(serverVersion: String) -> VersionCheckType{ let appVersion = Bundle.main.object(forInfoDictionaryKey: "CFBundleShortVersionString") as! String //현재 앱 버전과 서버에서 내려주는 버전이 같을경우 if appVer..

iOS/Swift 2020.07.06