Я пытаюсь создать фрагмент кода, чтобы открыть файл, возвращенный из собственного кода, но если я использую
FileSystemStorage.getInstance().exists(file)
он всегда возвращает false, хотя я только что вернул путь из собственного кода
мой код вернул такой путь:
String path = Environment.getExternalStoragePublicDirectory(Environment.DIRECTORY_DCIM).getAbsolutePath() +"/"+param+System.currentTimeMillis()+".png";
если вы проверите, вы можете найти его в галерее, но при возврате к кодовому имени он не видит файл
какие-либо предложения
---------------- Обновлять :
Я так называю родного, но, похоже, он не дожидается окончания звонка
final StatusClass imagePath = new StatusClass();
Display.getInstance().invokeAndBlock(new Runnable() {
public void run() {
Log.p("hello native");
imagePath.setStatusMsg(AccessNativeCamera.capturePhoto("Test"));
Log.p("goodbye native");
Log.p("imagePath "+imagePath);
}
});
if (FileSystemStorage.getInstance().exists("file://" + imagePath.getStatusMsg())){
Dialog.show("Check ","File exists", null, null);
}
С уважением,
Это должно работать:
FileSystemStorage.getInstance().exists("file://" + file)
Пути в Codename One всегда абсолютны и должны использовать нотацию URL.
спасибо, но мне удалось решить мою проблему, добавив небольшую задержку, чтобы проверить, есть ли файл уже или нет
Я пытаюсь сделать собственный путь Image.createImage(FileSystemStorage.getInstance().openInputStream("NativePathRetunred from iOS"))); из IOS в такой форме: file:///var/mobile/Containers/Data/Application/XX-XXXX-XXXXXX/Documents/IMG_0331.JPG, но изображение не создается успешно, хотя путь правильный и изображение сохраняется в библиотеке фотографий.
Я даже пробовал сделать Display.getInstance().execute("NativePathReturned from iOS") и он не открывал образ
Откуда вы взяли этот путь? Приложения изолированы на мобильных устройствах и не имеют доступа ко всем путям
из родного я реализовал захват камеры [и из функции didFinishPickingMediaWithInfo я получаю путь]
Путь, который вы там получили, вероятно, нужно преобразовать в путь к документам.
API, вероятно, асинхронный, это другой вопрос. Обратите внимание, что Android API должен работать на Android EDT codenameone.com/blog/tip-use-native-edt.html