A**** app Fixed (Android)

안녕하세요. 이원종입니다.
A**** 앱 안드로이드 수정사항 전달드립니다.

  1. Eclipse > Android Studio 마이그레이션

    Maven 환경에서 Gradle 환경으로 변경하였습니다.

  2. 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로 변경하였습니다.

  3. GCM > FCM Migration

    기존 GCM으로 구현되어있던 푸시 기능을 FCM으로 마이그레이션 하였습니다.

  4. proguard 난독화 적용

    기존 소스코드는 난독화가 적용되어있지 않아 apk파일 디컴파일시 소스코드를 모두 볼 수 있었습니다.
    이에 보안을 위해 proguard 난독화를 적용하였습니다.

  5. 기존 ip주소로 되어있던 API주소를 도메인주소로 변경

    기존의 ip주소로 되어있던 api 주소를 전달받은 도메인주소로 변경하였습니다.

  6. 통신모듈 교체

    AsyncTask를 사용하여 통신하던 소스코드를 OkHttp + Retrofit을 사용하여 별개의 통신모듈을 만들었습니다.
    기존 코드는 Activitiy에서 통신할 때 마다 AsyncTask를 사용하여 코드분리가 영;;;;

  7. ANR 및 비정상종료 발생지점 방어코드 삽입

    NullPointerException으로 인해 비정상종료가 발생하는 지점에 방어코드를 삽입하였습니다.
    (기존 비정상종료 확률 : 1.2%)

  8. 권한 요청 페이지 추가

    이전 앱 버전에서 targetSdkVersion이 23미만(마쉬멜로)이어서 사용자에게 권한을 요청하는 페이지가 별도로 있지 않고, 강제로 권한이 동의되었는데, 사용자가 권한을 설정할 수 있도록 필수 및 선택권한을 추가하였습니다.

문서 ) Google Drive 공유 주소는 개인 메일이나 카카오톡으로 전달드리겠습니다.
형상관리 ) 비공개를 위해 BitBucket 관리 중

감사합니다 ^-^