전체 글

전체 글

    [안드로이드&코틀린] 푸시알림오는 알람 앱 만들기, as, alarmManger, pendingIntent, tag, data class get()예제

    [안드로이드&코틀린] 푸시알림오는 알람 앱 만들기, as, alarmManger, pendingIntent, tag, data class get()예제

    # 결과물 미리보기 TimePicker를 통해서 알람 시간을 설정할 수 있다. 알람 시간을 끝내면 등록된 알람이 메인화면에 뜨게되고, 알람 켜기를 누르면 알람이 작동한다. 해당시간이 되면 아래 와 같이 푸시알림이 온다. 단 엄청 정확한 시간에는 오지 않는다. 안드로이드는 자원 리소스의 낭비를 줄이기 위해서 AlarmManger의 경우 몇가지 제약을 걸어뒀는데 그 덕에 매초마다 확인하지 않는다. 실제로 테스트해본 결과 약 1분가량이 늦게 푸시알림이 왔다. # 구현 순서 [시간재설정] 버튼의 로직을 우선 구현했다. TimePickerDialog를 통하여 TimePicker를 여는 행위를 정해줬다. 시간을 등록하면 내가 정의한 TimeModel이 생성되고 SharedPreference로 저장된다. 현재 등록 ..

    [안드로이드&코틀린] 명언앱 만들기, 리사이클러뷰 만들기, ViewPager2,  파이어베이스 remote config ,setPageTransfomer

    [안드로이드&코틀린] 명언앱 만들기, 리사이클러뷰 만들기, ViewPager2, 파이어베이스 remote config ,setPageTransfomer

    [안드로이드&코틀린] 계산기 만들기#4, 동적으로 View추가하기, xml View로 바꾸기, LayoutInflater, inflate 저번 포스팅을 첨부한다. runOnUiThread에 대해서 다뤘다. [안드로이드&코틀린] 계산기 만들기#3, runOnUiThread, 쓰레드에서 UI 저번 포스팅에서는 Room을 사용하는방법에 대해서 간단하게 정리했다. 이번 devforyou.tistory.com LayoutInfalter를 사용했었던 예제이다. # 결과물 미리보기 화면을 넘겨 명언을 보는 앱이다. 매우 쉽다고 생각이 들 수도 있지만 나름 안드로이드 개발에 있어 중요한 개념을 사용했다. 리사이클러 뷰를 사용하여 리스트넘어가는 걸 구현했으며, 데이터 값 또한 FireBase에서 관리하기 때문에 Fire..

    [안드로이드&코틀린] 파이어베이스사용하여 알림보내기, Firebase Cloud Message, 범블비(bumblebee)버전에서 안드로이드 스튜디오 파이어베이스 연결하기, SDK설정 오류

    [안드로이드&코틀린] 파이어베이스사용하여 알림보내기, Firebase Cloud Message, 범블비(bumblebee)버전에서 안드로이드 스튜디오 파이어베이스 연결하기, SDK설정 오류

    # 결과물 미리보기 파이어 베이스를 통하여 내 안드로이드 기기에 알림을 보내는 기능을 구현해봤다. 강의영상을 참고하기도 했지만 달라진 것도 많기 때문에 Firebase와 안드로이드 공식문서를 많이 참고했다. # 파이어베이스 연동하기 ( 안드로이드 스튜디오 범블비 버전 이상 ) 시작하기에 앞서 파이어베이스를 내 안드로이드 프로젝트와 연동하는 작업이 필요하다. 안드로이드 스튜디오의 범블비 버전으로 올라감에 따라 build.gradle(project)에 추가하는 방법이 달려졌다. 이것때문에 살짝 애를 먹었다. 비슷한 것때문에 문제를 겪고 있는 사람들은 아래 내용을 참고하면 될 것 같다. 로그인 - Google 계정 하나의 계정으로 모든 Google 서비스를 Google 계정으로 로그인 accounts.goog..

    [안드로이드&코틀린] 웹브라우저 만들기, WebViewSwipeRefreshLayout, ContentLoadingProgressBar, 뒤로가기 버튼 커스텀,  imeOptions

    [안드로이드&코틀린] 웹브라우저 만들기, WebViewSwipeRefreshLayout, ContentLoadingProgressBar, 뒤로가기 버튼 커스텀, imeOptions

    이번에는 간단한 웹브라우저를 만들었다. 보기에는 진짜 크롬같다는 생각이 먼저 든다. 만들기 전에 내가 하나하나 다 구현해야 할 줄 알았는데, 이미 존재하는 웹브라우저(크롬)을 상속받아서 기능을 구현했다. 뭐 특별히 엄청난 코드를 작성하고, 네트워크쪽이나 보안을 신경쓰면서 만든 것은 아니지만, 이런 기능이 있다는 것이 신기했다. 또한 WebView를 처음으로 써봤는데 신기했다. # 결과물 미리보기 홈버튼, 뒤로가기 버튼, 앞으로가기 버튼, 주소입력창과 스크롤하여 새로고침 기능을 구현했다. 우리가 사용하는 브라우저처럼 검색했을때 주소가 주소창에 계속 바뀌는 기능과, 앞으로가기 뒤로가기버튼도, 갈 곳이 없다면 비활성화 되게 구현했다. 또한 핸드폰자체의 뒤로가기 버튼도 브라우저의 뒤로가기 버튼효과가 나도록 했다..

    [안드로이드&코틀린] 녹음기 만들기, Enum, set(value), run{...}, companion object, MediaRecorder, MediaPlayer, 커스텀 View 만들기

    [안드로이드&코틀린] 녹음기 만들기, Enum, set(value), run{...}, companion object, MediaRecorder, MediaPlayer, 커스텀 View 만들기

    지금까지 강의를 들으면서 가장 어려웠다. 구조가 많이 잡혀서, 이해하기 어려운 부분이 많았다. 내 블로그의 목적은, 포스팅하면서 이해하는 것이니 열심히 포스팅하면서 모르는거 찾아가면서 정리해야겠다. # 결과물 미리보기 원래는 녹음시 내 음성의 크기에 따라서 위에 뜨는 ------모양이 바뀌어야 하는데, 이상하게 내 AVD는 마이크 입력이 잘 작동하지 않았다. 기능은 우리가 흔히 사용하는 녹음기와 똑같지만 별도로 녹음된 음성을 저장하여 관리하지는 않는다. # 구현 순서 사용된 액티비티와 각각의 역할에 대해서 정리하자면, MainActivity 모든 기능들에 대해서 종합적으로 돌아가는 플로우를 구현 SoundVisualizerView 음성이 볼륨에따라서 시각화 되는 View를 만들었음, canvas와 onD..