1

ファイルシステムから画像を取得する際に問題があります。iOSでは正常に動作します。

まず、次の関数を使用してリモート イメージをファイル システムに保存します。

img.imagen = リモート画像の URL (例: http://onesite.es/img2.jpeg )

function descargarImagen(img, callback){

    var path = img.imagen;
    var filename = path.split("/").pop();

    var xhr = Titanium.Network.createHTTPClient({
        onload: function() {
            // first, grab a "handle" to the file where you'll store the downloaded data
            var f = Ti.Filesystem.getFile(Ti.Filesystem.applicationDataDirectory, filename);
            f.write(this.responseData); // write to the file
            Ti.API.debug("-- Imagen guardada: " + f.nativePath);
            callback({path: f.nativePath});
        },
        timeout: 10000
    });
    xhr.open('GET', path);
    xhr.send();
}

ここで、Android インテントを作成するこの画像を共有したいと思います。

args.image = f.nativePath (前の関数内)

var intent      = null;
var intentType  = null;

intent = Ti.Android.createIntent({
    action: Ti.Android.ACTION_SEND
});

// add text status
if (args.status){
    intent.putExtra(Ti.Android.EXTRA_TEXT, args.status);
}

// change type according to the content
if (args.image){
    intent.type = "image/*";
    intent.putExtraUri(Ti.Android.EXTRA_STREAM, args.image);
}else{
    intent.type = "text/plain";
    intent.addCategory(Ti.Android.CATEGORY_DEFAULT);
}

// launch intent
Ti.Android.currentActivity.startActivity(Ti.Android.createIntentChooser(intent, args.androidDialogTitle));

私が間違っていることは何ですか?

4

0 に答える 0