![](/img/trans.png)
[英]Can't build apk on Android Studio without minSdkVersion 28
[英]Can't use new methods in the Android project due to minSdkVersion
我想支持API級別14+設備,因此我的android項目的minSdkVersion現在為“ 14”。
但是,即使我將這些代碼放入if
語句中,也無法調用較新的方法。
if (Build.VERSION.SDK_INT >= 18) {
// new method calls
Log.i("MY_APP", "Total: " + new StatFs("/sdcard").getTotalBytes());
} else {
// deprecated method calls
}
AndroidManifest.xml中的<uses-sdk/>
標簽是這個。
<uses-sdk
android:minSdkVersion="14"
android:targetSdkVersion="21" />
錯誤消息是這樣的。
調用需要API級別18(當前最小值為14):android.os.StatFs#getTotalBytes
為了編譯該項目,我必須更改minSdkVersion屬性
但這根本沒有幫助,因為我失去了對舊設備的支持。
我也嘗試過調整targetSdkVersion ,但這是行不通的。
如何在不更改minSdkVersion的情況下編譯項目?
我是否只需要使用不贊成使用的方法?
是否有可能很快刪除不贊成使用的方法?
PS。 我正在使用eclipse,但現在不使用Android Studio。
修改gradle文件,使其看起來像這樣:
android {
compileSdkVersion 23 // for example
// other stuff...
defaultConfig {
minSdkVersion 14
targetSdkVersion 23
//...
}
//...
}
將targetSdkVersion設置為已測試應用程序的最高API。 保持targetSdkVersion和compileSdkVersion相同。
編輯:
好的,所以您說您正在使用Eclipse(請將其更改為Android Studio!:)),以便可以在AndroidManifest.xml中使用它們:
<uses-sdk
android:minSdkVersion="14"
android:targetSdkVersion="23" />
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.