728x90

Coding/Android 8

[Android] 안드로이드 WebView 에러 ERR_CLEARTEXT_NOT_PERMITTED

안드로이드 웹뷰를 띄우는 게 이렇게 어려운 것이었습니다. 인터넷을 접속할 수 있도록 허용을 했는데도 에러가 났습니다. 에러 인터넷 접속 권한을 허용하고 다시 웹뷰를 띄우니 이번엔 아래와 같이 ERR_CLEARTEXT_NOT_PERMITTED 에러를 뱉었습니다. 해결 해결방법은 간단합니다. AndroidManifest.xml 파일에 아래의 권한 요청을 해야 합니다. URL 입력을 https://www.naver.com으로 했는데 어째서인지 http://m.naver.com으로 바뀌어서 호출되는 바람에 http URL에 대해 접근이 가능하도록 옵션을 넣어주면 됩니다. 이 옵션은 내에 넣어주시면 됩니다. 하나씩 다시 기억해내고 있습니다.

Coding/Android 2022.09.22

[Android] 안드로이드 WebView 에러 ERR_CACHE_MISS

플러터로 개발하다 오랜만에 퓨어 네이티브로 해볼 것이 생겨서 웹뷰를 띄우려고 해 보니 바로 에러가 났습니다. 에러 웹뷰를 띄우자마자 아래와 같이 net::ERR_CACHE_MISS 에러를 뱉었습니다. 해결 해결방법은 간단합니다. AndroidManifest.xml 파일에 아래의 권한 요청을 해야 합니다. 앱에서 인터넷을 접속할 수 있도록 허용해주는 권한입니다. 한 언어를 배우면 다른 언어를 까먹네요..

Coding/Android 2022.09.22

[Android] INSTALL_PARSE_FAILED_MANIFEST_MALFORMED 에러

오픈 소스를 받아서 빌드하려니 에러가 났습니다. INSTALL_PARSE_FAILED_MANIFEST_MALFORMED 사실 플러터 오픈 소스를 받아서 빌드한 건데, 에러를 보니 안드로이드 에러인 듯싶어 찾아보았습니다. INSTALL_PARSE_FAILED_MANIFEST_MALFORMED 에러 잘 보시면 Targeting S+ (version 31 and above)는 android:exported 값이 필요하다고 합니다. 1. AndroidManifest.xml 파일을 찾아갑니다. 2. Tag 안에 android:exported 값이 있는지 확인합니다. 전 없었네요.. 3. Tag 안에 아래 구문을 추가합니다. android:exported="true" 4. 다시 빌드하니 성공!

Coding/Android 2022.08.03

[Android] 앱 분할 화면, 팝업 화면 비활성화(막기) 방법

앱을 분할 화면이나 팝업 화면으로 다시 띄우는 것을 막고 싶었습니다. 앱의 리사이징 이슈가 있어서 단순히 막아버리는 방법으로 해결하려고 했습니다. 앱 분할 화면, 팝업 화면 비활성화 방법 main 폴더 아래의 AndroidManifest.xml 파일 내에 아래 내용을 추가하면 분할 화면으로 열기, 팝업 화면으로 보기 버튼이 사라집니다. 분할 화면 또는 팝업 화면이 꼭 필요한 앱이 아니라면 비활성화 방법으로 복잡한 이슈를 해결하는 것도 나쁘지 않아 보입니다.

Coding/Android 2022.07.19

[Android Studio] AMD CPU Android Emulator 설치 오류 (4294967201 오류)

안드로이드 스튜디오에서 에뮬레이터를 설치하려고 하니 오류가 발생했습니다. 에러를 읽어보니 AMD CPU를 위한 하이퍼바이저 드라이브 설치를 실패했다고 합니다. 하이퍼바이저가 뭔가 하니 가상 머신을 돌려주는 프로그램이라고 합니다. 해결 방법을 찾아보니 두 가지 방법이 있었습니다. 1. 윈도우 상에서 Hyper-V 기능 끄기 제어판 -> 프로그램 -> Windows 기능 켜기/끄기 -> Hyper-V 체크 해제 저는 Hyper-V 기능이 꺼져있어서 1번에 해당하지 않았습니다. 2. BIOS에 진입하여 AMD CPU 가상화 설정 BIOS에서 SVM Mode를 Enabled로 변경 작업 관리자를 보시면 가상화를 '사용 안 함'으로 설정되어 있습니다. 이 설정을 '사용'으로 변경해 주어야 합니다. MSI 메인보드..

Coding/Android 2022.04.30

[Android] android.view.WindowLeaked 에러

앱 업데이트 출시를 위해 테스트 중 android.view.WindowLeaked 에러가 발생했습니다. 발생 경로는 팝업이 떠있는 상태에서 시스템 언어를 변경할 때 발생했습니다. 발생 원인 시스템 언어를 변경하면 팝업이 떠있는 액티비티가 재시작하는데 초기화되지 않은 팝업을 다시 띄우려고 시도하기 때문이었습니다. 해결 방법 해결 방법은 간단히 했습니다. 팝업을 보존할 수도 있겠지만, 앱이 액티비티 재시작의 경우 모든 팝업은 사라지는 콘셉트이었으므로 onDestroy에서 팝업을 dismiss 시켜주었습니다. 1. 팝업을 null로 미리 선언해주었을 때 override fun onDestroy() { popup?.dismiss() super.onDestroy() } 2. 팝업을 lateinit 해주었을 때 o..

Coding/Android 2020.11.04

앱 버전 관리 규칙 (Semantic Versioning)

앱을 개발하고 출시하게 되면 앱 버전이 필요합니다. 저마다의 특색을 살려 버전명을 지을 수도 있지만 많이 사용되고 있는 규칙이 있습니다. 이 규칙을 소개해드리기 전에, 구글 플레이스토어에서 10위까지의 앱 버전을 조사해봤습니다. (2020년 10월 26일 기준) 중간중간 다른 방식의 버전명이 보이지만 대부분 X.X.X 방식을 따르고 있습니다. 이러한 규칙을 Semantic Versioning이라고 합니다. Semantic Versioning Semantic Versioning은 소개해놓은 페이지가 따로 있습니다. 많은 언어로 번역되어 있습니다. semver.org/lang/ko/ 유의적 버전 2.0.0 Semantic Versioning spec and website semver.org Semantic ..

Coding/Android 2020.10.26

[Android Studio] 코드 정렬 단축키

안드로이드 스튜디오로 코딩을 하다 보면 코드를 정리하고 싶을 때가 있습니다. 더군다나 코드가 길어지게 되면 하나하나 확인할 수 없기 때문에 코드를 한 번에 정리할 수 있는 방법이 필요합니다. 안드로이드 스튜디오는 코드를 정렬해주는 기능이 있습니다. 단축키를 알아보기 이전에 메뉴에서 찾아볼 수 있는 코드 정렬 기능은 아래 그림처럼 Code -> Reformat Code 를 누르시면 코드 정렬이 됩니다. 다들 보셨겠지만 안드로이드 스튜디오에서 코드 정렬 단축키는 Ctrl+Alt+L 입니다. 문서를 작성할 때, 저장 단축키를 수시로 눌러주는 습관을 가져야 하듯이 안드로이드 스튜디오로 코딩할 때에도 코드 정렬 단축키를 수시로 눌러주는 습관을 길러서 코드를 정리하신다면, 유지 보수도 쉽게 진행하실 수 있을 겁니다.

Coding/Android 2020.10.12
728x90