분류 전체보기 17

React-native 네이티브(Android)와 통신하기(eventEmitter)

블루투스 스캔 기능 구현하다가 npm에 있는 라이브러리들이 별로라 직접 구현하기로 했다. 스캔 결과를 React-native 쪽으로 던져줘야해서 EventEmitter 사용하여 구현하던 중에 React-native로 데이터를 던지면 에러가 뿅뿅 발생 했다. NativeModule에서 Service(백그라운드에서도 동작해야 해서)를 실행하여 Service에서 EventEmitter 통해 React-native로 스캔 결과를 던져주는 순서로 구현을 해놨는데 Service에서 생성한 ReactContext를 잘못 생성해줘서 생긴 에러였다. 기존 코드 // Activity Context로 생성하면 안됨 (NullPointerException) ReactContext reactContext = new ReactC..

Mobile/React-Native 2023.02.23

Linux user 추가/변경/삭제

user 추가 #user만 추가 useradd [username] #user, group 동시에 추가 useradd -G [groupname] [username] useradd -g [GID] [username] #base directory 지정 (base directory 밑으로 홈 directory 생성) useradd -d [path] [username] #home directory 지정 useradd -d [path] [username] #home directory 없이 추가 useradd -M [username] user 변경 #home directory 변경 usermod -d [path] [username] #home directory 및 하위 컨텐츠 전부 변경 usermod -m -d [p..

Etc 2023.02.03

iOS FCM 푸시 알림 #2 - APNs 등록 및 앱 설정

Apple Developer Identifiers APNs 활성화 apple developer에 로그인 후 왼쪽 메뉴에서 Identifiers 클릭 https://developer.apple.com/account/resources APNs 활성화 시킬 앱 클릭 Push notifications 체크 우측 상단 save 클릭 p8 키 발급 왼쪽 메뉴에서 Keys 클릭 Keys 옆 플러스 버튼 클릭 이름 입력, Apple Push Notifications service(APNs) 체크 후 continue 클릭 다운로드 클릭 (페이지 나간 후엔 다운로드 받을 수 없으니 무조건 다운로드) FCM 프로젝트에 APN 인증 키 등록 이전에 만든 FCM 프로젝트 설정 페이지로 이동 클라우드 메세징 탭 클릭 Apple ..

Mobile/iOS 2023.01.17

iOS FCM 푸시 알림 #1 - FCM 프로젝트 생성

💡 FCM 푸시는 솔직히 이런저런 세팅 해주는게 대부분이다. 코드는 문서에 나와있는것만 써도 일반적으로 사용하기 충분하다. FCM 프로젝트 생성 FCM 콘솔에 로그인 후 프로젝트 추가 클릭 https://console.firebase.google.com/ 프로젝트 이름 입력 후 계속 클릭 계속 클릭 후 계정선택 → Default Account for Firebase 선택 → 프로젝트 만들기 클릭 프로젝트에 앱 추가 iOS 앱 추가 버튼 클릭 xcode에서 Bundle Id 확인 Bundle Id 입력 후 앱 등록 클릭 .plist 파일 다운로드 → xcode에서 프로젝트 루트 디렉토리에 추가 후 다음 클릭 firebase 라이브러리 추가 # pod 파일이 없을 경우 프로젝트 최상단에서 명령어 실행 pod..

Mobile/iOS 2023.01.14

Spring-webflux #1 - 소개

Webflux Spring 5에서 새롭게 추가된 모듈이며 Cilent, Server에서 reactive 스타일의 어플리케이션 개발을 도와주는 Reactive-Stack Web Framework이다. non-blocking, Reactive Stream을 지원한다. Webflux 등장 이유 기존에 있던 서블릿 3.1 NIO는 서블릿으로 non-blocking을 구현하려면 다른 동기 처리나 블로킹 방식을 쓰는 API를 사용하기 어려웠다. 따라서 다른 동기 처리, blocking 방식을 쓰는 API와도 잘 동작하는 새 공통 API인 Webflux를 만들게 되었다. Reactive Stream non-blocking Backpressure를 이용한 비동기 데이터 처리의 표준이며 비동기를 넘어 스트림 데이터 교환..

728x90