Как удалить NativeScript ImageAsset, созданный с помощью nativescript-камеры? - PullRequest
0 голосов
/ 30 апреля 2018
import { takePicture, CameraOptions } from "nativescript-camera";

CameraOptions позволяет установить saveToGallery на false. Однако изображение сохраняется на моем устройстве Android во Внутреннем хранилище> Android> data> org.nativescript.appname>, когда я использую takePicture для создания ImageAsset. Консольный вывод для актива (asset.android):

/storage/emulated/0/Android/data/org.nativescript.HelloWorld/files/NSIMG_20180430_131826.jpg

Я использую imageSource.ImageSource().fromAsset и imageSource.ImageSource.saveToFile, чтобы сохранить изображение в каком-то известном месте, и теперь я хотел бы удалить исходный файл NSIMG_20180430_131826.jpg полностью с моего устройства.

Может кто-нибудь помочь, пожалуйста?

1 Ответ

0 голосов
/ 01 мая 2018

Вы можете попробовать следующий код:

try {
    //get file
    const path = "/storage/emulated/0/Android/data/org.nativescript.HelloWorld/files/NSIMG_20180430_131826.jpg";

    const pathArray = path.split('/');
    //get file name
    const fileToRemovePath = pathArray[pathArray.length - 1];
    //remove the file, try adding 'files' as a folder name
    let folder = fs.knownFolders.currentApp().getFolder("yourfoldernamewhereyoucopied");
    const fileToRemove = folder.getFile(fileToRemovePath);
    if(fileToRemove) {
        //delete it
        await fileToRemove.remove();
    }
} catch (e) {
    //dialogs.alert('Couldnot delete the file');
}

и вам понадобится импорт fs:

import * as fs from "file-system";
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...