가로 세로 화면 크기 가져오기 (getRealSize() deprecated)
API 30이상부터는 해당 버전부터 생긴 WindowMetrics이용 30미만은 이전 방식 그대로 사용 API 31부터 WindowMetrics사용을 권장하며 아래 메서드들이 deprecated 상태다. (링크) Display.getSize();// API 30부터 deprecated Display.getRealSize();
API 30이상부터는 해당 버전부터 생긴 WindowMetrics이용 30미만은 이전 방식 그대로 사용 API 31부터 WindowMetrics사용을 권장하며 아래 메서드들이 deprecated 상태다. (링크) Display.getSize();// API 30부터 deprecated Display.getRealSize();
px = dp * density(기기dpi / 160dpi) dp = px / density(기기dpi / 160dpi) public int dpToPx(int dp) { return Math.round(dp * (getResources().getDisplayMetrics().xdpi / DisplayMetrics.DENSITY_DEFAULT)); } public float dpToPx(float dp) { return dp * getResources().getDisplayMetrics().density; } public int pxToDp(int px) { return Math.round(px / (getResources().getDisplayMetrics().xdpi / DisplayMetrics.D..
Uri uri = Uri.parse("http://www.naver.com"); Intent intent = new Intent(Intent.ACTION_VIEW, uri); startActivity(intent);
안드로이드 개발에서 사용하는 UI의 크기 단위이다. 이것에 대해 알기전에 픽셀부터 알아야 한다. 픽셀(pixel, px) 화소라고도 한다. 화면을 구성하는 기본 단위이다. 해상도랑 관련이 있는 것으로 같은 그림이나 영상을 나타낸다 하더라도 픽셀의 수가 많은 것이 해상도가 높은 것이다. 이를 위해 추가적으로 설명해야 하는 것이 dpi(dot per inch)란 것이다. dpi란 1인치 공간에 포함된 점 또는 픽셀의 수를 말한다. 같은 크기의 공간이라도 픽셀의 수가 더 많을수록 세세하게 표현되므로 해상도가 높은 것이다. 이제 크기가 다른 A, B라는 두 핸드폰 기기에서 한 이미지를 px단위로 그린다고 보자. A는 100x100크기이고 B는 50x50크기라고 치자. 이미지를 25x25크기로 그리면 A에선 4분..
액션바 제거 방법으로 themes.xml에 있는 style을 수정해서 제거하는 방법과 소스코드로 제거하는 방법이 있다. 1. themes.xml의 style수정하여 제거 app - res - values - themes - themes.xml 열기 초기엔 위 이미지와 비슷할 것이다. 모든 액티비티에서 제거 style의 parent를 Theme.MaterialComponents.DayNight.DarkActionBar에서 Theme.MaterialComponents.DayNight.NoActionBar로 변경하면 끝이다. 모든 액티비티에서 액션바가 사라지는 이유는 AndroidManifest.xml에서 application태그의 속성 중 android:theme의 값이 @style/Theme.TestApp..
문제점 여러가지가 존재 DB에서 hash값을 저장하는 컬럼의 길이가 60자 미만 password_verify 사용 시 첫번째 매개변수가 비교할 값, 두번째가 해시값인데 서로 바꿔 사용한 경우 password_verify에 들어가는 첫번째 매개변수인 비교할 값에 해시값을 넣은 경우 해결법 각 번호에 해당하는 문제의 해결법 컬럼의 길이를 60자 이상으로 변경 매개변수에 들어가야하는 값에 맞게 넣어줌 해시값이 아닌 일반 값을 넣어 비교 대체 어디서 본건지 난 바보같이 3번에 해당하는 문제였다 심지어 공식문서에도 잘 나와있었다 남이 쓴 예제보단 공식문서부터 잘 살펴보자 참고 Why is password_verify returning false? I'm using a password_verify to check ..
문제점 여러 문제가 있는 것 같지만 내 문제는 서비스로 등록하려는 대상을 /etc/init.d에 복사만하고 등록 및 활성화를 하지 않아서 발생했다. 해결법 chkconfig로 서비스 등록을 하려했으나 내가 가진 서버의 OS는 Ubuntu-Desktop 20.04 LTS로 해당 명령어는 사라진지 오래라고 한다. 대체할 수 있는 명령으로 update-rc.d가 있다. 아파치 서비스를 등록하는 것을 예시로 든다.(내 아파치 서비스의 이름은 apache이지만 다른 것이면 그것을 넣으면 된다) update-rc.d apache defaults defaults를 통해 사용할 수 있도록 등록
Ubuntu 20.04 LTS 사용 리눅스 서비스는 /etc/init.d/에 있는 스크립트로 시작, 중지, 재시작 가능 서비스 등록을 위해서 /etc/init.d/에 서비스 파일을 복사해야 함 서비스 등록에 update-rc.d를 사용 서비스 등록 update-rc.d 서비스이름 defaults 로 등록 서비스가 등록되었는지 ls -l /etc/rc?.d/*서비스이름 입력해 확인해본다. 대부분 정상적으로 등록되었다면 rc0 부터 rc6까지 모두 있을 것이고 2 3 4 5에 S01서비스이름 0 1 6에 K01서비스이름 으로 등록되어 있을 것이다. S 또는 K와 서비스이름 사이의 숫자는 달라도 상관없다. 서비스 삭제 update-rc.d -f 서비스이름 remove 로 삭제 등록할 때와 같이 ls -l /e..
Ubuntu 20.04 LTS 사용 문제점 /etc/init.d/ 에 있는 apache 서비스 파일에 Default-Start에 관련한 내용이 있지 않아 발생 해결방법 # Default-Start:를 # Default-Start: 2 3 4 5로 변경 만약 Default-Start가 없다면 관련된 문장이 없을 것이라 생각되니 아래 내용을 모두 추가하면 됨 ### BEGIN INIT INFO # Provides: 서비스 이름 # Required-Start: # Required-Stop: # Default-Start: 2 3 4 5 # Default-Stop: 0 1 6 # Short-Description: description ### END INIT INFO 참고 Default-Start contains ..
문제점 파이썬 가상환경에서 flask모듈이 2.0.1버전일 때 flask-restful모듈이 0.3.8버전이면 발생 해결법 flask모듈의 버전을 1.1.2버전으로 다운그레이드하거나 flask-restful모듈을 0.3.9버전으로 업그레이드하면 해결