我正在使用GCM向安卓设备发送通知。
我使用的代码在GCMIntentService中获取消息,如下所示:
@Override
protected void onMessage(Context ctx, Intent intent) {
// TODO Auto-generated method stub
String j =intent.getStringExtra("message");
generateNotification(ctx, j);
}
我在服务器端使用以下代码来推送或发送通知:
Dim request As WebRequest = WebRequest.Create("https://android.googleapis.com/gcm/send")
request.Method = "POST"
request.ContentType = "application/x-www-form-urlencoded"
request.Headers.Add("Authorization: key=AIzaSyA47-XMaePL1mmI0P1yQ9V4sntMVn9q-1o")
request.Headers.Add("Sender: id=648406549877")
Dim collapsKey = Guid.NewGuid.ToString("n")
Dim postdata As String = "registration_id=" + regid_String_reveived_from_device_after_registering_with_GCM + "&data.message=" + TextBox1.Text + "&collapse_key=" + collapsKey
Dim byteArray As Byte() = Encoding.UTF8.GetBytes(postdata)
request.ContentLength = byteArray.Length
Dim dataStream As Stream = request.GetRequestStream
dataStream.Write(byteArray, 0, byteArray.Length)
dataStream.Close()
Dim resposne As WebResponse = request.GetResponse
Dim dataresponse As Stream = resposne.GetResponseStream
Dim reader As New StreamReader(dataresponse)
Dim sResponseFromServer As String = reader.ReadToEnd
Label2.Text = sResponseFromServer
reader.Close()
dataresponse.Close()
resposne.Close
当我使用上面的代码发送任何英语语言的通知时,我可以在我的设备上收到它,没有任何问题,但是当我使用上述代码发送阿拉伯语通知时,无论是在Logcat还是通知中都显示为空白消息。我正在使用的Android API版本为16。
那么,我该如何以与接收英文消息相同的方式,接收阿拉伯语通知呢?
这个问题是来自ASP.Net端还是Android端呢?
非常感谢您的任何帮助或指引。