2016-10-24 33 views
3

如果我使用jack & jill工具鏈構建我的android項目,我可以將最低SDK版本設置得相當低。當我通過啓用插孔:什麼是最小的SDK版本插孔編譯代碼可以很好地運行?

android { 

    compileOptions { 
     sourceCompatibility JavaVersion.VERSION_1_8 
     targetCompatibility JavaVersion.VERSION_1_8 
    } 

    defaultConfig { 

     jackOptions { 
      enabled true 
     } 
    } 
} 

我能最小的SDK設置爲:

minSdkVersion 9 

任何低,我得到的錯誤信息:

uses-sdk:minSdkVersion 7 cannot be smaller than version 9 declared in library [com.google.android.gms:play-services-location:7.8.0] {project_folder}/build/intermediates/exploded-aar/com.google.android.gms/play-services-location/7.8.0/AndroidManifest.xml 
Suggestion: use tools:overrideLibrary="com.google.android.gms.location" to force usage 

我不想要這麼低。我只是好奇,如果從14到23的sdks範圍有任何陷阱,可能來自使用插孔編譯器。假設目標爲25,最小值爲14.

是否有任何奇怪的行爲或問題會在舊版本的Android上彈出?

回答

3

Jack只編譯代碼。它不關心你的minSdk是什麼,這與使用android API更相關。

當你將minSdk設置爲9以下時出現錯誤的原因是因爲谷歌播放服務要求它是9或更高。如果您刪除播放服務依賴項,它應該可以工作。另見here

+0

++我不知道你提到的播放服務依賴問題。我知道我的代碼可以編譯,而傑克是這麼做的)。感謝您的回答,您是否對舊版設備上運行的編譯代碼有任何想法或意見?涉及運行期間的任何不需要的行爲。 –

+0

@DaveThomas老實說,我無法想象有任何分歧,從未經歷過,從未聽說過或讀過它,但我無法保證它 –

相關問題