프로그래밍 354

[안드로이드] Keytool을 이용해 KeyHash, SHA-1 얻기

안드로이드 키 해시 얻는 방법, 터미널에서 아래와 같이 입력 해 주면된다. 디버그 Keyhash 확인법 keytool -exportcert -alias androiddebugkey -keystore ~/.android/debug.keystore -storepass android -keypass android | openssl sha1 -binary | openssl base64 릴리즈 Keyhash 확인법 디버그 확인 코드랑 같은데 variable만 다르다. keytool -exportcert -alias gnacompany -keystore -storepass -keypass | openssl sha1 -binary | openssl base64 디버그 SHA-1 / SHA-256 확인법 keytool..

Catalina 이후 맥북 터미널 환경변수 PATH 설정법 (zsh: command not found:)

오늘 새 맥북을 사고 여러가지 깔고있는데 환경변수 설정을 터미널을 켤때마다 해줘야 하는거였다! source ./bashrc 왜 이럴까..왜 이렇게 귀찮게 되어있을까 싶었는데 자세히 보니 예전 쓰던 맥북(Mojave)은 어떤 명령어를 찾을 수 없을때 -bash가 앞에 붙어서 알려주고는 했는데 새로운 M1 맥북(Big sur)에서는 zsh가 앞에 붙어있었다. 찾아보니 Mac OS X Catalina 부터 zsh(Z shell)이 기본 쉘로 변경되었다고 한다. 맨날 bash shell만 봤었는데 찾아보니 이 녀석 역사가 깊었다. -bash: : command not found zsh: command not found 터미널을 켤때 .zshrc가 작동하는 거였고, 그래서 .zshrc 파일을 만들어서 .bashr..

[Node.js] Selenium 사용법을 익혀보자

Selenium은 웹 드라이버를 통해 웹 브라우저를 자동화하여 웹 테스트를 도와주는 툴이다. 말은 착하지만 매크로를 만들거나 크롤링 할때도 도움이 된다. ^^ 실제 브라우저를 띄우고 코드를 수행할 수 있으며, 일반적으로 크롤링 하는 방식보다 훨씬 더 상호작용을 사람같이! 할 수 있다. 페이지가 다 뜰때까지 기다리고, 클릭하고, 입력하는 등... 그러면 Node.js 에서 selenium을 사용하는 방법을 익혀보자. 패키지 설치 먼저 selenium-webdriver 패키지를 설치해야한다. npm i selenium-webdriver 파이어 폭스 브라우저로 Selenium을 실행해야 할 경우, geckodriver를 설치해야한다. npm i geckodriver 실행환경이 Ubuntu일 경우 geckodr..

[안드로이드] 주요 이미지 라이브러리 메모리 사용량 비교해보기! (Glide vs Picasso vs Coil)

안드로이드에서 Glide, Picasso, Coil 등 선택할 수 있는 이미지 라이브러리(Image library)의 폭은 넓다. 뭐 대부분 그냥 닥치고 글라이드! 하긴하지만, 메모리 관리 측면에서 누가 젤 잘하는지 항상 속으로 궁금했다... 주말에 심심하니까 간단히 테스트 해봤다. 비교군 - Glide: 1군 - Picasso: 2인자 - Coil: 떠오르는 신예 앱 기능 앱 자체는 간단하다. 화면 하나에 엄청나게 큰 이미지 목록을 보여주는거다. RecyclerView에 Adapter를 붙이고 로드! Coil 같은 경우에는 이미지 곡선처리하는데 이미지뷰 자체가 아닌 이미지 자체를 곡선처리 해버려서 모든 라이브러리가 곡선처리는 따로 하지 않도록 RoundedImageView라는 라이브러리를 사용하여 이미..

[마크 플러그인 강의] 플러그인 개발 전 알아두어야 할 것들

취미 삼아 마인크래프트(Minecraft) 플러그인을 개발해본적이있는데, 제대로 된 국내 자료가 잘없어서 아쉬웠던 기억이있습니다. 그래서 마인크래프트 플러그인을 만들기 전에 알아둬야 할것들을 정리 해 보려고합니다. 프로그래밍 언어를 아무것도 몰라요. 그래도 되나요? Java가 그래도 쉬운 언어이기때문에 C라도 할 줄 아신다면 충분히 가능합니다. 만약에 그냥 강의만 보고 따라서 타이핑 하겠다하시면 언어를 안배우셔도 됩니다. 응용을 하는건 눈치껏..ㅎㅎ 하셔야할겁니다. 마인크래프트 플러그인 개발 툴은 무엇인가요? Java를 편하게 다룰 수 있는 툴이라면 뭐든지 됩니다. 일반적으로 InteliJ와 Eclipse를 많이 사용하는 모습을 보실 수 있는데, InteliJ가 조금더 사용하기 편리해서 그걸 추천드립니다..

IP와 Subnet

IPv4: 32bit = 8bit . 8bit . 8bit . 8bit IP = 네트워크부 + 호스트부 192.168.1.119 Example) 굵은 글자가 네트워크부 / 밑줄글자가 호스트부 IP 주소는 네트워크 부와 호스트 부로 구성되어있다. 라우터는 송신지 IP의 네트워크 부 정보를 보고 목적지가 같은 네트워크에 있는지 판단한다. 어드레스 클래스(Address class) 이 네트워크부를 어디까지 할지 고정해서 정해둔것이 어드레스 클래스다. 가능한 호스트 주소 수에서 2를 빼는 이유는 모든 비트가 0인 주소와, 모든 비트가 1인 주소를 호스트 주소로 할당하지 않는 예약된 IP 주소이기 때문이다. 십진수로는 0과 255가된다. xxx.xxx.xxx.0: 네트워크 전체 의미 xxx.xxx.xxx.255:..