[英]Java Android - Defining Imports
我有以下問題:我確實有一個common.java類,該類將由Android應用程序使用,但也將由Java應用程序使用。 此類導入android特定的類(android。*)。
當然,如果我要構建Java應用程序,則確實會引發不存在的導入錯誤。 我以編程方式在if子句中完成了所有Android特定的工作:
if (System.getProperty("java.vm.name").equalsIgnoreCase("Dalvik")) {
//Android specific stuff
}
所以:有一種方法,只有在構建android應用程序時,我才能導入Android類嗎? 就像關於導入的if子句一樣?
if(System.getProperty("java.vm.name").equalsIgnoreCase("Dalvik")) {
import ...
import ...
}
希望我的問題很清楚。 謝謝!!
您必須將通用分為可移植和特定於操作系統的代碼,如下所示:
// has no android or j2se specific code
public class common {
public void someCommonfunction() {...someOsSpecificcode(); ...}
protected abstract void someOsSpecificcode();
}
// has android specific code
public class commonAndroid extends common {
protected void someOsSpecificcode() { /* android specific implementation */ }
}
// has j2se specific code
public class commonJ2se extends common {
protected void someOsSpecificcode() { /* j2se specific implementation */ }
}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.