안드로이드 코틀린168 [Kotlin][Android] 녹음기능 구현하기 녹음을 하기전 매니페스트에 녹음과 파일의 읽기쓰기 권한을 명시해줘야한다. 매니페스트에 명시하고 해당 권한은 위험 권한에 속하기 때문에 유저에게도 권한을 승인받아야 한다. empowerRecordAudioAndWriteReadStorage() 을 통해서 권한을 승인받고 녹음을 진행하게 되면 내폴더에 녹음 파일이 생기는것을 확인 할 수 있다. class MainActivity : AppCompatActivity() { private var outputPath: String? = null private var mediaRecorder : MediaRecorder? = null private var state : Boolean = false @RequiresApi(Build.VERSION_CODES.R) ove.. 2022. 2. 10. [Kotlin][Android] BroadCast 이벤트 송신, 수신하기 안녕하세요. 이번 시간에는 안드로이드 4대 컴포넌트 가운데 하나인 BroadCast Receiver를 코틀린 언어로 간단히 사용하는 예제를 만들어 보도록 하겠습니다. BroadCast Receiver란? Android apps can send or receive broadcast messages from the Android system and other Android apps, similar to the publish-subscribe design pattern. 공식 홈페이지에서 'Broadcast Receiver'에 대한 설명을 인용해보았습니다. 즉 저희가 만들고 있는 앱이 안드로이드 시스템이나 다른 앱으로부터 메시지를 받을 수 있으며 그 방법은 '게시-구독' 디자인 패턴과 흡사하다고 합니다. 구체.. 2022. 2. 4. [Kotlin][Android] 더보기가 있는 텍스트뷰 만들기 안녕하세요. 이번 글에서는 라이브러리를 통해 위 기능을 할 수 있는 텍스트뷰를 사용해 구현해보겠습니다. 테스트한 android sdk는 28입니다. app 수준 gradle에 라이브러리를 추가해줍니다. dependencies { ... implementation 'kr.co.prnd:readmore-textview:1.0.0' ... } 레이아웃 중 원하는 곳에 더보기 기능이 있는 텍스트뷰를 위치해줍니다. readMoreColor : 더보기 텍스트의 색상 readMoreMaxLine : 최대로 표시할 텍스트 줄 수 readMoreText : 글자 초과 시 표시할 텍스트 아래와 같이 긴 문자열을 텍스트뷰에 세팅해줍니다. val textView = context.findViewById(R.id.tv_text.. 2022. 2. 3. [Kotlin][Android] 이미지 회전 오늘은 아래와 같이 이미지뷰 회전을 해보겠습니다. 아래가 주요 코든데요 imageView.rotation 을 통해서 현재 각도를 구합니다. 그 후 아래의 메소드를 통해서 ofFloat( target: T, property : Property!, vararg values : Float ):ObjectAnimator! target 은 T : 애니메이션 효과를 줄 개체이고 property 는 애니메이션이 되는 속성입니다. Float는 애니메이션될 정도의 값입니다. 이를 통해서 setDuration(300) 을 통해서 몇 초 동안 애니메이션이 진행될지를 정해줍니다. 그리고 start를 통해서 애니메이션 효과가 진행됩니다. 이 내용은 아래와 같습니다. private fun imageViewRotate(){ val.. 2022. 1. 30. [Kotlin][Android] url로 가져온 이미지 다운로드하기 안녕하세요 이번 글에서는 이미지 url을 가지고 이미지를 다운로드하는 기능을 만들어보겠습니다. 환경: android sdk 28 / viewbinding 사용 먼저 manifest에서 권한설정을 해주겠습니다 다음으로 간단한 레이아웃을 만들어보겠습니다. activity_image.xml url을 입력할 수 있는 edit text와 다운로드하는 버튼이 있는 화면입니다. 마지막으로 다운로드 동작을 하는 액티비티를 만들어줍니다. ImageActivity.kt class ImageActivity : AppCompatActivity() { lateinit var binding: ActivityImageBinding override fun onCreate(savedInstanceState: Bundle?) { sup.. 2022. 1. 22. [Kotlin][Android] Activity 이동 애니메이션 Kotlin 으로 Activity 이동시 화면이동 애니메이션 을 해보겠습니다. MainActivty 입니다. 총 두개의 버튼을 만들어줍니다. 1. SlideLeftActivity 로 이동하는는 버튼 2. SlideUpActivity 로 이동하는 버튼 val intent = Intent(Context, Class) 를 통해 어디 Activity로 이동할지 지정합니다. overridePendingTransition(int enterAnim, int exitAnim) 를 통해 처음과 끝에 대한 애니메이션 을 지정해줍니다. class MainActivity : AppCompatActivity() { override fun onCreate(savedInstanceState: Bundle?) { super.onCr.. 2022. 1. 18. [Kotlin][Android] FCM 메시지 받기 안녕하세요. 이번시간에는 FCM을 통해 메시지를 받는 방법에 대해서 포스팅을 작성하고자 합니다. FCM이란? Firebase 클라우드 메시징(FCM)은 무료로 메시지를 안정적으로 전송할 수 있는 교차 플랫폼 메시징 솔루션입니다. _(공홈) 특징으로는 각 플랫폼 환경별로 개발할 필요가 없이 Push 메시지를 전송할 수 있기 때문입니다. 또한 사용자는 낮은 배터리와 네트워크의 사용만으로도 메세지를 실시간으로 송수신 처리를 할 수 있다는 이점도 있습니다. 추가적인 FCM의 아키텍처를 확인하고 싶으시다면 아래 글을 확인해보세요. https://firebase.google.com/docs/cloud-messaging/fcm-architecture?hl=ko FCM 아키텍처 개요 | Firebase Google은 .. 2022. 1. 11. [Kotlin][Android] 이미지 url로 이미지 로딩하기 이번 포스트에서는 이미지 로딩 라이브러리 Glide를 사용해 url로 이미지를 뷰에 로딩해보겠습니다. Glide는 아래 링크를 통해 더 자세히 알아보실 수 있습니다. bumptech/glide: An image loading and caching library for Android focused on smooth scrolling (github.com) GitHub - bumptech/glide: An image loading and caching library for Android focused on smooth scrolling An image loading and caching library for Android focused on smooth scrolling - GitHub - bumptech/.. 2022. 1. 10. [Kotlin][Android] 비밀번호 hash 암호화하기 안녕하세요 :) 이번에는 안드로이드에서 비밀번호를 hash 암호화 하는 방법에 대해 알아보겠습니다. 아래에 예제가 포함되어 설명되긴 하지만, 좀더 손쉽게 사용가능한 방법으로 스틱코드 extension을 IDE에서 사용하신다면, 해당 링크의 포스트 글을 즐겨찾기 하시는 것으로 손쉽게 코드를 사용하실 수 있습니다. https://stickode.com/detail.html?no=2711 스틱코드 stickode.com 단방향 해시 함수란? 단방향 해시 함수는 수학적인 연산을 통해 원본 메시지를 변화화여 암호화된 메시지인 다이제스트(digest)를 생성하는 함수를 뜻합니다. 원본 메시지를 알면 암호화된 메시지를 구할수 있지만, 반대인 암호화된 메시지로 원본 메시지를 구할 수 없기 때문에 '단방향' 이라고 부릅.. 2022. 1. 5. 이전 1 ··· 8 9 10 11 12 13 14 ··· 19 다음