안녕하세요. 이원종입니다.
A**** 앱 안드로이드 수정사항 전달드립니다.
- Eclipse > Android Studio 마이그레이션
Maven 환경에서 Gradle 환경으로 변경하였습니다.
- targetSdkVersion 26 이상으로 버전업 + minSdkVersion 8 -> 15로 변경
targetSdkVersion을 올림으로써 Oreo Notification Channel 대응 https://developer.android.com/about/versions/oreo/android-8.0?hl=ko
(아래 참고)compileSdkVersion 26 minSdkVersion 15 targetSdkVersion 26
현재 안드로이드 사용자의 최소 OS 버전이 4.1인것을 확인하여 minSdkVersion을 15로 변경하였습니다.
- GCM > FCM Migration
기존 GCM으로 구현되어있던 푸시 기능을 FCM으로 마이그레이션 하였습니다.
- proguard 난독화 적용
기존 소스코드는 난독화가 적용되어있지 않아 apk파일 디컴파일시 소스코드를 모두 볼 수 있었습니다.
이에 보안을 위해 proguard 난독화를 적용하였습니다. - 기존 ip주소로 되어있던 API주소를 도메인주소로 변경
기존의 ip주소로 되어있던 api 주소를 전달받은 도메인주소로 변경하였습니다.
- 통신모듈 교체
AsyncTask를 사용하여 통신하던 소스코드를 OkHttp + Retrofit을 사용하여 별개의 통신모듈을 만들었습니다.
기존 코드는 Activitiy에서 통신할 때 마다 AsyncTask를 사용하여 코드분리가 영;;;; - ANR 및 비정상종료 발생지점 방어코드 삽입
NullPointerException으로 인해 비정상종료가 발생하는 지점에 방어코드를 삽입하였습니다.
(기존 비정상종료 확률 : 1.2%) - 권한 요청 페이지 추가
이전 앱 버전에서 targetSdkVersion이 23미만(마쉬멜로)이어서 사용자에게 권한을 요청하는 페이지가 별도로 있지 않고, 강제로 권한이 동의되었는데, 사용자가 권한을 설정할 수 있도록 필수 및 선택권한을 추가하였습니다.
문서 ) Google Drive 공유 주소는 개인 메일이나 카카오톡으로 전달드리겠습니다.
형상관리 ) 비공개를 위해 BitBucket 관리 중
감사합니다 ^-^