猿问

未从 GCM CCS 收到 Delivery_receipt_notification

我试图receipt从 CCS获得一个,但我无法做到。


这是我在做什么:


我有一个go脚本:


package main


import (

    "fmt"

    "github.com/brunohenrique/go-gcm/ccs"

)


var (

    user = struct {

        gcmToken string

    }{"mg0xe56LfjE:APA91bFHtHVQt85iNgyzTeDowovIGPAD_NbBjURppy1LgV9_oaM2R_9zn1fDXNuEeOoALTj7F8e8JmNPI3Md-CbbgTxdvxVrONFVfGz2dOujsaGkZjEhJcBH8sWvRNYZNIp2j2QliAEX"}

)



func main() {

    con := connect()



    // Sends a message

    con.Send(&ccs.OutMsg{

        To: user.gcmToken,

        ID: "m-1366082849205",

        Notification: map[string]interface{}{

            "title": "Hey!",

            "body": "There",

            "sound": "default",

        },

        TimeToLive: 600,

        DeliveryReceiptRequested: true,

        DelayWhileIdle: true,

    })



    // Listen to messages

    for {

        m, err := con.Receive()


        if err != nil {

            fmt.Printf(">>> Err: %+v \n", err)

        }


        go func(m *ccs.InMsg) {

            fmt.Printf(">>> InMsg: %+v \n", m)

        }(m)

    }

}

运行脚本时一切正常,但没有回执消息:

这就是我收到通知时正在做的事情:

http://img1.mukewang.com/616d33af0001e48423140537.jpg

我做错了什么或遗漏了什么?


胡子哥哥
浏览 181回答 2
2回答

小怪兽爱吃肉

感谢您在 iOS 上试用 GCM。遗憾的是,目前无法在 iOS 上显示送货收据。

冉冉说

不确定您是在 Android 还是 iOS 上尝试此操作,因为它在 Android 上对我有用,但在 iOS 上并不总是有效。iOS 的送达回执不适用于notification请求中的参数。我能够让它为普通data消息工作,即带有有效载荷{&nbsp; "to" : <reg id>,&nbsp; "data" : {&nbsp; &nbsp; "hello" : "world",&nbsp; &nbsp; "id" : 123&nbsp; }}但是,如果我将notification有效载荷添加到上述有效载荷中,则它不起作用。我认为,由于notification需要通过 APNS 发送有效载荷消息,因此他们无法知道消息是否已传递,因为 APNS 不返回任何结果。对于没有 notification消息,因为只有在应用程序处于前台时才收到消息,他们将能够验证消息是否已送达。
随时随地看视频慕课网APP

相关分类

Python
我要回答