본문 바로가기

전체 글157

FCM 토큰 이용해서 상대방에게 메세지 날리기 (feat.Retrofit) 1편 오늘은 Firebase FCM 을 이용해서 상대방에게 메세지 날리는것을 해보겠습니다 . 먼저 Firebase를 이용하는것이니 Firebase에 자신의 앱을 등록하고 build gradle을 추가해줘야겠죠? https://firebase.google.com/ 홈페이지에 가서 콘솔로 이동을 합니다 . 그런다음에 프로젝트 추가를 해줍니다 . 프로젝트 이름은 자신이 하고싶은 이름으로 설정을 해주시면 되겠습니다 . 그다음에 화면에 안드로이드 이미지버튼을 눌러서 프로젝트에 자신의 앱을 추가해줘야합니다. 안드로이드 패키지이름을 써주시고 ( 자신의 안드로이드 스튜디오 메니페스트 최상단에 package 이름을 그대로 복사해서 넣어주셔야됩니다 . (예시. com.example.example)) 그 밑에 앱 닉네임은 편한대.. 2021. 11. 9.
생명주기에 대하여 어느 분이 너무 정리를 잘 해주셔서 올리게 되었습니다 . 참고 https://www.notion.so/Activity-Fragment-LifeCycle-a5ba57dc06d1487da622358989f5a724 Activity LifeCycle Activity LifeCycle은 Activity가 시작되고 종료되는 시점까지의 상태를 Activity LifeCycle이라 한다. Activity LifeCycle에는 onCreate(), onStart(), onResume(), onPause(), onStop(), onDestroy(), onRestart()가 있다. onCreate()-전체 LifeCycle 동안 "한 번"만 발생한다. -이 메서드에는 XML, 멤버 변수 정의, 일부 UI구성 등 설정을 한.. 2021. 10. 21.
Socket.io에 대해서 오늘은 Socket.io에 대해서 적어보겠습니다 일단 Socket.io 이름만 들어도 Socket이란것이 무엇인지 알아야 될 것 같은 느낌을 줍니다. 소켓 이란? 소켓 → 프로토콜, ip주소, 포트넘버로 정의 됨. 떨어져 있는 두 호스트를 연결해주는 도구로써 인터페이스 역할. 데이터를 주고 받을 수 있는 구조체로 소켓을 통해 데이터 통로가 만들어 진다. 소켓의 역할에 따라 클라이언트 소켓, 서버소켓으로 구분된다. 이렇게 간단히 소개할 수 있겠습니다. 간단하게 말하면 프로토콜과 ip주소, 포트넘버로 떨어져있는 두 디바이스를 연결해주는 역할을 하고 있다고 알고 계시면 되겠습니다. 그럼 Socket.io란 무엇인가??? Socket.io란 Websocket을 기반으로 실시간 웹 애플리케이션을 위한 JavaSc.. 2021. 10. 21.
Sharedpreferences 사용해서 자동로그인 기능 추가하기! 2편 (Kotlin) 앞에 1탄에 이어서 2탄으로 마무리를 하면서 자동 로그인 기능을 완료해보도록 하겠습니다. 1탄에서는 저장을 하였으니 2탄에서는 저장된 데이터를 꺼내오도록 해야겠죠?? 불러오는것 또한 간단합니다. val pref = getSharedPreferences("userEmail", 0) //shared에 있는 'userEmail'이란 데이터를 불러온다는 뜻. 0 대신 MODE_PRIVATE라고 입력하셔도 됩니다. val savedEmail =pref.getString("email", "").toString() //1번째는 데이터 키 값이고 2번째는 키 값에 데이터가 존재하지않을때 대체 값 입니다. Log.d(TAG, savedEmail) // 로그를 찍어서 확인해보세요 이 코드를 적어주시면 불러오기 완료입니다... 2021. 10. 19.
WebRTC 동작원리 및 나의 생각 오늘은 WebRTC에 대한 동작원리를 제가 아는 만큼 설명을 해보겠습니다 . Webrtc란 별도의 소프트웨어 도움이 없이 음성 , 영상 미디어, 텍스트 ,파일 데이터를 주고받을 수 있게 하는 기술이다. 다시말하자면 어떤 플러그인(상업회사에서 개발되어 배포되는 소프트웨어 (ex adobe flash, window media player) 필요없이 음성채팅, 화상채팅, 데이터 교환이 가능하다. 라고 생각하시면 되겠습니다. WebRTC는 P2P통신을 하기위해 적합한 기술인데요 이유로는 WebRTC가 여러 API를 제공해주기 때문입니다. MediaStream : 사용자의 카메라 혹은 마이크 등 input 기기의 데이터 스트림에 접근한다. RTCPeerConnection : peer간 안정적이고 효율적인 통신 설.. 2021. 10. 19.
Node.js 에 대한 나의 생각(feat.javascript) 2편 앞서 1편에서 말한 것 처럼 JavaScript를 좀 이해하고나면 Node.js 를 이해하기가 좀 더 쉬워진다. 안봤다면 1편을 보고 오세요~ 먼저 node.js의 구조 * Node.js는 Javascript와 C++언어로 구성되어 있습니다. V8엔진도 70% 이상의 C++로 구성되어 있으며, libuv는 100%의 C++언어로 구성된 라이브러리 입니다. 하지만 우리는 C/C++언어를 몰라도 Node.js는 사용할 수 있습니다. 이는 V8 엔진에서 Javascript를 C++로 Translate 해주기 때문에 가능한 일입니다. 또한 Node.js의 코어 라이브러리는 process.binding()을 통해 Javascript 환경에서 사용될 수 있습니다. 예를 들어 Node.js의 내장 모듈인 crypto.. 2021. 10. 18.