프로그래밍
-
iOS 코드에서 중요 정보 가리기 (Feat. plist, bundle, gitignore)프로그래밍/iOS 2022. 5. 10. 19:35
개발하다 보면 url, api key, apple id 등 코드에 필요하지만 가리고 올리고 싶을 때가 있다. 그럴 때 plist를 활용하여 따로 적어놓고 사용하는 코드를 정리해놓으려 한다. 예시로 apple id를 숨기려 한다! (보통 api key나 base url도 많이 활용한다) func requestReviewmenually(id: String) { //app store connect의 앱정보에서 apple id를 확인한다 guard let writeReviewURL = URL(string: "https://apps.apple.com/app/id\(id)?action=write-review") else { return } UIApplication.shared.open(writeReviewURL, ..
-
[감정 소비] 1.0.5 업데이트에 관하여 (Feat. iOS Custom Font, Radio Button, 사용자 문의)프로그래밍/iOS 배포 2022. 4. 30. 17:58
감정 소비 앱은 기존 전체가 내가 설정한 커스텀 폰트를 활용하여 보였었다. 일단 문의하기 기능을 써주신 것도 감사하고 좋은 피드백을 얻었다. 기본 폰트를 더 좋아하는 사용자도 많을 거라 생각을 해 사용자가 폰트를 선택하게 기능을 만들어주려 한다. 그럼 일단 계획은 커스텀 폰트 고르기 및 설정해놓기 -> 각 폰트 enum 및 UIFont Extension 설정 -> 사용자 폰트 설정 View 만들기 -> 폰트 설정 시 전체 적용되게 하기 이렇게 정도 기획하고 시작을 한다 일단 폰트가 바뀔 시 앱 전체가 폰트가 바뀌어야 하기 때문에 custom font 코드들이 다 적용되어 있어야 한다. 기존에 그렇게 하지 않은 코드나 스토리보드에서 설정한 글꼴들은 코드로 바꿔준다! 커스텀 폰트 설정은 기존 포스팅을 참고!..
-
iOS 현재 앱 버전 및 빌드 정보 가져오기프로그래밍/iOS 2022. 4. 12. 01:12
사용자에게 현재 무슨 버전을 사용하고 있는지 알려주기 위해 버전 정보를 표시해주는 방법을 간단히 써보겠다..! 사용자는 버전만 알면 되니 버전만 뿌려주기로 함 func appVersionGet() -> String{ guard let dictionary = Bundle.main.infoDictionary, let version = dictionary["CFBundleShortVersionString"] as? String, let build = dictionary["CFBundleVersion"] as? String else { return "" } print("vserion: \(version), build: \(build)") return version } objc: + (NSString*) getA..
-
iOS 15 + NavigationBar, Tabbar 배경 구분선 투명해진건에 대하여프로그래밍/iOS 배포 2022. 3. 19. 18:15
https://developer.apple.com/forums/thread/682420 barTintColor not working in iOS 15 | Apple Developer Forums In iOS 15, UIKit has extended the usage of the scrollEdgeAppearance, which by default produces a transparent background, to all navigation bars. The background is controlled by when your scroll view scrolls content behind the navigation bar. Your screensho developer.apple.com 내부 테스트를 하다 보..
-
앱 업데이트 배포프로그래밍/iOS 배포 2022. 3. 19. 02:29
애널리틱스 및 크래시틱스를 달고 기존 UX를 개선하여 업데이트하려 한다. 먼저 버전을 기존 것보다 올려준다. 아카이브 하기 전에 실기기나 Any iOS Device로 바꿔준다. (시뮬레이터로 하면 아카이브가 비활성화될 수 있다) 혹시 아카이브 창이 안 뜨면 Window -> Organizer로 킬 수 있다. distribute 안에 validate(시스템적으로나 인증서 오류 테스트)가 포함이 되어 있어 바로 distribute를 해도 되지만 어차피 validate가 안되면 배포가 안되기에 앱 유효성 검증부터 해보는 편이다. 유효성 검증이 되지 않는 경우: 앱 아이콘이 없거나 너무 투명할 때, 번들 아이디가 유효하지 않을 때, 이미 올린 빌드 넘버나 낮은걸 입력했을 때 등 유효성이 통과되면 그다음 배포를 ..
-
.gitignore (Mac 환경)프로그래밍/Git 2022. 3. 17. 01:42
레포지토리에 .gitignore을 해놔야 깃허브에 필요 없는 걸 안 올릴 수 있다. 그리고 가장 중요하게 내가 숨기고 싶은 파일을 안올릴 수 있다! (ex. url, API Key, .plist 등) 항상 검색해서 썼었는데 나를 위해서도 정리해놓으려고 한다. 먼저 .gitignore을 만들기 위해 터미널로 레포지토리의 루트 디렉토리로 이동해준다 sudo touch .gitignore 명령을 통해 .gitignore 파일이 생성된다. open . 을 통해 직접 폴더를 보면서 하는 편이다. 또 shift + command + . 을 통해 숨긴 파일을 볼 수 있다. 다음은 .gitignore에 무엇을 적을까인데 처음 프로젝트를 push 하기 전 https://gitignore.io gitignore.io Cr..
-
iOS 출시 프로젝트 22일차 - 업데이트 기획프로그래밍/iOS 배포 2021. 12. 7. 15:30
아직 앱 심사를 기다리고 있지만 업데이트 기획 및 개발은 계속 이어나간다..! 내부 테스트를 진행하면서 받은 피드백들을 정리하고 구글 애널리틱스도 공부하며 심을 예정이다. DB가 수정사항은 없지만 혹시 있을 수 있는 변경사항 대비로 마이그레이션도 공부하려 한다. 앱 업데이트 개발 예정은 온보딩(웰컴 페이지), 리스트 정렬 사용자 선택, 폰트 사용자 선택, 세부 UX 수정 정도로 기획하고있다. 일단 얼른 앱 심사가 되어서 결과가 나오면 좋겠다..!