| 일 | 월 | 화 | 수 | 목 | 금 | 토 |
|---|---|---|---|---|---|---|
| 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 |
- ios외부디바이스연결
- ios 26
- Xcode
- ios외부카메라연결
- IOS
- ios카메라유선연결
- AVFoundation
- UITableView
- avcapturesession
- 위치 권한 정보
- usb카메라연결
- UVCCamera
- JSON
- parse
- Realm
- swift
- UVCAndroid
- cocoapods
- JSONParser
- CustomCode
- Android
- 정보처리기사 실기 요약본
- 정보처리기사
- uikit
- Decodable
- Pod
- 리더기 연결
- Codable
- libuvc
- 정보처리기사 실기
- Today
- Total
목록전체 글 (39)
iOS 개발일기
이번에 프로젝트를 새로 계약한 회사에 신규 태블릿을 사용하는데, 기종이 Galaxy Tab S10 Lite 였다.이 기기가 근데 계속 RFID 리더기를 블루투스로 신호를 잡지 못하는 문제가 발생했었다. 테스트 기기가 몇 가지 있었는데, 이전 구형 기기들은 문제없이 잘 검색되어 연결이 가능했었다. 비교적 최신 기기는 와이파이를 꺼야 검색이 되는 상황도 있었기 때문에, 그 기억을 살려 와이파이를 끈 다음 검색을 해봤다. 결과는 동일했다. 검색이 계속 되지 않아 더욱 최신 기기들은 내부에 뭔가 달라져서 안되는건가? 아니면 소프트웨어가 업데이트 되면서 보안이 추가가 된건가? 등등 가능성에 대해서 파악해나갔다. 결론부터 이야기하자면, 1. 기기의 위치 정보(위치 서비스)를 켜야 블루투스 검색이 된다.2. 앱의 위..
깃허브: https://github.com/93bpm/usb-camera-demo 이전에 iOS에서 USB 카메라를 연결하는 글을 작성했었는데, 같은 기능을 안드로이드도 개발하게 되었다. iOS는 특정 조건만 있으면 순정 프레임워크(AVFoundation)를 사용해서 비교적 사용이 편리했다. 안드로이드는 USB 호스트를 지원하기 때문에 iOS보다 더 쉬울 거라고 생각했다. 결과는 정반대였다. 안드로이드는 UVC를 지원할까?USB 호스트로 기기를 여는 것 자체는 된다. 문제는 공식 프레임워크인 Camera2가 UVC 기기를 카메라로 잡아주지 않는 문제가 있었다. Camera2 에는 INFO_SUPPORTED_HARDWARE_LEVEL_EXTERNAL 이라는 하드웨어 레벨이 있고, 이론상 외장 카메라가 ..
요즘 안드로이드 프로젝트 개발을 진행 중이다... 현재 진행하고 있는 프로젝트는 하드웨어를 연동 및 통신을 하는데 iOS에서 경험해본 터라 하드웨어와 관련된 개발은 크게 어렵지는 않았다. 그동안 안드로이드는 유지보수 위주로 다뤄왔기에, 새로운 기능 개발은 처음이었다. 그래서인지 코드 보다는 OS 환경에 대한 지식이 부족한 탓에 하드웨어와 관련된 기능에만 몰두하며 테스트를 이어가고 있었다. 그러다 테스트 도중, 블루투스 때는 없었던 기괴한 현상이 발생하는데 USB만 꽂으면 화면에서 소프트 키보드가 가출해버리는 문제였다. 이류를 좀 찾아보니, 안드로이드가 해당 하드웨어를 HID(Human Interface Device) 프로필로 인식하는 것이 원인이었다. 시스템이 연결된 기기를 '외부 키보드'로 간주하면서,..
우리가 보통 하단 홈바를 스와이프하거나 홈 버튼을 두번 클릭하면 나오는 앱 목록 화면을 앱 스위처라고 부르는데간혹 앱 스위처로 이동할 경우 현재 사용되고 있던 앱이 표시되던 화면을 가리는 것을 볼 수 있다. 대부분 개인 정보 보호를 목적으로 화면 보호기를 설정하는데카카오톡이나 토스 외에도 금융 및 개인정보를 다루는 앱에서 흔히 사용되고 있다. 화면 보호기그럼 위와 같이 화면 보호기를 설정하기 위해서는 앱의 생명주기를 알면 쉽게 구현이 가능하다.앱이 활성/비활성 상태일 경우에 화면을 가리기 위한 UI만 표시해주면 된다.class SceneDelegate: UIResponder, UIWindowSceneDelegate { var window: UIWindow? func scene(..
목차링크 01. 요구사항 확인https://93bpm.tistory.com/26 02. 데이터 입출력 구현https://93bpm.tistory.com/27 03. 통합구현https://93bpm.tistory.com/28 04. 서버 프로그램 구현https://93bpm.tistory.com/29 05. 인터페이스 구현https://93bpm.tistory.com/30 06. 화면 설계https://93bpm.tistory.com/31 07. 애플리케이션 테스트 관리https://93bpm.tistory.com/32 08. SQL 응용https://93bpm.tistory.com/34 09. 소프트웨어 보안 구축https://93bpm.tistory.com/35
프로젝트에서 웹 서비스 통신을 할 때 몇 개의 값들이 필수로 존재해야 되는 경우가 존재했었다.이럴 때마다 입력을 하거나 초기화에 값을 넣어주기에는 너무 불편한 것 같아서 생각을 하던 찰나에 생각하게 된 것이 Property Wrapper(프로퍼티 래퍼)였다. Swift 5.1에서 Property Wrapper가 나왔을 때에는 SwiftUI에서는 자주 사용될 것 같았지만 UIKit에서는 자주 사용되지 않을 것이라 생각했었다. 현재까지 개발한 프로젝트는 모두 UIKit 환경에서 개발되었기 때문에 Property Wrapper를 적극적으로 사용할 기회가 별로 없었는데 이번 기회에 사용할 기회가 있어 어떻게 사용했는지 적어보고자 한다. UserDefaultsUIKit 환경에서 Property Wrapper를 ..
깃허브: https://github.com/93bpm/usb-camera-demo 2025.01.09 - [iOS] - [iOS] USB 카메라 연결(1)2025.02.19 - [iOS] - [iOS] USB 카메라 연결(2) 이번 글에서는 화면 캡처 방법과 그 과정에서 발생했던 문제와 해결 과정에 대해서 작성해보려고 한다. 이미지 캡처외부 카메라와 미리보기 화면까지 표시하는 것 까지 모두 마친 다음에 캡처에 대해서 진행했는데 AVCaptureSession에 추가한 AVCapturePhotoOutput을 사용하여 캡처를 할 수 있다. output.capturePhoto(with: AVCapturePhotoSetting(), delegate: self) AVCapturePhotoCaptureDelega..
깃허브: https://github.com/93bpm/usb-camera-demo 2025.01.09 - [iOS] - [iOS] USB 카메라 연결(1)2025.02.26 - [iOS] - [iOS] USB 카메라 연결(3) 이전 게시글에서는 외부 카메라를 유선으로 연결할 수 있는 방법과 연결했을 때 디바이스의 포맷을 확인하거나 연결 및 해제를 감지하는 방법에 대해서 설명했다. 이번 글에서는 연결된 외부 카메라의 영상을 iOS 기기에 출력하는 방법을 말하려고 한다. 그리고 프로젝트를 진행하면서 미리보기 화면을 출력하면서 외부 카메라의 영상이 기기의 화면 방향과 맞지 않아서 생겼던 문제에 대해서도 다룰 예정이다. 카메라 미리보기 화면 표시외부 카메라의 화면을 내 기기에 표시하는 방법은 우리가 흔히 아..
깃허브: https://github.com/93bpm/usb-camera-demo 2025.02.19 - [iOS] - [iOS] USB 카메라 연결(2)2025.02.26 - [iOS] - [iOS] USB 카메라 연결(3) 진행 중인 프로젝트의 작업 중 하나가 외부 카메라를 유선(USB)으로 연결하고 영상을 기기에서 확인하면서 캡처하는 기능이 있었는데, 내부 카메라를 통해서 하는 작업은 해봤지만 USB 카메라를 연결하는 프로젝트는 처음 진행하는 것이었다. iOS는 기본적으로 UVC를 지원하지 않기 때문에 생각보다 외부 기기 연결에는 제약이 많았다. USB 카메라를 사용하기 위해서는 크게는 세 가지의 연결 방법이 있었다. MFi 인증 카메라Apple에서 공식적으로 지원하는 방법이기 때문에 AVFou..
회사에서 추후 필요할 수도 있는 기능 중 하나로 화면 캡처 방지에 대한 이야기를 했었는데, iOS는 캡처(녹화)나 스크린 샷에 대한 감지를 할 수는 있지만 AOS처럼 공식적으로 기능을 제공하지 않는 것으로 알고 있었다.캡처와 스크린 샷의 감지는 NotificationCenter의 알림들을 통해 쉽게 감지할 수 있지만 방지에 대한 제어는 제한적이다. 방지를 하기 위해서는 UITextField의 `isSecureTextEntry`의 속성을 이용하여 커스텀하여 가능하다. 화면 캡처 및 스크린 샷 감지 방법캡처(녹화) 감지 캡처의 경우 `UIScreen.capturedDidChangeNotification` 알림을 이벤트로 추가하여 감지할 수 있다. 그리고 `UIScreen.main.isCaptured` 프로..