Вы не можете условно импортировать подобные классы.
Вместо этого вы должны инкапсулировать код, который выполняется как на рабочем столе, так и в Java, в свой собственный класс (или несколько классов), который вы можете использовать в качестве библиотеки. ,Затем создайте настольное приложение и приложение для Android, которые содержат код, относящийся только к одной версии. В обоих проектах для конкретной платформы общий код будет использоваться в качестве библиотеки.
Если вам нужно вызывать код, специфичный для платформы, из общего кода, то делайте это через интерфейс, чтобы вам не приходилось заботиться о платформе. код в вашем общем коде. Примерно так:
public interface Printer {
public void print(String s);
}
Затем реализуйте специфичный для платформы код в реализациях этого интерфейса:
public class DesktopPrinter implements Printer {
public void print(String s) {
System.out.println(s);
}
}
public class AndroidPrinter implements Printer {
public void print(String s) {
Log.d("MyApp", s);
}
}
Затем в коде обработки вы будете использовать только интерфейс:
Printer printer;
void setPrinter(Printer printer) {
this.printer = printer;
}
void draw(){
printer.print("in draw");
}
Затем создайте экземпляр этих классов в коде, специфичном для платформы, и передайте его в свой класс эскиза.