0

我试图从 node.js api 向 Windows 商店应用程序发送一些通知。我的目标是有几个通知,有一个正在显示的动画,然后另一个会向上滑动并停留 5 秒左右,然后它会再次向下显示第一个通知,这是一个循环

我用它来向我的应用程序发送通知

    var wns = require('push-notify').wns({
        client_id: 'ClientID',
        client_secret: 'ClientSecret'
    });

// Send notification.

    wns.send({
        channelURI: 'URI',
        payload: '<tile >'+
        '<visual version="3" addImageQuery="true">'
        + '<binding template="TileSquare71x71Image">'
        + '<image id="1" src="http://static.wintech.pt/win8_tile310x150.png" alt="Web image"/>'
        + '</binding>'
        + '<binding template="TileSquare150x150Image" fallback="TileSquareImage">'
        + '<image id="1" src="http://static.wintech.pt/win8_tile310x150.png" alt="Web image"/>'
        + '</binding>'
        + '<binding template="TileWide310x150ImageAndText01" fallback="TileWideImageAndText01">'
        + '<image id="1" src="http://static.wintech.pt/win8_tile310x150.png" alt="Web image"/>'
        + '<text id="1">This tile notification uses web images.</text>'
        + '</binding>'
        + '<binding template="TileSquare310x310Image">'
        + '<image id="1" src="http://static.wintech.pt/win8_tile310x150.png" alt="Web image"/>'
        + '</binding>'+
        '</visual>'+
        '</tile>',
        type: 'tile'
    });


    console.log("after1");

    setTimeout(function() {

        console.log("5 secs");
        wns.send({
            channelURI: 'URI',
            payload: '<tile >'+
            '<visual version="4" addImageQuery="true">'
            + '<binding template="TileSquare71x71Image">'
            + '<image id="1" src="http://archiecomics.com/wp-content/uploads/2014/08/ArchieWindowsStoreTile_310x150.png" alt="Web image"/>'
            + '</binding>'
            + '<binding template="TileSquare150x150Image" fallback="TileSquareImage">'
            + '<image id="1" src="http://archiecomics.com/wp-content/uploads/2014/08/ArchieWindowsStoreTile_310x150.png" alt="Web image"/>'
            + '</binding>'
            + '<binding template="TileWide310x150ImageAndText01" fallback="TileWideImageAndText01">'
            + '<image id="1" src="http://archiecomics.com/wp-content/uploads/2014/08/ArchieWindowsStoreTile_310x150.png" alt="Web image"/>'
            + '<text id="1">This tile notification uses web images.</text>'
            + '</binding>'
            + '<binding template="TileSquare310x310Image">'
            + '<image id="1" src="http://archiecomics.com/wp-content/uploads/2014/08/ArchieWindowsStoreTile_310x150.png" alt="Web image"/>'
            + '</binding>'+
            '</visual>'+
            '</tile>',
            type: 'tile'
        });
    }, 5000);

但显然这一切只是显示第一个通知 5 秒,然后瓷砖旋转并显示第二个。

有没有办法在 xaml 中定义这两个之间的循环?

4

1 回答 1

0

您不能为图块定义自定义动画。此处列出了可用的磁贴类型列表:

磁贴模板目录(Windows 运行时应用)

根据您的代码,我不确定您是否使用通知。如果没有,您可能会发现它们很有用:

使用通知队列(Windows 运行时应用)

通知队列的使用允许磁贴显示最多五个通知的轮换。默认情况下,开始屏幕上的磁贴会显示单个通知的内容,直到新通知替换当前通知。启用通知队列后,队列中最多可维护五个通知,并且磁贴在它们之间循环。

但请注意,您仍然无法定义这些动画或循环的方式:

队列中每个通知的显示时间以及它们在磁贴上的显示顺序取决于多个内部因素,并且无法由应用程序控制。

于 2015-12-30T08:04:23.083 回答