通过GCM将谷歌应用程序引擎中的位图图像发送到android

时间:2016-06-16 12:31:13

标签: android bitmap google-cloud-messaging

我正在尝试发送图片(包括帖子图片和个人资料图片,如facebook)。 当我试图发送这些图像(位图编码)时,gcm忽略了我的请求,没有特别的原因。

这是一个有效的代码:

query = ndb.gql("""SELECT * FROM GCM_Registration_Table""")
    i = 0
    tokens = []
    for q in query:
        tokens.append(q.token)
        i += 1

conn = httplib.HTTPSConnection('android.googleapis.com')
conn.connect()
conn.set_debuglevel(1)
body = {}
body['data'] = {
    'message': 'this is a post message',
    'post_id': post.post_id,
    'publisher': post.publisher,
    'message_text': post.message_text,
    'color': post.color,
    'race': post.race,
    'size': post.size,
    'zone': post.zone,
    'sex': post.sex,
    'publish_time': str(post.publish_time.strftime('%d.%m.%Y %H:%M:%S'))
    }
body['registration_ids'] = tokens
headers = {'Content-type': 'application/json',
           'Accept': 'text/plain', 'Authorization': 'key=' \
           + api_key}
print 'Send data \n' + str(body)
conn.request('POST', '/gcm/send', json.dumps(body), headers)
response = conn.getresponse()

然而,当我添加这一行时:

'profile_picture': post.profile_picture

它不起作用。

任何想法?还是sol?

1 个答案:

答案 0 :(得分:0)

好的,因此无法通过GCM发送图像。

所以简单的解决方案就是发送" Post id"然后从服务器通过其id请求帖子。

谢谢!