小编Pav*_*nda的帖子

iOS推送通知自定义格式

我是所有iOS推送通知域的新手.我已经尝试使用以下代码进行基本推送通知,它完美无缺.我正在使用"使用JdSoft.Apple.Apns.Notifications;" 实现这一目标.这是代码:

Notification alertNotification = new Notification(testDeviceToken);

alertNotification.Payload.Alert.Body = "Hello World";           
alertNotification.Payload.Sound = "default";
alertNotification.Payload.Badge = 1;
Run Code Online (Sandbox Code Playgroud)

这将以下列结构将输出提供给iPhone:

{
    aps =     {
        alert = "Hello World";
        badge = 1;
        sound = default;
    };
}
Run Code Online (Sandbox Code Playgroud)

我现在需要添加自定义标记,如下所示:

{
    "aps":   {
        "alert": "Hello World",
        "sound": "default",
    "Person":     {
            "Address": "this is a test address",
            "Name": "First Name",
            "Number": "023232323233"
          
    }  
  }
}
Run Code Online (Sandbox Code Playgroud)

我发现很难在"aps"中获得"Person".我也知道您可以使用以下代码添加自定义属性:

alertNotification.Payload.AddCustom("Person",Newtonsoft.Json.JsonConvert.SerializeObject(stat));

但上面的代码没有添加"aps"标签.请告诉我如何实现?

push-notification ios

21
推荐指数
2
解决办法
4万
查看次数

如何在C#.Net上通过GCM发送Android推送通知

我是所有Android GCM推送通知的新手,我已经阅读过堆栈帖子,但无法得到直接答案.我还阅读了android中的创建推送通知,以便更好地了解GCM的工作原理.我还使用了SDK提供的gcm-demo-server和gcm-demo-client.但是,这是我的怀疑以及到目前为止我所尝试的内容:

  1. 关于我放的链接,有app的手机注册获取注册码.这是使用相同应用的所有手机的唯一键吗?
  2. 此注册密钥在任何情况下都会到期吗?(例如App在后台运行)
  3. 假设我有注册密钥,我尝试使用以下代码片段将GCM通知推送到我的应用程序.这是用c#.net编写的.请告诉我使用以下代码段是否可以实现上面提到的内容:

         private string SendGCMNotification(string apiKey, string postData, string postDataContentType = "application/json")
        {
            ServicePointManager.ServerCertificateValidationCallback += new RemoteCertificateValidationCallback(ValidateServerCertificate);
    
            // MESSAGE CONTENT
            byte[] byteArray = Encoding.UTF8.GetBytes(postData);
    
            // CREATE REQUEST
            HttpWebRequest Request = (HttpWebRequest)WebRequest.Create("https://android.googleapis.com/gcm/send");
            Request.Method = "POST";
            Request.KeepAlive = false;
            Request.ContentType = postDataContentType;
            Request.Headers.Add(string.Format("Authorization: key={0}", apiKey));
            Request.ContentLength = byteArray.Length;
    
            Stream dataStream = Request.GetRequestStream();
            dataStream.Write(byteArray, 0, byteArray.Length);
            dataStream.Close();
    
            // SEND MESSAGE
            try
            {
                WebResponse Response = Request.GetResponse();
                HttpStatusCode ResponseCode = ((HttpWebResponse)Response).StatusCode;
                if (ResponseCode.Equals(HttpStatusCode.Unauthorized) || ResponseCode.Equals(HttpStatusCode.Forbidden))
                {
                    var text = …
    Run Code Online (Sandbox Code Playgroud)

c# android google-cloud-messaging

9
推荐指数
2
解决办法
6万
查看次数

WCF - 如何在JSON中序列化和反序列化?

我在WCF中写了几个类(数据契约和服务契约),我试图在JSON中序列化和反序列化.如果我需要以下JSON结构,我将如何创建DataContract:

{
  "response": {
    "locations": {
      "location": [
        {
          "id": "12",
          "name": "Hello",
          "statusid": "78"
        },
        {
          "id": "5",
          "name": "Ann",
          "statusid": "8"
        }
      ]
    },
    "error": "404 error"
  }
}
Run Code Online (Sandbox Code Playgroud)

上面的结构非常简单,在如下所述的位置下可以有几个位置细节.所以我需要得到一个数组/列表到"位置"数据成员,如下所述.目前我只有以下DataContract:

[DataContract]
    public class Response
    {
        [DataMember]
        public string locations { get; set; }

        [DataMember]
        public string error{ get; set; }
    }
Run Code Online (Sandbox Code Playgroud)

请告诉我如何解决这个问题?

.net wcf json serializer

5
推荐指数
2
解决办法
2万
查看次数

将域指向没有虚拟主机或自定义配置文件的 apache 服务器

我们有一个 SaaS 产品,我们为客户提供网站。客户可以请求将自己的域指向他们的网站。目前我们使用 httpd.conf 文件添加一个指向同一文档目录的 VirtualHost 条目。之后,数据库将通过匹配 URL 来加载网站。我们意识到这种方法存在一些问题,而且根本无法扩展。

如果 httpd.conf 文件中存在错误,则整个产品可能无法正常工作。这实际上已经发生了。此外,我们使用 WHM 和 cPanel,因此当我们在实时服务器中添加 mod 或进行调整时,整个 httpd.conf 都会被重写,让我们替换/添加现有的虚拟主机条目到文件中。

奇怪的是,在我们的 QA 服务器中,我不必添加任何虚拟主机条目,只要指向一个新域,就会从数据库中提取该网站。我意识到只有在实时服务器中才需要虚拟主机条目。两者都安装了 Apache 2.4 CentOS。这背后有什么原因吗?我确定这与配置更改有关。

希望有人能指出我正确的方向,我可以在我们的实时服务器环境中实现相同的目标。

干杯!

apache virtualhost cpanel whm httpd.conf

1
推荐指数
1
解决办法
1406
查看次数