2016-08-30 64 views
0

在我的應用程序中,我需要執行一個函數與targetSdkVersion = 22,但是我希望我的應用程序有targetSdkVersion = 24。我的嘗試是創建一個模塊後,我添加爲我的應用程序的依賴項,其中這些模塊有targetSdkVersion = 22。問題是,當我從我的模塊運行功能,它運行目標= 24.編輯:也許我可能已經解釋得很糟糕。我希望爲所有sdk執行相同的功能,但是如果將我的應用targetSdkVersion設置爲22,則該函數可以正確運行。存在某種方式可以做到這一點,無需創建目標= 22的secundary應用並從我的主應用調用它。應用程序與模塊,其中包含不同的targetSdkVersion,應用程序

(我需要targetSdkVersion = 22來執行這一行:Settings.System.putInt(getContentResolver(), "button_key_light", -1),只是效果很好的Android 6,如果我的應用程序的targetSdkVersion是< = 22;

謝謝

+0

您可以隨時在條件中檢查BUILD.VERSION.SDK_INT <= 22',以確保版本兼容性。 – Shaishav

回答

0

在我的應用我需要targetSdkVersion = 22執行一個功能,但是我想我的應用程序has targetSdkVersion = 24

對不起,這是不可能的。 targetSdkVersion適用於整個應用程序。您在模塊中提供的targetSdkVersion默認會被應用程序的targetSdkVersion覆蓋。您可能可以修改規則以使模塊的targetSdkVersion成爲替代使用的模塊。但是,無論哪種情況,結果值都會用於整個應用程序,包括您的庫模塊。

+0

oh :(你知道在targetSdkVersion> = 23上執行這行代碼的一些方法:Settings.System.putInt(getContentResolver(),「button_key_light」,-1)?? – FayaX

+0

@FayaX:不, t甚至不知道'button_key_light'是什麼。 – CommonsWare

+0

用於關閉容量按鈕背光。 – FayaX

0

您可以使用此條件:

如果(Build.VERSION.SDK_INT < = 22)

,或者你還可以在功能的開始時使用此anotation

@TargetApi(Build.VERSION_CODES.X)(其中X是您想要的版本的名稱)

+0

謝謝你的迴應,但我編輯了我的問題。我可能解釋得很糟糕。 – FayaX

相關問題