난장 Dev

    Flutter - Firebase Cloud Messaging 연동 - 1. iOS Push 사용을 위한 Keys 만들기

    Flutter - Firebase Cloud Messaging 연동 - 1. iOS Push 사용을 위한 Keys 만들기

    Firebase에서 안드로이드 환경은 손쉽게 구성이 가능하다. iOS도 예전과는 다르게 Keys라는 것으로 대체된 듯싶은데, 이게 참 편리한 것 같다. 처음에 iOS시작할 때는 앱마다 따로 Push 권한을 주고 푸시 서비스를 위한 인증서를 구성했는데, Keys에서 인증서와 팀 ID, 키 ID로 팀 ID로 개발된 앱은 모두 한 개의 key로 푸시 서비스(APNs)를 이용할 수 있다(제대로 이해한 건지 싶지만... 해보니 그런 것 같더라..). 3rd에서 직접 푸시 서버를 구성해서 사용하는 것도 방법이지만, Google의 Firebase Cloud Messaging(이하 FCM)을 이용하면 안드로이드와 iOS를 따로 구현할 필요 없이 FCM에 메시지를 보내면 푸시 서비스를 사용할 수 있다. 간단하게 http..

    Flutter - Firebase Cloud Messaging 연동 - 소개

    Flutter - Firebase Cloud Messaging 연동 - 소개

    구글에서 만들어서 그런지 Firebase 관련 라이브러리 준비가 잘 되어 있다. 이번에 올릴 자료는 Flutter 와 Firebase messaging 연동을 위해 필요한 작업들을 하나씩 진행해 보고자 한다. 단계별로 다음과 같이 진행하고자 한다. 1. Push 사용을 위한 Keys 만들기 2. Firebase 등록 3. Flutter 앱 생성 - 연동 4. 푸시 테스트 까지로 나누어 보았다. 웃긴게.. 시작한지 겨우 이틀인데... 먼가 많이 해본듯한 느낌이 든다. ㅋㅋㅋ 3번까지 캡쳐는 다해놨는데.. 일단 테스트는 차수별로 올리면서 진행해 봐야겠다.

    Flutter - macOS 에 Flutter 설치하기

    Flutter - macOS 에 Flutter 설치하기

    한글화 사이트에서 자세하게 설명되어 있었지만, 그래도 남겨보는 것도 의미가 있겠지. 설치방법은 아래 사이트에서 순서대로 한글: https://flutter-ko.dev/docs/get-started/install/macos 맥OS에서 설치 flutter-ko.dev 영문: https://flutter.dev/docs/get-started/install/macos macOS install How to install on macOS. flutter.dev 1. 시스템 요구사항 - 특별히 문제 될 건 없었음 - macOS Catalina가 설치되는 환경이면 잘 되는 것 같음 - Macbook pro 15 2018, Mac mini 2012에서 테스트 완료 - 사전에 JDK 설치 권장 (7 버전 이상 추천, 이..

    오라클 - count에서 case 문 사용하기

    오라클 - count에서 case 문 사용하기

    카운트 하는 여러가지 방법. 전체건수에서 성별 구하는 것은 다른 방법으로도 가능하지만, COUNT로 표현하는 방법으로 작성했다. (예: SUM( DECODE( H_SEX, '1', 1, 0 ) ) 건수_남 ) 통계할 때 사용했었는데 DISTINCT안에 CASE 사용하는 것은 처음인 것 같아서... 1. COUNT 안에서 CASE 문 사용 가능: 전체 건수로 작성하고자 할때 2. COUNT 안에 DISTINCT + CASE 사용 가능: 중복제거 후 사용하고자 할때 SELECT COUNT(*) 전체건수 , COUNT( CASE WHEN H_SEX = '1' THEN H_ID END ) 건수_남 , COUNT( CASE WHEN H_SEX = '2' THEN H_ID END ) 건수_여 , COUNT( DIS..

    오라클 - row 데이터를 컬럼 하나로 출력하기

    오라클 - row 데이터를 컬럼 하나로 출력하기

    이것도 생각보다 자주 사용하는 것 같다. 사용하다 보니 문자열 byte가 4000 기준으로 코드가 다르긴 한데, 난 그냥 4000바이트 이상 조회되는 것으로 대부분 처리한다. 1. 컬럼이 4000byte 이상인 경우 // 4000byte 이상 SELECT SUBSTR(XMLAGG (XMLELEMENT(X,',', LEVEL ) ORDER BY LEVEL).EXTRACT('//text()'),2) CONTENTS FROM DUAL CONNECT BY LEVEL

    오라클 - 전화번호 표시(정리)를 위한 쿼리 - 정규식

    오라클 - 전화번호 표시(정리)를 위한 쿼리 - 정규식

    전화번호의 경우 형식에 맞게 작성해주면 좋으련만, 상황에 따라서 조금 다르게 입력되는 경우가 있다. 처음 개발할 때부터 숫자만 입력하게 만들거나, 기타 다른 것을 입력 못하게 하거나, 혹은 띄어쓰기나 이런 것들을 다 개발해 넣기엔 시간이 없으려나. 간단하게 입력된 데이터를 보고 숫자만 불러와서 형식에 맞게 다시 표시하는 정규식이다. 휴대전화 번호나 집 전화번호 등이 000-0000-0000 등의 형식으로 보인다. SELECT REGEXP_REPLACE(REGEXP_REPLACE ('010-1111-1111', '[^[:digit:]]'), '(^02|050[[:digit:]]{1}|[[:digit:]]{3})([[:digit:]]{3,4})([[:digit:]]{4})', '\1-\2-\3') FROM ..

    오라클 - 합집합, 교집합, 차집합

    오라클 - 합집합, 교집합, 차집합

    매번 UNION, UNION ALL만 사용하다 교집합, 차집합이 생각이 안나서,.. 이것도 특별히 자주 사용하는 것은 아닌데, 플래시백 하면 한 번씩 생각나더라. 기존 데이터랑 지금 데이터가 다른 거 찾아낼 때 유용했음. 한두 개야 그냥 하면 되는데 데이터가 많아질수록 편리하게 검사할 수 있음. https://blog.naver.com/langnei/220708702966 오라클 합집합/교집합/차집합 (UNION/UNION ALL/INTERSECT/MINUS) UNION : 합집합UNION은 두 테이블의 결합을 나타내며, 결합시키는 두 테이블의 중복되지 않은 값... blog.naver.com UNION : 합집합 - UNION은 두 테이블의 결합을 나타내며, 결합시키는 두 테이블의 중복되지 않은 값들을..

    JSTL 문법 - eq, ne, lt, gt, le, ge 정리

    JSTL 문법 - eq, ne, lt, gt, le, ge 정리

    이것도... 참... 별거 아닌데... 안쓰면 잊어버리네... 보통 그냥 == 같이 사용하기도 하는데 어쩔 땐 오류가 발생. 그냥 eq를 넣으면 해결 되는 경우가 종종 발생 되었다. 모르면 또 찾을 것 같아서... /* == 또는 eq != 또는 ne 또는 gt = 또는 ge */

    오라클 - 쉼표로 데이터 쪼개기 - 컬럼 데이터로 변경하기

    오라클 - 쉼표로 데이터 쪼개기 - 컬럼 데이터로 변경하기

    개발자마다 조금 다르게 사용하고, 또 입력된 데이터를 상황에 맞춰 변경할 때가 있다. SQL쿼리도 그런 경우인데... 멀티 체크를 한 데이터를 하나씩 쪼개는 경우에 사용했다. 진짜 별거 아닌데... 찾으면 나오는 자료인데... 꼭 찾으려고 하면 안나와서 남긴다. 기억하면 될 걸... 그래도 매일 사용하는게 아니라서 그런지.. 자꾸 잊어버리게 된다. SELECT REGEXP_SUBSTR(VAL, '[^,]+', 1, LEVEL) VAL FROM (SELECT '1,2,3,4,5' VAL FROM DUAL) CONNECT BY REGEXP_SUBSTR(VAL, '[^,]+', 1, LEVEL ) IS NOT NULL ; 한줄에 표시된 '1,2,3,4,5' 를 1 2 3 4 5 와 같이 한줄로 표시된다.

    Flutter - 정리

    Flutter - 정리

    Flutter - 가장 빠른 아름다운 네이티브 앱Flutter(플러터)는 하나의 코드베이스로 모바일, 웹, 데스크톱에서 네이티브로 컴파일 되는 구글의 아름다운 UI 툴킷입니다. -Flutter 한글화 사이트 안드로이드, iOS를 함께 개발하면 좋겠지만, 혼자서 모든 걸 감당하기엔 역시나 무리다. 그에 따라 새로운 크로스 플랫폼 개발을 위해 알아보는 중 생각보다 구현이 쉬운 Flutter을 알게 되었고, 시작하게 되었다. 한글화 된 부분도 있지만 아직 부족한 것도 많고, 더불어 내 공부를 위해서... 정리가 필요할 것 같아 남겨 놓으려고 한다. Flutter는 Dart 라는 언어를 사용한다. 위키를 보면, 구글에서 만들었고 프론트엔드 구현을 목적으로 개발한 프로그래밍 언어라고 한다. 공개는 2011년 10..