Android 43

[Kotlin] WebView 보이기 전 검정화면 안보이게 하는 방법

📱테스트 환경Medium Phoen API 35 ( Android Simulator )테스트 기기를 다른 분 빌려줘서 오랜만에 시뮬레이터를 썼다 ㅎ아무튼 유지보수 할 일이 생겨서 코드를 보는데 마지막 커밋이 3년전 크 ~진짜 손대기 싫었지만 이젠 더이상 미룰 수 없다 .. 라서유지보수를 진행하는데 먼저 targetSdkVersion 을 34 로 올려달라고 하셔서( 원래는 21 이였다 ㅎ )올리려고 보니 ~ 에러가 굉장해 엄청나 ~아무튼 열심히 에러를 고치고 보니 WebView 가 호출되기 전 검정화면이 보이게 됐다.처음엔 스플래시화면 오류인가 싶었지만 웹뷰 호출전 에러라는걸 확인했고사용자가 보기에는 놀랄만한 요소이기 때문에해당배경을 투명하게 적용해주도록 해서 흰색배경에 로딩바가 돌아갈 수 있도록 했다..

Android/Kotlin 2024.09.25

[Android] Key 분실 시 해결 방법

PC 를 변경하면서 키도 같이 잃어버렸다 ㅎ저장해놓고 잃어버리면안되는데 참 멍청하게 바로 잃어버려서 ..업로드를 하려고 하니 당연히 에러가 발생했다.android studio Android App Bundle이 잘못된 키로 서명되었습니다. 제대로 된 서명 키로 App Bundle에 서명한 다음 다시 시도해 보세요.Build > Generate Signed App Bundle/App... > Android App Bundle > Create new...를 통해서 키를 새롭게 만들어주고keytool -export -alias -keystore -rfc -file .pem입력해주면 .pem 파일이 생성되면 준비는 끝났다.Google Play Console 로 이동 후 설정 > 앱 서명 > 업로드 키 재설정..

Android 2024.09.09

[Kotlin] Android studio JDK 버전 변경하는 방법

원래는 따로 JDK 버전을 설정한 적이 없었는데최근에 11 을 썼다가 1.8 까지 내려가야 해서 해당 버전을 수정해주는 일이 있었다.File > Settings... 로 이동Build > Gradle 로 이동나는 초기에 Build 탭이 따로 보이지 않아서 검색해서 해당 탭으로 이동했다.그 이후에는 잘보이긴 했는데 안보이면 당황하지말고 검색기능을 사용하자.나는 JAVA_HOME 이라는 환경변수로 설정한 것을 사용했는데Add JDK 나 Download JDK 를 이용해서도 사용할 수 있다.밑에 있는 11버전 ,1.8 버전 등이 해당 기능을 이용해서 추가한 거였다.보면 1.8, 1.8 (2) 뭐 이렇게 다양한 걸 볼 수 있는데당연히 해당 작업을 해줘도 변경이 안된적이 있다 ^_^ 그래서 이짓저짓 다 해봤지만 ..

Android/Kotlin 2024.04.08

[Kotlin] A problem was found with the configuration of task

A problem was found with the configuration of task ':app:checkDebugManifest' (type 'CheckManifest') [Kotlin] com.android.ide.common.signing.KeytoolException 해당 에러를 해결하면서 첨부한 링크의 에러도 발생했었는데 .. 나랑 똑같은 상황을 겪고있다면 위의 링크도 한번 확인해보면 도움이 될 수도 있을 것이다 :) 해당 에러도 하도 오래된 프로젝트의 유지보수를 진행하면서 발생했던 거였는데 com.android.tools.build.gradle 의 버전을 변경해주면서 에러를 해결하였다. // 3.5.4 -> 4.2.0 classpath 'com.android.tools.build:grad..

Android/Kotlin 2024.04.08

[Kotlin] com.android.ide.common.signing.KeytoolException

com.android.ide.common.signing.KeytoolException: Failed to read key AndroidDebugKey from store "경로": Invalid keystore format 최근에 버전이 매우 낮은(JDK 1.8 오랜만에 써보는 ... ) 프로젝트를 진행하다 보니 .. JDK 버전 낮추고 .. 이런저런 라이브러리 충돌나고 .. 이래서 버그를 열심히 잡던 도중에 .. 해당 에러때문에 스트레스를 조금 받았는데 해결방법은 매우 간단하다. 메시지에 표시된 경로로 가서 debug.keystore 를 제거하고 툴 재실행시켜보면 문제없이 실행된다.

Android/Kotlin 2024.04.08

[Kotlin] NanoHTTPD 사용방법

📱테스트 환경 Samsung Galaxy Tab Advanced2 [Kotlin] WebView Input 파일 선택 여기에 이어서 .. 이미지를 이제 Web 으로 보내줘야하는데 .. 문제가 Content API 이미지 주소는 보안상 사용할 수가 없다. 그래서 이걸 보안에 걸리지않도록 보내줘야하는데 .. Base64 로 바꿔서 보내주니까 용량이 커질수록 너무 느려져서 문제였다. 사진은 그나마 좀 괜찮았는데 영상은 아주 끔찍한 유저 경험이라 할 수 있다. 그래서 생각해낸 방법이 Android 에서 Web 처럼 주소를 띄워놓고 그걸 Web 에서 받아 blob 로 변환해서 저장하는 방식을 생각했다. 그래서 사용한게 NanoHTTPD 인데 사용방법이 생각보다 간단해서 선택하게 되었다. // build.grald..

Android/Kotlin 2024.04.03

[Kotlin] WebView Input 파일 선택

📱테스트 환경 Samsung Galaxy Tab Advanced2 Android WebView 에서 를 클릭하면 놀랍게도 파일선택기가 열리지 않는다. 파일선택기를 통해서 파일을 선택하려면 createChooser 를 이용해야 한다. 근데 웹상에 워낙 이상한 안되는 코드들이 많이 돌아다니다 보니 .. 쉽지가 않다 .. 나도 거기에 속아서 작성한 코드들이 엉망진창이여서 작동을 안하다 보니 오래걸렸다. 일단 ChromeClient 기본적인 세팅은 했다고 가정하고 파일을 선택하기 위해서는 onShowFileChooser 를 사용해야한다. override fun onShowFileChooser( webView: WebView?, filePathCallback: ValueCallback?, fileChooserPa..

Android/Kotlin 2024.04.03

[Kotlin] onBackPressed deprecated ... -> OnBackPressedCallback

📱테스트 환경 Samsung Galaxy Tab Advanced2 몇개월 전까지만 해도 .. onBackPressed 를 통해서 뒤로가기를 재정의했는데 .. 올해 다시 앱개발 하게 되어서 쓰려고 보니 왠걸 .. ? deprecated 돼었다고 한다 .. OnBackPressedCallback 해당 함수가 대체할 메서드라고 하는데 나는 되게 간단하게 이용했지만 자세하게 알고싶다면 자세한 내용은 공식 홈페이지 가면 알 수있다. https://developer.android.com/guide/navigation/navigation-custom-back?hl=ko 맞춤형 뒤로 탐색 기능 제공 | Android 개발자 | Android Developers 이 페이지는 Cloud Translation API를 통해..

Android/Kotlin 2024.03.22

[Kotlin] screenOrientation - 가로모드, 세로모드

📱테스트 환경 Samsung Galaxy Tab Advanced2 개발하는 도중 화면이 어떻게 보여야하는지 정할때가 있는데 그때 사용하는 것이 screenOrientation 이다. 이런식으로 landscape 를 적용해주면 가로모드로 고정된다. 이외에도 여러 옵션들이 있는데 unspecified : 기본값 portrait : 세로모드 reverseLandscape : 가로모드 반대방향 reversePortrait : 세로모드 반대방향 이외에도 여러 옵션이 있긴 하지만 이정도만 알고있어도 괜찮을것 같다는 생각이 있지만 필요한 옵션이 다르다면 더 찾아보면 많이 지원하니까 찾아보면 된다.

Android/Kotlin 2024.03.22

[Kotlin] Android <-> Javascript 데이터 전송하기

📱테스트 환경 Samsung Galaxy Tab Advanced2 와 진짜 .. 이것때문에 몇일동안 크롤링만 한것 같다. 구글에 있는 블로그 글이랑 스택오버플로우 안본게 없는 것 같다 ㅋㅋ 다들 된다고 하지만 나는 안돼서 진짜 너무 우울하고 슬픈 와중에 겨우 해냈는데 다른사람들도 나처럼 시행착오를 겪었을 때 도움이 되거나 내가 나중에 또 다시 볼 수 있도록 기록을 하려고 한다. START ! Javascript 에서 Kotlin 함수 호출 @JavascriptInterface fun getOS(): String? { return System.getProperty("os.name") } webView.addJavascriptInterface(WebAppBridge(context), "AppAPI") @Ja..

Android/Kotlin 2024.03.19