2016-08-27 12 views
1

사전 Lollipop 기기를 지원하는 Android 앱이 있습니다.하지만 Marshmallow와 Jellybean의 최신 버전을 모두 지원하도록 Android 앱을 포팅하고 싶습니다. 구체적인 지침이 있습니까? 위의 기준을 지원할 수 있습니까? 매니페스트/build.gradle에서Android 앱 주요 Android 버전 지원

+0

처럼 Gradle을 파일에서 지원 버전을 변경할 수 있습니까? 마시 멜로에서 앱을 테스트 했습니까? 이미 작동 중일 수도 있습니다 –

답변

2

:

<uses-sdk 
    android:minSdkVersion="14" 
    android:targetSdkVersion="23" /> 

Gradle을 (사용 내용에 따라) :

defaultConfig { 
    ........ 
    minSdkVersion 14 
    targetSdkVersion 23 


} 

가능한 한 낮게에 minSDK를 설정합니다. 너무 낮 으면 오류가 표시됩니다. 높은 API 수준 (예 : xml 작성시 API 17이 필요한 android:layout_marginStart 만 작성)이 필요한 코드를 사용하는 경우 min API 레벨을 높이라는 오류 메시지가 표시됩니다. 자, 증가를 피할 수있는 몇 가지 방법이 있습니다.

  • 가능하다면, 또한 낮은 API 수준을 지원하는 코드를 추가합니다 (예 : android:layout_marginRight 어떤 대안을 모두 지원 할 수없는 경우
  • 는. 낮은 API 수준에서 코드를 목표로
  • 는 OS 분포를 기억하고 플랫폼을 대상으로
  • 새 장치에서 이전 코드를 실행할 수 있지만 이전 장치의 새 코드는 불가능하거나 AppCompat (예 : 재료 설계)가 필요합니다.
  • 이전 코드를 실행하십시오. 기존 플랫폼과 새로운 플랫폼을 대상으로 사용 중지 된 코드는 피하십시오! 가능한 경우 AppCompat을 사용하여 이전 장치에서 새 코드를 사용하십시오.

은 요약하면 :

XML, 이전 및 새 지원 코드를 사용 (사용 가능한 경우) 코딩. 정상적인 코딩을 할 때는 이전 버전을 지원하는 코드를 사용하고 더 이상 사용되지 않는 코드를 사용하십시오. 가능한 경우 AppCompat을 사용하여 이전 코드에서 새로운 코드와 새로운 것을 얻으십시오. 당신이 뭘 하려는지 -

+0

"minSDK를 가능한 한 낮게 설정하십시오. 너무 낮 으면 오류가 표시됩니다."- 항상 그런 것은 아니며 가끔은 경고 일 뿐이므로 런타임에 충돌을받을 수 있습니다. –

+0

다를 수 있습니다. . 하지만 내 경험에, 너무 낮은 분 SDK를 버전을 사용하여 gradle 빌드를 실행하면 더 높은 코드가 빌드 durring 오류가 발생할 것입니다 – Zoe

+0

그런 경우에 gradle에 의존 수 없다, 그것은 바보 야 충분 –

1

당신은 "마시 멜로까지 모두 최신 버전을 지원하기 위해 내가 포트에 원하는 안드로이드 응용 프로그램을"이

defaultConfig { 

    minSdkVersion 14 
    targetSdkVersion 23 
    versionCode 1 
    versionName "1" 
    multiDexEnabled true 
}