전체 92

Android 11 Full Screen

Android Full screen 처리하는 방식이 바뀌었는지 이전 코드가 Android 11 폰에서 제대로 동작하지 않더라. 아래 Android developer 사이트를 참고하자. https://developer.android.com/training/system-ui/immersive?hl=ko 전체 화면 모드 사용 설정 | Android 개발자 | Android Developers 동영상, 게임, 이미지 갤러리, 책, 프레젠테이션 슬라이드 같은 콘텐츠를 이용하기에 최적의 환경은 전체 화면입니다. 이 페이지에서는 전체 화면에서 사용자를 콘텐츠에 더욱 몰입하게 하는 방 developer.android.com https://developer.android.com/guide/topics/display-cu..

android 2021.07.29

[android] Dp to Px, Px to Dp

DisplayMetrics를 통해서 density와 densityDpi 값을 구해보면 val density = resources.displayMetrics.density val densityDpi = resources.displayMetrics.densityDpi 기준이 되는 mdpi로 보면 densityDpi = 160 이므로, density = 160 / 160 = 1 즉, 1dp = 1px 그렇다면 density = densityDpi / 160 이라는 공식으로 densityDpi가 440 이라면 density는 2.75가 나온다. ※ Px to Dp val samplePx = 300 val density = resources.displayMetrics.density val value = (samp..

android 2021.06.30

[android] Google play HostnameVerifier issue

모 회사로부터 긴급하게 해결 좀 해달라는 요청을 받았다. 구글 플레이에 앱을 심사 올렸는데, 이와 같은 이메일이 날라왔다는 것이다. Your app(s) are using an unsafe implementation of the HostnameVerifier interface. You can find more information about how resolve the issue in this Google Help Center article. 메일의 의미는 구글 플레이 콘솔에 등록한 versionCode 100, 101의 apk가 HostnameVerifier 이슈가 있기 때문에 이를 2021년 8월 31일까지 해결하라. 그렇지 않으면 구글 플레이에서 앱을 삭제할 것이라는 경고 메시지이다. ※ 원인 Ho..

android 2021.06.25

[android] 방해금지모드 확인 (Do not disturb mode)

try { // off = 0, on - Priority Only = 1, Total Silence = 2, Alarms only = 3 val zenMode = Settings.Global.getInt(contentResolver, "zen_mode") } catch (e: Settings.SettingNotFoundException) { e.printStackTrace() } zenMode값이 0이라면 방해금지모드가 off라는 의미. 즉, 일반상태라는 것. 1은 중요한 알람만 받겠다. 2는 무음모드. 3은 알림만 허용. 이렇게 단순히 방해금지모드를 확인하는 것은 특별한 권한 없이 알아낼 수 있다. 하지만 방해금지모드에서 앱으로 볼륨을 조절과 같은 어떠한 행위를 하려면 권한이 필요하다.

android 2021.06.15

[android] DialogFragment keyEvent (키 이벤트 수신)

▣ 키 이벤트 수신 선언 private val keyEventListener = DialogInterface.OnKeyListener {_, keyCode, event -> if (keyCode == KeyEvent.KEYCODE_ENTER && event.action == KeyEvent.ACTION_DOWN){ } true } ▣ 적용 override fun onCreateView(inflater: LayoutInflater, container: ViewGroup?, savedInstanceState: Bundle?): View? { dialog.setOnKeyListener(keyEventListener) return inflater.inflate(R.layout.yours, container, f..

android 2021.06.04

2016 맥북프로 13인치 논터치바 배터리 스웰링 현상 AS

지난 2016년 가을에 애플은 맥북 디자인을 전체적으로 다 바꿔서 출시했는데, 때마침 내가 쓰던 맥북 흰둥이가 느려서 답답하다 싶어 바꿔야겠다고 마음을 먹고 있던때라 관심있게 본 13인치 맥북프로 논터치바를 구매했다. 그때는 'Fn키가 사라지고 터치바? 더군다나 esc키는 당연히 물리키여야지' 라는 생각으로 너무도 당연하게 논터치바를 선택했다. 그러던 어느날 .. 뭔가 맥북이 뒤뚱거린다는 느낌을 받았는데, 그냥 테이블 수평이 맞지 않나보다 하고 넘어갔다. 사실 평소에는 맥북을 거치해서 사용하기 때문에 이 현상을 알 수가 없었고, 어쩌다 회의할 때 들고 다니면서 그냥 수평이 안맞는 테이블에 내가 앉았구나 하고 쉽게 지나쳐 버린 것이다. ▣ 무상 AS를 받을 수 있을까? 그렇게 시간이 더 지난 뒤에 뒤뚱거림..

살면서 2021.06.01

하이패스 단말기 등록방법, #직접등록, #셀프등록

옵션이 하나도 없는 2015년식 모닝 중고를 타고 고속도로를 달리면서 불편하다고 느낀건, 역시나 하이패스 단말기가 달려있지 않아서 요금소에 직접 돈을 지불하는 것이었다. 그래서 하이패스 단말기를 장착해야겠다는 생각이 들었고, 하이패스 단말기 또한 중고로 구매했다. 어차피 하이패스 단말기는 차를 중고로 팔 때 아니면 폐차 할 때 까지 차량에 붙여놓는 물건이기 때문에, 어지간하면 고장 날 확률도 거의 없어서 중고로 싸게 구매하는 것도 나쁘지는 않다. 중고차에 중고 하이패스 단말기 궁합은 찰떡이다. 아마 하이패스 단말기를 새제품으로 구매했다면 구매처에 차량과 차주의 정보를 알려주면 등록 된 상태로 배송을 해주는 것 같았다. 그러나 나는 하이패스 단말기를 중고로 구매했기 때문에 직접 등록을 해야했다. ▣ 등록 ..

살면서 2021.05.26