Realm 플랫폼의 핵심 개념은 Realm 이라는 가벼운 객체 컨테이너입니다. 데이터베이스에서처럼 Realm의 데이터는 쿼리, 필터링, 상호 연결이 가능하고 저장이 됩니다. 반면 기존 데이터베이스와는 달리 Realm의 객체는 라이브 오브젝트이고 완전히 반응형입니다. 또한, Realm은 기기와 애플리케이션 사이에서 매끄럽게 동기화되며 스레드에서 안전하게 접근할 수 있습니다. 이번 시간 Realm 에 대해서 간단한 샘플 프로젝트를 공유 하려고 합니다. Realm 설치Realm을 사용한 프로젝트에서 사용한 기능은 조회, 추가, 삭제, 수정으로 Realm을 사용하는데 필요한 기능을 구현하였습니다. 1. CocoaPods 0.39.9 버전 또는 그 상위버전을 설치 합니다.2. CocoaPods가 최신 Realm ..
App과 App 사이의 정보를 주고 받을 수 있는 방법은 다양하게 있습니다. SharedPreferences, 콘텐트 프로바이더, SQLite, BroadcastReceiver, intent, 등 여러 방식으로 App 간의 데이터를 주고 받을 수 있습니다. 이전에는 SharedPreferences 을 활용하여 간단하게 주고 받을 수 있었습니다.// SharedPreferences 을 공용으로 사용할 수 있는 소스코드 Context _context = null; try { _context = createPackageContext("send target application package name", Context.CONTEXT_IGNORE_SECURITY); } catch (PackageManager.Na..
교육관련 앱을 사용하다보면 동영상 강좌를 볼 때에 화면이 전환되는 것을 확인할 수 있습니다. iOS에서는 어떻게 화면 전환하는지 알아보겠습니다. AppDelegate 설정AppDelegate 부분에서 다음 함수인 UIInterfaceOrientationMask 을 지정하여 화면을 설정합니다. application(_, supportedInterfaceOrientationsFor) 은 화면 전화에 대한 Delegate 부분으로 자세한 내용은 AppleDeveloper 에서 확인할 수 있습니다.12345678var orientationLock = UIInterfaceOrientationMask.portrait func application(_ application: UIApplication, supporte..
Webview는 앱 기능 중 필수라고 할 수 있습니다. 하이브리드 앱에서 특히 많이 사용하고 있는 Webview를 공유하겠습니다.Swift 에서는 Webview 사용 시 UIWebView을 사용하였습니다. 그러다 ios 11 버전부터는 Webkit 이라는 위젯이 등장합니다. UIWebview에서 WebKit으로 변경되었지만 소스 변경은 많이 되지 않았기에 소스 업데이트에 대한 걱정은 없었습니다. 버전에 따른 WebView공유드릴 내용은 버전에 따른 WebView 호출입니다. Xcode로 웹뷰 구현 하다보면 WebKit은 ios11버전 이상에서만 사용 가능하다고 제한을 걸었습니다. Apple Developer에서는 "Webkit 최소 버전은 ios 8 이상부터 지원한다"고 명시하고 있습니다. 차후에 UIW..
이번 포스팅은 Swift에서 가장 많이 사용하는 AlertController 에서 발생했던 이슈를 소개하려고 합니다. 보통 AlertController은 다음과 같이 사용할 것입니다. 아이폰에서는 정상 동작하지만 태블릿에서는 다음과 같은 에러가 발생합니다. *** Terminating app due to uncaught exception 'NSGenericException', reason: 'Your application has presented a UIAlertController () of style UIAlertControllerStyleActionSheet. The modalPresentationStyle of a UIAlertController with this style is UIModalPre..
앱 스토어 등록 과정 중 Distribution 에러가 발생하는 경우 대응 방법에 대해서 말씀드리겠습니다.앱 스토어 등록 과정은 Xcode > Product > Archive > Updated to App Store 으로 진행으로 앱스토어에 등록하게 됩니다.저도 위와 같은 방법으로 진행하였으나 밑에 그림처럼 Distribution 가 없다는 이슈가 발생하였습니다. 작업환경인 Mac Book 에 Distribution 이 없다는 것을 확인 하려면 "키체인"을 실행하여 확인할 수 있습니다. 키체인 > 로그인 > 내 인증서 (카테고리) 이곳에 자신이 등록한 Developer 인증서와 Distribution 이 있는지 확인합니다. 만약 없다면, Distribution 등록 된 작업 환경에서 해당 Distribu..
앱 개발을 하다보면 텍스트 중간에 색상을 넣어야할 때가 있습니다.이번 포스트에서 소개할 내용은 Label의 텍스트 중 특정 부분 색상 넣는 방법입니다. Label에 색상 넣는 방법은 1) 색상 넣는 범위 설정, 2) HTML을 이용 두 가지 입니다.1. 색상 넣는 범위 설정Label의 attributedText을 이용하여 색상을 넣을 수 있습니다. 1) string_to_color 가 기준이 되어 그 글자가 있는 부분의 범위를 구하는 방식2) 직접 rage 범위를 입력하는 방법 위 두 가지 방법으로 글자 색상을 변경할 수 있습니다. 2. HTML을 이용한 넣기HTML 문법으로 텍스트를 변경 할 수도 있습니다. htmlString에 HTML 문법도 같이 입력하여 그것을 기준으로 Label에 넣습니다. 이 ..
앱 개발 하다보면 앱 간 연결 부분을 작업할 일이 빈번히 발생합니다. 이번에 공유 드릴 내용은 "A 앱" 에서 "다른 B 앱"으로 연결하는 방법입니다. 편의상 A 앱을 "서버 앱" , B 앱을 "클라이언트 앱" 으로 명칭하겠습니다. Client App url 스키마 만들기 클라이언트 앱에서 Url Schemes을 등록해야합니다. 1) 왼쪽에 파일 리스트의 프로젝트 클릭 2) Info 클릭 3) 하단의 URL Types의 '+' 버튼 클릭 4) 하단의 URL Types 의 내용을 입력합니다. * Indentifler = BundleID * URL_Schemes = 앱의 고유 URL Scheme을 지정합니다. (소문자, 숫자만 가능합니다.) APP - Server Info.plist 에서 LSApplicat..
- view
- DI
- 점수판
- 고시문
- Kotlin
- 디자인패턴
- 스코어헬퍼
- missionchina
- Android Studio
- 코틀린
- 선교
- Android
- 안드로이드
- RXjava
- swift
- 임용고시
- 알고리즘
- 탁구
- push
- IOS
- IT
- MCC
- flutter
- missioon
- 고시문헬퍼
- java
- 패턴
- issue
- 미션차이나센터
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | 7 |
8 | 9 | 10 | 11 | 12 | 13 | 14 |
15 | 16 | 17 | 18 | 19 | 20 | 21 |
22 | 23 | 24 | 25 | 26 | 27 | 28 |
29 | 30 | 31 |