Android 10

MIME 유형(IANA 미디어 유형)

WebView에 대해 공부 하는 과정 중에 URL을 처리 할 때 MIME의 유형을 사용한다고 한다. 여기서 MIME 유형이 무엇인지 궁금해서 잘 설명해주는 사이트를 찾았다. MIME 유형에 대해 자세히 설정을 해주고 있으니 이 사이트를 참고하면 좋을 것 같아 공유한다. https://developer.mozilla.org/en-US/docs/Web/HTTP/Basics_of_HTTP/MIME_types MIME types (IANA media types) - HTTP | MDN A media type (also known as a Multipurpose Internet Mail Extensions or MIME type) indicates the nature and format of a document..

Android 2023.04.27

[Android] WebView 영역에 html 문자열을 로드 시키기

업무를 하다가 서버에서 받은 데이터를 WebView 영역에 로드할 일이 생겼다. 처음에는 단순하게 WebView.loadData( 로드할 데이터, "text/html; charset=utf-8", "UTF-8" )를 사용하였다. 하지만 오류 발생...!!! 서버에서 내려오는 HTML의 css가 적용되지 않는 것이다. 구선생을 검색하는 와중에 다른 방법의 Api를 사용하여 html 문저열을 로드 시키는 것을 찾을 수 있었다. 바로바로 두구두구....!!! loadDataWithBaseURL() 이 Api는 총 5개의 매개변수를 받을 수 있다. public void loadDataWithBaseURL (String baseUrl, String data, String mimeType, String encodi..

Android 2023.04.21

[Kotlin] foreach 반복문

forEach ( ) 함수는 단순히 컬렉션 타입의 데이터 개수만큼 특정 구문을 반복 실행할때 유용하게 사용된다. for문과 다르게 foreach문 사용 할 때에는 continue문과 break문을 사용할 수 없다. 개발을 하다가 foreach문을 빠져나가야하는 경우가 있어서 return을 사용하였지만 빠져나가지 않고 계속 반복이 진행되었다. val array = arrayListof(1,2,3,4) array.forEach{ printLn(it) if(it == 2){ return@forEach } } 위와 같은 방식으로 하게 되면 반복문을 빠져 나가는게 아니라 continue문과 동일한 기능을 하게 된다. 내가 원하는 1,2 를 출력하고 반복이 끝나지 않고 1,2,3,4 출력을 하게 된다는 것이다. 내..

Android 2022.12.07

WebView 디버깅

회사에서 SDK 추가 적용을 하다가 WebView가 실행되지 않는 오류가 생겼다. 그래서 처음으로 WebView 디버깅을 하는 경험을 하게되었는데 그 과정을 포스팅하려고 한다. 1. 단말기의 개발자 옵션에 USB 디버깅을 활성화 한다. 2. WebView가 보여지는 또는 디버깅을 걸고 싶은 곳, 해당 Activity에 WebView 디버깅 허용을 설정. WebView.setWebContentDebuggingEnabled(true) 이 코드는 onCreate()에 한 번 설정해 준다. override fun onCreate(savedInstanceState: Bundle?) { super.onCreate(savedInstanceState) WebView.setWebContentsDebuggingEnable..

Android 2022.09.19

[안드로이드 - 코틀린] 카카오 로그인 오류

아래의 화면처럼 로그인을 하였는데 기타에러가 뜨는 오류가 생겼다. 원인은 간단했다 카카오 Developers 에 등록 한 Android Key Hash 와 안드로이드 프로젝트에서의 Android Key Hash가 불일치 되었을 때 위 화면과 같은 오류가 발생하였다. 카카오 로그인 구현을 할 때 해시키 뿐만 아니라 네이티브 키도 정확히 보고 사용하는 것을 지향한다.

Android 2022.01.27

[안드로이드 - 코틀린] 카카오 로그인 구현(2)

이어서 계속 구현해보자. manifest 하단에 아래의 코드를 붙여놓자. 아래의 코드중 네이티브 앱 키를 넣는 부분에서 kakko네이티브 앱 키 이런 형식으로 넣어주자. 이제는 로그인 버튼을 생성해 보자. SDK V1에서는 com.kakao.usermgmt.LoginButton으로 버튼을 바로 생성할 수 있었는데, SDK V2에서는 그 기능이 사라지고 직접 버튼을 만들거나 리소스를 다운받아서 해야한다. 리소스는 아래 링크에서 다운받을 수 있다. https://developers.kakao.com/tool/resource/login Kakao Developers 카카오 API를 활용하여 다양한 어플리케이션을 개발해보세요. 카카오 로그인, 메시지 보내기, 친구 API, 인공지능 API 등을 제공합니다. de..

Android 2022.01.27

[안드로이드 - 코틀린] 카카오 로그인 구현(1)

※이 구현은 카카오 SDK v2 버전을 사용하고 있다. 프로젝트에 FCM(Firebase 클라우드 메시징)을 사용하려면 프로젝트 이름에 example이라는 글자는 들어가면 안된다. 프로젝트명은 com.이름.app 형태를 갖추고 있을 것이다. 확인해보고 변경하도록 하자. 시작하기 앞서 카카오 developers에 자신의 앱을 등록해야한다. (아래 링크 접속) https://developers.kakao.com/ Kakao Developers 카카오 API를 활용하여 다양한 어플리케이션을 개발해보세요. 카카오 로그인, 메시지 보내기, 친구 API, 인공지능 API 등을 제공합니다. developers.kakao.com 사이트에 들어가서 내 애플리케이션 을 클릭한다. 애플리케이션 추가하기를 클릭하여 새롭게 추..

Android 2022.01.27

에뮬레이터에 앱이 생성되었지만 설치가 되지 않았다는 오류

아래의 사진처럼 앱은 잘 생성이 되었다. 하지만 앱을 실행시켜보니 app isn't installed라는 Toast메세지가 나왔다. 이유를 찾을 수 없었다. 그래서 그냥 무지성으로 저번 오류 때 Manifest파일에 android:exported="false"를 android:exported="true" 으로 변경하였더니 앱이 실행이 되었다.(어떻게 해결했는지 지금도 의문...ㅎㅎ) 그리고 다른 오류....이 오류는 AVD Manager를 눌러 사용하는 에뮬레이터의 data를 wipe했더니 잘 해결이 되었다.

Android 2022.01.12

오류 해결- The minCompileSdk (31) specified in adependency's AAR metadata (META-INF/com/android/build/gradle/aar-metadata.properties)

저번 Gradle 오류에 이어 이번엔 다른 오류를 해결해보겠다.(제발 오류없이 개발좀 하자....) 오류는 아래와 같다. ne or more issues found when checking AAR metadata values: The minCompileSdk (31) specified in a dependency's AAR metadata (META-INF/com/android/build/gradle/aar-metadata.properties) is greater than this module's compileSdkVersion (android-27). Dependency: androidx.appcompat:appcompat:1.4.0. AAR metadata file: C:\Users\shin\.gra..

Android 2022.01.12

Gradle 빌드 실패 에러(Could not find com.android.tools.build:gradle:4.2.0.)

이번에 toyproject를 하면서 안드로이드 소스를 Github 파일에 프로젝트를 생성했는데, Gradle 빌드 에러가 발생하였다. 언어는 코틀린 오류 메세지는 아래와 같다. Could not find com.android.tools.build:gradle:4.2.0. Searched in the following locations: - https://dl.google.com/dl/android/maven2/com/android/tools/build/gradle/6.7.1/gradle-6.7.1.pom - https://jcenter.bintray.com/com/android/tools/build/gradle/6.7.1/gradle-6.7.1.pom Required by: project : Add go..

Android 2022.01.12
728x90