본문 바로가기

major/Android

구글 플레이 앱 업데이트, 버그 수정, 삽질기

구글 플레이에 개발자로 등록하고 첫 번째 앱을 출시한 지 2주 정도 지났습니다.

다다일기 - 심플한 식단 기록 바로가기

 

다다일기 - 심플한 식단 기록 - Google Play 앱

1. 간단한 기록 방법 2. 심플한 UI 3. 날짜/카테고리/장소/식단/사진 기록 4. 백업 기능 (사진 제외) 5. 첫화면에 나의 목표 설정 6. 광고 최소화

play.google.com

제가 개발한 다다일기는 간단한 식단을 기록하는 애플리케이션입니다.

출시한 지 2주나 지났지만 활성 설치는 3대뿐입니다.

첫 앱 출시에 신이 난 저는 가족과 친구들에게 마구잡이로 깔아주려고 했으나, 첫 버전에서 이미지를 가져오는데 엄청난 에러가 있다는 걸 친구가 버그 리포팅해줘서 알게 됐습니다.

결국 홍보도 못하고.. 앱 버그를 고치려고 다방면으로 수정해봤지만 알 수 없는 에러만 잔뜩 마주하고 원하는 기능 구현이 힘들었습니다.

갤러리에서 이미지 URI 가져오고 저장하고 URI로 다시 불러오는 간단한 기능 구현하는 데에 2주 동안 삽질을 하고 나서야, 앱을 출시하고 버그가 안 나도록 관리하는 게 얼마나 힘든 일인지 알게 되었습니다.

원래는 2주 동안 캘린더도 Customize 해서 더 이쁘게 보여주고, 통계 기능도 추가하고 UI도 개선하려고 했는데 모두 미뤄지고 갤러리 버그만 겨우 고쳤네요. 해결하고 나니 정말 간단한 문제여서 허무했지만, 이런 경험이 있어야 개발 실력이 는다고 생각합니다.

생각은 하지만 화나는 건 어쩔 수 없어요..

 

삽질하면서 많은 정보를 알게되었는데요,

첫번째는 구글에서 플레이스토어에 출시&업데이트하는 앱들의 targetSdkVersion을 관리한다는 것입니다.

 

구글 Developers - Google Play의 대상 API 레벨 요구사항 충족하기 

 

Google Play의 대상 API 레벨 요구사항 충족하기  |  Android Developers

APK를 업로드하는 경우 Google Play의 대상 API 레벨 요구사항을 충족해야 합니다. 신규 앱은 Android 9.0(API 레벨 28) 이상을 타겟팅해야 합니다. 2019년 11월 1일부터 앱 업데이트는 Android 9.0 이상을 타겟팅해야 합니다. 이 날짜까지 앱 업데이트는 Android 8.0(API 레벨 26) 이상을 타겟팅해야 합니다. 새로운 Android 버전이 출시될 때마다 보안 및 성능이 크게 개선되며 전반적으로 Android 사

developer.android.com

구글에서는 지속적으로 targetSdkVersion을 올려서 사용자가 더 최신의 앱을 사용할 수 있도록 해온 점을 처음알았습니다.

2018년에는 8월에는 Android 8.0이상 (API LEVEL 26), 그리고 2019년 11월에는 Android 9.0이상 (API LEVEL 28)으로 올렸습니다.

2019년부터는 매해 targetSdkVersion을 올린다고 합니다.

제가 올해 targetSdkVersion을 28로 개발했는데, 올해안에 29로 변경하고 그에 따른 버그를 수정해야 한다는걸 알게되었습니다.

What the heck

제가 개발하면서 생긴 버그만 수정하면 되는줄 알았지, targetSdkVersion의 변화에 따라서 앱을 수정해야하는줄은 몰랐습니다.

Android 10.0부터는 처음보는 Scoped Storage라는 개념이 있어서, targetSdkVersion을 28로 하고 개발했는데, 저부분을 저도 공부해야했네요^^ㅜㅜ

 

또 개발자 사이트를 돌아다니니 현재 최신버전(API LEVEL 29)를 타겟팅 하지 않으면 Featured에서 제외한다(?)는 말도 있더라구요.

소개될만한 앱은 아니지만, 그만큼 최신버전으로 업데이트하는게 중요하다는 것을 알게되었습니다.

 

그리고 궁금해서 찾아보니 애플의 앱스토어도 제출하는 앱의 SDK 버전에 대한 정책이 있었습니다.

구글 Developers - App Store에 앱 제출하기

 

App Store에 앱 제출하기 - Apple Developer

App Store에 앱 제출하기 지금 전 세계 수많은 고객이 iOS 13 및 iPadOS의 놀라운 새 기능을 경험하고 있습니다. 다크 모드와 ARKit 3, Core ML 3 및 Siri의 최신 기능을 활용하여 더 매력적이고 뛰어난 속도와 반응성을 경험할 수 있는 앱을 만들 수 있습니다. 지금 바로 앱과 제품 페이지를 업데이트하고 제출해 보십시오.

developer.apple.com

모바일 앱 개발 파트에 취직한 선배가 왜 힘들어하는지 알게되었습니다.

사용자로써는 너무 좋은 정책이지만 개발자로써는 조금 부담되는건 사실입니다.

그래도 노력해야죠..별수있나요

 

그리고 minSdkVersion은 19, KITKAT으로 설정했는데, 약 95%의 사용자가 앱을 사용할 수 있습니다.

KITKAT이하, 즉 Icecream Sandwich 이하의 버전을 사용하는 유저가 5%나 된다는 것을 알 수 있었습니다.

하지만 저는 1인 개발이고 인력이 부족해서 KITKAT으로 정했습니다.

아래는 구글에서 제공하는 유저 OS Version의 통계입니다.

 

구글 Developers - 배포 대시보드

 

배포 대시보드  |  Android 개발자  |  Android Developers

Android 생태계에서 활성 상태인 기기 특성의 개요입니다.

developer.android.com

킷캣을 사용하는 유저는 약 6.9%정도입니다. 많지는 않지만 무시할 수 없기 때문에 minSdkVersion으로 선택했습니다.

 

최근 코로나 바이러스로 구글도 타격이 없진 않았는지 앱이 게시되는데 7일 이상이 소요될 수 있다는 알림이 있었습니다.

그래서 어제 새벽에 앱 버전을 업데이트해놓고 최소 2~3일은 걸릴 거라고 생각했는데, 12시간이 지나지 않아서 업데이트가 되었습니다.

기존에 출시된 데다 간단한 앱이어서 빨리 처리된 것 같습니다.

 

큰 에러를 해결했으니 친구들에게 홍보를 잔뜩 해서 유저를 확보하려고 합니다.

앱 출시하고 슬픈 건 플레이스토어에 앱의 풀네임을 쳐도 안 보여줍니다ㅠㅠ 이름에 "일기"가 들어가서인지.. 저런 포화 키워드는 넣으면 검색이 어려운 건지 아니면 사용자가 없어서 그런 건지, 플레이스토어의 검색 알고리즘이 어떤지 알 길이 없어서 막막합니다.

일단은 유저수를 많이 확보해보고 경과를 지켜보려고 합니다.

 

앱을 직접 출시해보고 관리하니 이전에 그냥 만들 때는 몰랐던 다양한 문제에 마주하고 있습니다. 현업에 계신 분들이 왜 직접 출시해보는걸 추천하는지 느끼고있습니다. 앱에 광고도 단 만큼, 열심히 고쳐서 유저도 확보하고 수익도 조금 났으면 합니다.

블로그에 글을 정리하기 위해서 더 정확하게 공부하고 시도해보면서 알게되는 것들이 많아서 앞으로도 앱을 개발하면서 수정한 에러, 추가한 기능이나 알게된 것들을 정리하려고합니다. 코로나로 집콕상태이지만 할일이 많아서 행복(?)합니다.


잘못된 내용이 있다면 언제든지 댓글이나 메일로 알려주시면 감사하겠습니다.

이 포스팅이 도움이 되었다면 공감 부탁드립니다.

궁금한 점은 언제든지 댓글 남겨주시면 답변해드리겠습니다:D