Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/183.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/sql-server/27.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何在sql server中编写跳跳虎来向android手机发送推送通知(GCM)?_Android_Sql Server_Triggers_Google Cloud Messaging - Fatal编程技术网

如何在sql server中编写跳跳虎来向android手机发送推送通知(GCM)?

如何在sql server中编写跳跳虎来向android手机发送推送通知(GCM)?,android,sql-server,triggers,google-cloud-messaging,Android,Sql Server,Triggers,Google Cloud Messaging,我已经将GCM的演示代码应用于appache服务器上的服务器端和android设备上的客户端,效果非常好;但我需要在我的应用程序中激活此服务,如下所示: 我在SqlServer上有一个数据库,每当某些数据被修改时,我需要自动向android手机发送推送通知,我想我应该使用更新后和插入后触发器来完成这项工作,但我不知道怎么做。 任何帮助都将不胜感激,提前感谢 您不应该在触发器上执行此操作。将GCM推送的延迟添加到每个表更新中会很快将性能降低到无法忍受的地步。您必须将触发器与GCM调用分离,实现它的

我已经将GCM的演示代码应用于appache服务器上的服务器端和android设备上的客户端,效果非常好;但我需要在我的应用程序中激活此服务,如下所示: 我在SqlServer上有一个数据库,每当某些数据被修改时,我需要自动向android手机发送推送通知,我想我应该使用更新后和插入后触发器来完成这项工作,但我不知道怎么做。
任何帮助都将不胜感激,提前感谢

您不应该在触发器上执行此操作。将GCM推送的延迟添加到每个表更新中会很快将性能降低到无法忍受的地步。您必须将触发器与GCM调用分离,实现它的最佳方法是通过队列

  • 您可以让外部进程监视队列并处理GCM调用
  • 您可以从或从监控队列的外部进程使用和传递GCM调用
  • 您可以从外部进程使用和监视NT队列
我的建议是使用第一个选项,因为它是最简单的,并且具有简单性的固有健壮性。阅读链接文章,了解将表用作队列需要什么,不要抄近路

所有选项仍然依赖触发器将通知排队,但它将是本地排队,而不是GCM调用


我相信有人会想到使用SQLCLR从触发器本身调用GCM的天真解决方案:不要这样做。

您不应该从触发器中这样做。将GCM推送的延迟添加到每个表更新中会很快将性能降低到无法忍受的地步。您必须将触发器与GCM调用分离,实现它的最佳方法是通过队列

  • 您可以让外部进程监视队列并处理GCM调用
  • 您可以从或从监控队列的外部进程使用和传递GCM调用
  • 您可以从外部进程使用和监视NT队列
我的建议是使用第一个选项,因为它是最简单的,并且具有简单性的固有健壮性。阅读链接文章,了解将表用作队列需要什么,不要抄近路

所有选项仍然依赖触发器将通知排队,但它将是本地排队,而不是GCM调用


我相信有人会想到使用SQLCLR从触发器本身调用GCM的天真解决方案:不要这样做。

这是“特定数据”只在一个表中还是在多个表中?这是“特定数据”只在一个表中还是在多个表中?谢谢你的回答,但我对这个主题不是很熟悉,你能为我提供更多的解释或教程来帮助我实现代码吗?谢谢你的回答,但我对这个主题不是很熟悉,你能为我提供更多的解释或教程来帮助我实现代码吗。