Ionic2 Native - Camera - получить реальный путь от заданного URI на Android

Я следую этому руководству:

http://devfanaticblog.com/working-with-camera-in-ionic-2-and-ionic-native/

Я запускаю приложение на Android телефоне.

$ ionic run android

Он работает правильно, за одним исключением:

Camera.DestinationType.FILE_URI

возвращает что-то вроде:

content://com.android.providers.media.documents/document/image%3A1792

который не работает. Мне нужен реальный путь, например:

/storage/sdcard/Downloads/ionic.png

Вот некоторые из команд, которые я запускал, чтобы заставить код работать.

$ ionic plugin add cordova-plugin-camera
$ npm install --save @ionic-native/camera

Вот исходный код плагина: github.com/apache/cordova-plugin-camera

Там я вижу, что уже есть функция, которая делает именно то, что мне нужно.

public static String getRealPath(Uri uri, CordovaInterface cordova) {...}

https://github.com/apache/cordova-plugin-camera/blob/master/src/android/FileHelper.java#L44

Мой вопрос:

Как мне использовать эту функцию в файле: home.ts для преобразования URI?


person davidesp    schedule 22.04.2017    source источник


Ответы (1)


Попробуйте использовать:

Camera.DestinationType.NATIVE_URI

Это должно вернуть собственный путь для изображения.

person L Balsdon    schedule 22.04.2017
comment
Это не сработало. Если вы отметите это: github.com/driftyco/ionic-native/blob/master/src/ вы увидите, что Camera.DestinationType.NATIVE_URI должен вернуть content:// on Android, а Camera.DestinationType.FILE_URI должен вернуть реальный путь. - person davidesp; 22.04.2017