youtube 3

[안드로이드] 실시간 네크워크 상태 callbackFlow를 이용해 만들어보자! (Youtube 인터넷 연결처럼 구현)

Youtube를 보다가 네트워크가 끊겨버렸을때 앱은 이를 알아차리고 "네트워크 연결이 불안정합니다" 같은 텍스트가 보여진다. 그러다 네트워크가 연결이되면 별 액션을 취하지 않아도 영상 목록이 뜨게된다. 계속 polling을 하는건가? 싶었지만 찾아보니 그렇게 하지 않아도 되었다. 바로 NetworkCallback을 이용하면 쉽게 구현할 수 있는데, 이 글에서는 Kotlin CallbackFlow를 이용하여 Flow로 만들어서 사용해보려고 한다. NetworkStatusTracker 우리가 만들 NetworkStatusTracker는 다음과 같은 기능을 가진다. 네트워크가 연결되면 이벤트를 방출한다. 네트워크가 끊어지면 이벤트를 방출한다. 먼저, 네트워크 연결 상태를 정의해준다. sealed class N..

자주쓰는 정규식 패턴 (Email, IP, Youtube, URL...)

연속 3번 클릭하면 정규식 전체가 복사됩니다. IP 주소 (IPv4) ^(([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])\.){3}([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])$ IP 주소 (IPv6) ^(([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])\.){3}([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])$ IP 주소 (IPv4, IPv6 포함) ((^\s*((([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])\.){3}([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5]))\..

[Kotlin/Java] Youtube URL인지 체크, Youtube Video ID 가져오기

대세는 유튜브라~ 안드로이드 앱에서 어떤 문자열이 유튜브 URL인지 체크해야할 경우가 잦다. 유튜브는 PC에서 볼 수 있는 youtube.com과 모바일이나 공유시 볼 수 있는 youtu.be 이렇게 생긴 URL이있는데 인터넷을 긁어긁어 모든 Youtube 관련 URL에 대응할 수 있는 완벽한 정규식을 찾아냈다. 하핫 유용하게 사용하세요. object YoutubeUtil { // 유튜브 섬네일 가져옴 fun getThumbnail(url: String): String { val vId = getVideoId(url) return "https://img.youtube.com/vi/$vId/hqdefault.jpg" } fun getVideoId(url: String?): String { var vId =..