方形和宽瓷砖的推送通知

Posted

技术标签:

【中文标题】方形和宽瓷砖的推送通知【英文标题】:Push Notification for square and wide tiles 【发布时间】:2013-01-20 18:05:56 【问题描述】:

我正在使用Azure Mobile Services 向我的客户端应用程序发送推送通知。我使用 push.wns 对象(第一个正方形,然后是宽)发送正方形和平铺通知。下面是发送推送通知的服务器端代码的样子(基本上每当我的数据库表中的记录更新时都会调用它):

function update(item, user, request) 
request.execute(
    success: function() 
        request.respond();
        sendNotifications();
    
);

function sendNotifications() 
    var channelTable = tables.getTable('channel');

    channelTable.read(
        success: function(channels) 
            channels.forEach(function(channel) 
                push.wns.sendTileSquarePeekImageAndText02(channel.pushuri, 
                image1src: '<imgPath>', 
                text1: 'New Game',
                text2: item.playername  , 
                     
                     success: function(pushResponse)  console.log("Sent Square:", pushResponse); ,
                     error: function(error) 
                                console.log("error sending push notification to ", channel.pushuri);
                                if (error.statusCode == 410) 
                                    console.log("Deleting ", channel);
                                    channelTable.del(channel.id);               
                                
                              
                    );

                push.wns.sendTileWidePeekImage01(channel.pushuri, 
                image1src: <imgPath>, 
                text1: 'New Game',
                text2: item.playername  , 
                     
                     success: function(pushResponse)  console.log("Sent Square:", pushResponse); ,
                     error: function(error) 
                                console.log("error sending push notification to ", channel.pushuri);
                                if (error.statusCode == 410) 
                                    console.log("Deleting ", channel);
                                    channelTable.del(channel.id);               
                                
                              
                    );
            );
        
    );

我注意到当我的应用磁贴很宽时,宽通知会正确显示。但是,当我将应用程序的磁贴大小设置为方形时,不会显示方形通知。我该如何纠正这个问题?

【问题讨论】:

没有一些代码几乎不可能回答。 @DanielKelley 添加了一些代码 不清楚为什么当你的代码不是 C# 时它被标记为 C#。 我已将问题重新标记为 javascript 和 WinJS。 啊,我的错。我的客户端应用程序是 C#,尽管将通知推送到该应用程序的整个云基础架构都使用 Javascript 【参考方案1】:

这是一个示例,您可以使用它来一次发送一个更新并更新两种磁贴。

push.wns.send(item.channel,
'<tile><visual>' +
'<binding template="TileSquarePeekImageAndText02">' + 
    '<image id="1" src="imageUri" />' + 
    '<text id="1">Template: TileSquarePeekImageAndText02</text>' + 
    '<text id="2">' + item.text + '</text>' + 
'</binding>' + 
'<binding template="TileWidePeekImage01">' + 
    '<image id="1" src="imageUri" />' + 
    '<text id="1">Template: TileWidePeekImage01</text>' + 
    '<text id="2">' + item.text + '</text>' + 
'</binding>' + 
'</visual></tile>',
"wns/toast", 
    success: function(pushResponse) 
        console.log("Sent push:", pushResponse);
    

);

【讨论】:

【参考方案2】:

具有宽内容的磁贴通知正在替换包含方形内容的磁贴通知。应发送单个通知containing both square and wide tile content。

【讨论】:

您是否知道如何使用 Javascript 在服务器端构建该有效负载? 看来 sendTile* 方法只发送一种类型的内容(方形或宽)。要构建具有方形和宽内容的通知,请使用send 方法并显式传入通知 XML。 这就是我的意思。我是 javascript、JSON、XML 等的新手。你知道如何构造那段 xml 有效负载吗?

以上是关于方形和宽瓷砖的推送通知的主要内容,如果未能解决你的问题,请参考以下文章

iOS开发 - ANPs推送通知 标签: 推送通知ANPs远程推送本地推送

已经拥有静默推送通知后的正常推送通知权限

显示最后一个通知推送,我需要显示所有通知推送

PWA 的推送通知或 Web 推送通知

Apple 推送通知或 Firebase 推送通知? [关闭]

Xamarin iOS - 推送通知 - 区分点击的推送通知与到达