Nativescript android 如何将远程图像下载到设备?

Nativescript android how to download remote image to device?

任何人都可以帮助我如何使用 nativescript android 应用程序将远程图像下载到手机吗? 例如,

<StackLayout>
   <Image [src]="remoteImgUrl"></Image>
   <Label tap="downloadImg({{remoteImgUrl}})" text="Download">
</StackLayout>

当用户点击 'Download' 时,我需要将该图像保存在 android 设备中。

这是一个基于此应用程序的示例 here:

TypeScript

export function saveFile(res: ImageSource) {

    fileName = "some-image-name" + ".jpeg";

    var folderPath;
    if (application.android) {
        var androidDownloadsPath = android.os.Environment.getExternalStoragePublicDirectory(android.os.Environment.DIRECTORY_DOWNLOADS).toString();
        folderPath = fileSystem.path.join(androidDownloadsPath, "MyImages");
    } 

    var folder = fileSystem.Folder.fromPath(folderPath);
    var path = fileSystem.path.join(folderPath, fileName);
    var exists = fileSystem.File.exists(path);

    if (!exists) {
        var saved = res.saveToFile(path, enums.ImageFormat.jpeg);
    }

}

该方法接受 imageSource 作为参数,因此您可以使用 imageSource 的 fromUrl 方法调用它,例如

import * as imageSource from "image-source";
imageSource.fromUrl(IMAGE_URL_HERE)
     .then(res => {
          saveFile(res); // 
      })