Android-импорт java.nio.file.Files; не может быть решен
Я тестирую новый API Gmail, и образцы используют классы в пакете java.nio.file, например. Files
и FileSystems
.
Эти классы были введены в Java jdk 1.7 для записи, и поскольку я запускаю jdk 1.7.0_65 в своем приложении для Android, я понятия не имею, почему Android Studio не может найти эти классы.
Импорт:
import java.nio.file.FileSystems;
import java.nio.file.Files;
Мой файл build.gradle, конечно же, указывает системе использовать v 1.7, как это
android {
compileSdkVersion 19
buildToolsVersion '20'
...
compileOptions {
sourceCompatibility JavaVersion.VERSION_1_7
targetCompatibility JavaVersion.VERSION_1_7
}
}
Я указываю на правый каталог jdk:
![enter image description here]()
Jdk указан в разделе "Внешние библиотеки":
![enter image description here]()
И если я просматриваю файлы Java, я могу даже найти java.nio.file.Files и .FileSystems:
![enter image description here]()
Теперь, что такое ****?? По моему мнению, я делаю все прямо здесь, любые предложения?
Ответы
Ответ 1
Android не предлагает все классы, которые может предложить "обычная java". Files
- один из классов, который Android не предлагает.
Вы можете посмотреть классы, доступные в Android здесь: http://developer.android.com/reference/classes.html
Так что, к сожалению, вам нужно использовать другие функции/классы для реализации той же функциональности.
PS: Класс показан на скриншоте, потому что вы просматриваете классы java, установленные на вашем ПК, а не те, которые доступны на телефоне/планшете Android.
Update
Классы Files
/FileSystem
стали доступны начиная с версии API версии 6.
Ответ 2
По-видимому java.nio.file
идет с Android O.
https://developer.android.com/reference/java/nio/file/package-summary.html
Ответ 3
Посмотрите на это Ссылка Android поддерживает некоторые классы пакетов NIO, а не полные классы. Но если вам нужно ускорить свой код, вы также можете использовать apache-commons api для него.