목록전체 글 (32)
easy-1
앱 개발시 debug 모드로 컴파일 했을때와 release 모드의 apk 파일을 비교해봤을때 다르게 작동되는 경우가 발생하기도 한다. 이를 확인하기 위해 일일이 apk 파일을 추출하는 번거로움을 덜기위하여 release 모드로 컴파일을 바로 할 수 있다. 1. build.gradle 파일에 android { 안에 해당 코드 작성 // release 컴파일 signingConfigs { release { storeFile file('---.jks') // App 폴더 기준 storePassword "storePassword" keyAlias "keyAlias" keyPassword "keyPassword" } } 2. buildTypes { 안에 적용하는 코드 작성 release { // release 컴..
- 소스 코드 난독화 - 불필요한 리소스 축소 1. 디버그와 릴리즈 구분하기 위해 proguard-debug.pro 파일 생성 디버그 모드에서는 난독화 진행하지 않음 ( 이유 : 디버그 모드도 난독화를 하게되면 클래스명, 라인 등 이 제거되어 디버그가 어려워짐 ) # Begin: Debug ProGuard rules -dontobfuscate -keepattributes SoureFile,LineNumberTable # End: Debug ProGuard rules 2. 디버그와 릴리즈 구분하여 프로가드 설정 buildTypes { debug { minifyEnabled true proguardFiles getDefaultProguardFile('proguard-android.txt') // 프로가드 설..
개발을 하다보면 로그를 찍어 디버깅이나 정보를 확인하는 일이 많다. 하지만 이 로그를 그대로 남겨두면 배포된 앱을 사용자들이 로그를 확인이 가능하다. 이를 방지하기 위하여 디버그 모드에서는 로그를 확인할 수 있고, 릴리즈 모드에서는 로그를 확인할 수 없게 만들어준다. 1. Debug 모드 확인 함수 생성 public class Dlog { static final String TAG = "APP_NAME"; /** * Log Level Error **/ public static final void e(String message) { if (BuildConfig.DEBUG) Log.e(TAG, buildLogMsg(message)); } /** * Log Level Warning **/ public stat..
정리된 디자인 패턴으로 개발 시 1. 소프트웨어의 구조 파악이 용이하고, 변경도 손쉬워 진다 2. 재사용으로 개발 시간의 단축 및 편리함 3. 개발자간의 소통 원할 1. MVC 패턴 (Model View Controller) 2. MVP 패턴 (Model View Present) 3. MVVM 패턴 (Model View ViewModel) [MVC - Model View Controller] - 사용자 인터페이스와 비지니스 로직을 분리 - Model : 데이터 + 상태 + 비지니스 로직 두뇌 역할 뷰나 컨트롤러에 묶이지 않아 재사용 가능 - View : 모델의 표현 - Controller : 애플리케이션에서 발생하는 일을 담당하는 마스터 컨트롤러 뷰가 컨트롤러에게 버튼을 눌렀다고 알리면 컨트롤러는 어..