IT_Programming/Dev Tools

안드로이드 스튜디오 팁 모음

JJun ™ 2016. 8. 11. 11:03



 출처: https://realm.io/kr/news/android-weekly-kr-187/



    Language Injection

    • IntelliJ가 제공하는 Language Injection 기능을 통해 JSON 스트링 입력을 쉽게 할 수 있습니다.

    • ⌥+Return이나 ⌘+⇧+A를 누르고 Inject Language/Reference를 찾아보세요.

    REGEXP 테스트
    • 정규식 표현 테스트를 할 수 있습니다. 



    스마트 완성
    • ⌥+Space를 누르면 visibility scope 내의 클래스 이름, 메서드, 멤버 변수, 키워드 등을 검색할 수 있는 건 알고 계시겠죠? 다만 해당 글자로 시작하는 대상을 대소문자 구분해서 검색되므로 불편할 수 있습니다.

    • ⌥+⇧+Space를 누르면 current context에 적합한 요소 중 해당 문자를 포함하는 요소를 검색할 수 있습니다.

  • INTELLIJ 15 자체 REST 클라이언트
    • Postman이나 Paw 등의 추가 프로그램 도움 없이도 API 호출을 테스트해볼 수 있습니다.



SDK 버전 설정

안드로이드는 상위 호환성을 중시하기 때문에 compileSdkVersion, minSdkVersion, targetSdkVersion 개념이
있습니다.

  • compileSdkVersion
    • compileSdkVersion으로 Gradle에 어떤 안드로이드 SDK 버전으로 앱을 컴파일할지 알려줍니다.
      즉, 지원할 수 있는 가장 높은 API 버전을 의미합니다.
    • 컴파일 시에만 적용되므로 runtime 동안에는 영향을 미치지 않습니다.
    • 항상 최신 버전의 SDK로 지정하는 것이 좋습니다.

  • minSdkVersion
    • minSdkVersion은 앱이 지원할 가장 낮은 API 버전을 지정합니다.
    • Google Play에서 사용자의 기기에 앱이 설치될 수 있을지 결정하는 요소입니다.
    • minSdkVersion 보다 높은 API를 사용하면 lint에서 경고를 띄워 알려주므로 미리 방지할 수 있습니다.
    • Support Library나 Google Play Service는 자체 minSdkVersion을 가지므로
      이 중 가장 높은 버전 이상으로 맞춰야 합니다.

  • targetSdkVersion
    • targetSdkVersion이 바뀌어야 앱의 행동 로직이 바뀌므로, 안드로이드가 상위 호환성을 제공할 수 있습니다.
    • 예를 들어 Android 6.0에서 도입된 선택적 권한 부여(runtime permissions model, 자세한 설명은 여기를 참조하세요)행동 로직은 API 23을 targetSdkVersion으로 지정해야 적용됩니다.


  • Gradle로 SDK 버전 설정하기

    • compileSdkVersion, minSdkVersion, targetSdkVersion을 잘 설정해야 합니다.
      모듈의 build.gradle 파일에서 다음과 같이 설정할 수 있습니다.
android {
  compileSdkVersion 23
  buildToolsVersion "23.0.1"
  defaultConfig {
    applicationId "com.example.checkyourtargetsdk"
    minSdkVersion 7
    targetSdkVersion 23
    versionCode 1
    versionName "1.0"
  }
}
  • compileSdkVersion과 달리 minSdkVersion과 targetSdkVersion은 AndroidManifest.xml에 다음처럼 생성됩니다. 해당 파일의 내용을 고쳐도 무시되며 Gradle에서 설정한 대로 적용됩니다.
<uses-sdk android:targetSdkVersion=”23" android:minSdkVersion=”7" />
  • 세 종류의 SDK 버전 관계는 다음과 같습니다.
minSdkVersion <= targetSdkVersion <= compileSdkVersion
  • 안정적인 앱을 원한다면 다음처럼 설정하세요.
minSdkVersion (최소 레벨의 SDK) <= 
    targetSdkVersion == compileSdkVersion (최대 레벨의 SDK)


원문 보기

더 많은 기사를 Android Weekly 187 원문에서 확인하세요.