2

最近、Firefox OS/B2G について学んでいます。私は、壁紙ギャラリーから画像を取得したり、設定を変更したり、リマインダーを設定したりできる API の広範なセットが配置されていることを認識しています (いくつか例を挙げると)。ただし、壁紙を変更する方法、または実際にこれが可能かどうかについては完全に困惑しています。これがばかげた質問である場合はお詫び申し上げます。よろしくお願いします。

4

1 に答える 1

1

共有アクティビティを使用してこれを行うことができます

// imgToShare is the image you want to set as wallpaper
var shareImage = document.querySelector("#share-image"),
    imgToShare = document.querySelector("#image-to-share");

if (shareImage && imgToShare) {
    shareImage.onclick = function () {
        if(imgToShare.naturalWidth > 0) {
            // Create dummy canvas
            var blobCanvas = document.createElement("canvas");
            blobCanvas.width = imgToShare.width;
            blobCanvas.height = imgToShare.height;

            // Get context and draw image
            var blobCanvasContext = blobCanvas.getContext("2d");
            blobCanvasContext.drawImage(imgToShare, 0, 0);

            // Export to blob and share through a Web Activitiy
            blobCanvas.toBlob(function (blob) {
                new MozActivity({
                    name: "share",
                    data: {
                        type: "image/*",
                        number: 1,
                        blobs: [blob]
                    }
                });
            });
        }
        else {
            alert("Image failed to load, can't be shared");
        }
    };
}

Firefox OS ボイラープレートhttps://github.com/robnyman/Firefox-OS-Boilerplate-App/で実際の例をテストできます。

于 2014-04-14T15:54:37.850 に答える