[Android/Kotlin] 토큰 저장/불러오기 (SharedPreferences)
·
App&Web/Android
나는 sharedPreferences를 사용할 것이다. 토큰 저장saveJwt라는 이름의 함수를 만들어서 토큰값을 문자열로 받고, 해당 문자열을 저장하는 방식을 사용했다. // 토큰 저장 private fun saveJwt(jwt: String){ val spf = getSharedPreferences("myToken", MODE_PRIVATE) val editor = spf.edit() editor.putString("jwtToken", jwt) editor.apply() } 토큰 불러오기이번에도 토큰 불러오기를 함수로 따로 빼고 필요할 때마다 호출하도록 했다. // 토큰 불러오기 private fun loadJwt(): S..
[Android/Kotlin] 스플래시 화면 구현
·
App&Web/Android
스플래시 화면(Splash Activity)이란?사용자가 모바일 앱을 시작할 때 표시되는 화면 애플리케이션이 켜지기 전 나오는 화면을 Splash screen 혹은 Launch screen이라고 부름 애플리케이션이 준비될 때까지 표시되는 화면으로써 앱 구동 중 나타나는 흰색 화면과 같은 화면을 대신해서 나타남애플리케이션이 실행되면서 맨 처음 뜨는 로딩 화면이라고 생각하면 됨사용자가 보는 첫번째 화면이므로 앱 사용을 시작하기 전 사용자에게 앱의 첫 인상을 줌 스플래시 화면 예 구현 방법1. layout xml을 만든다.res > layout 으로 들어가서 activity_splash.xml을 만든다.이후 원하는 화면으로 만든다.나는 간단하게 아이콘 이미지만 넣었다. 2. SplashActiviy를 만든..
[Android/Kotlin] 카카오 키 숨기기
·
App&Web/Android
1. .gitignore에 local.properties 추가하기숨겨야 하는 키이기 때문에 gitignore에 숨긴다./local.propertieslocal.properties 2. local.properties에 키 추가하기만약 카카오 네이티브키가 abcd1234라면 아래처럼 local.properties에 추가한다.절대 따옴표로 감싸지 않는다.# 카카오 키 숨기기KAKAO_APP_KEY = abcd1234NATIVE_KAKAO_APP_KEY = kakaoabcd1234 3. build.gradle.kts(Module:app)에 추가하기local.properties에 넣은 키를 BuildConfig 파일에 넣기 위한 세팅을 한다.이 때 buildConfigField랑 manifestPlacehol..
[Android/Kotlin] 다른 Activity 종료
·
App&Web/Android
현재 Activity(액티비티)가 아닌 다른 Activity(액티비티)를 종료하고 싶을 때 1. 지우고픈 Activity(액티비티)에 변수 추가나는 StartActivity를 지우고 싶으니 StartActivity에 아래 코드를 추가했다. companion object { lateinit var _startActivity: StartActivity } 2. 다른 Activity(액티비티)에서 지우고픈 Activity(액티비티) 종료StartActivity를 종료하게할 액티비티에서 StartActivity 종료 코드를 넣는다.예를 들어 MyActivity에서 StartActivity를 종료하고 싶으면 MyActivity에 아래 코드를 추가하면 된다.단, 아래 코드는 내게 맞춤용이..
[Android/Kotlin] 복사하기 기능
·
App&Web/Android
val clipboard: ClipboardManager = getSystemService(CLIPBOARD_SERVICE) as ClipboardManagerval clip = ClipData.newPlainText("코드", "복사하는 문자 내용입니다.")clipboard.setPrimaryClip(clip)
[Android/Kotlin] API 연결
·
App&Web/Android
팀 프로젝트 하면서 사용했던 여러 api 연결 방법들 * 공통적으로 Header를 사용했으나 다른 곳에서는 사용하지 않을 수 있음 1. Parameter (파라미터) 없는 경우DTOdata class SigninDTO ( val status: Int, val isSuccess: Boolean, val accessToken: String?, val has: Boolean?, val message: String?) Interfaceinterface SigninInterface { @POST("링크") fun getSignin( @Header("Authorization") accessToken: String ): Call} Serviceclass ..
[Android/Kotlin] 음성 녹화
·
App&Web/Android
1. 변수 세팅 private var outputPath: String? = null // 녹화한 파일 저장 경로 private var mediaRecorder : MediaRecorder? = null private var state : Boolean = false // 녹음 상태 private var hasRecorded : Boolean = false // 녹화되었는지 여부 private var timerHandler: Handler? = null // 초수 증가용 타이머 private var timerRunnable: Runnable? = null private var secondsElapsed: Int = 0 // 타이머 초 2. 녹음 시작 2-1. 녹음..
[Android/Kotlin] 음성 재생/일시정지
·
App&Web/Android
음성 재생 val myUri: Uri = Uri.parse("링크") if (mediaPlayer == null) { // 일지정지한 적 없을 때 mediaPlayer = MediaPlayer().apply { setAudioStreamType(AudioManager.STREAM_MUSIC) setDataSource(context, myUri) prepare() ..