본문 바로가기

안드로이드 25

[안드로이드] FCM 클릭시 이벤트 처리하기 기획팀 요구사항 : Console에서 FCM를 보낸후 사용자가 클릭하면 원하는 페이지로 가도록 만들어주세요. 나 : 음 일단 해볼게요. 근데 client 단에서 하는 방법은 있는데요. 콘솔은 아직 못찾았어요. 기획팀 : 그래도 콘솔이 좋겠어요. ㅅㄱ요 저런 느낌의 대화가 진행되고 다시 찾아봤습니다. 다양한 페이지를 찾아봤는데 FireBase의 console 로 보내는 FCM의 경우 클릭 이벤트를 구현하는 페이지는 찾기 어려웠습니다. 많은 경우가 메시지 안에 click_action : .MyActivity 를 넣고나서 intent filter로 넘겨버리는 방법을 사용하고 있습니다. 하지만 저는 콘솔에서 해야함으로 일단 콘솔을 봤습니다. 콘솔을 보니 알림부분은 notification 부분에 뜨는 듯하고 아래.. 2020. 5. 27.
[안드로이드] dialog 안에서 startActivity사용하기 제가 구현한 앱에서는 앱 실행시 공지사항을 띄워주는데 이를 Dialog를 사용하여 표시합니다. 근데 이 공지사항에서 바로 인터넷 url 주소로 넘어가야 하는 상황이 생겼습니다. 처음은 일반적인 구현으로 했으나 error: method startActivity in class ContextCompat cannot be applied to given types; startActivity(intent); ^ required: Context,Intent,Bundle found: Intent 다음과 같은 오류를 뱉어냈습니다. 이경우 아주 간단한 해결책이 있습니다. 바로 this를 이용하는 것입니다. 해당 오류의 경우 현재 context를 파악하지 못하기때문에 어느 액티비티에서 intent를 넘기는 건지 특정하지 .. 2020. 5. 25.
[안드로이드] 구글은 왜 DP(Density-independent Pixel) 만들었을가 dp를 왜 쓸까에 대한 고민이 문득 든 것인 단톡방에서 "dp 대신에 cm를 쓰면 더 직관적이지 않느냐?" 라는 물음에서 시작되었습니다. 생각을 해보니 맞는 말이기도 하여 이 기회에 제 생각을 이렇게 글로 작성합니다. DP는 Device-independent Pixel 또는 Density-independent Pixel 의 약자입니다. 말 그대로 장치에 독립적인 픽셀. 즉 모바일 기기에 맞는 새로운 기준인 것이지요. DP는 장치에 독립적인 픽셀이기에 기존 단위로 측정할 수 있는 단위를 갖습니다. Android 에서는 1dp = 1/160 inch, 또는 0.15875mm 저는 여기서 의문이 생겼습니다. 어찌보면 기존의 inch, mm의 단위체계를 이용해서 가져다 쓰면 되는건데 굳이 새로운 단위체계인 DP.. 2020. 5. 21.
[안드로이드] 원하는 좌표를 구글맵 화면에 표시해보자(LatLngBounds) 맵을 이동할때나 화면에 띄워줄때 특정 마커, 좌표 등을 포함하여 표시해서 보여줘야 할 때가 있습니다. 이때 이용하는 기능이 LatLngbounds 입니다. https://developers.google.com/android/reference/com/google/android/gms/maps/model/LatLngBounds#LatLngBounds(com.google.android.gms.maps.model.LatLng,%20com.google.android.gms.maps.model.LatLng) 아래 사진과 같이 모든 경로가 화면에 표시해줘야하는 상황입니다. 이런 기능을 위해 구글맵은 LatLngBounds 가 있습니다. 해당 기능을 몰랐을때는 원하는 좌표들을 계산해서 중심좌표로 설정하고 줌 레벨을 적.. 2020. 5. 16.