簡體   English   中英

Android Google Cloud Messaging onMessage Intent返回null

[英]Android Google Cloud Messaging onMessage Intent returns null

當我通過Google Cloud Messaging將沒有字母å,ä和ö的數據發送到我的設備時,一切正常。 但是,當我測試使用å發送消息時,該應用崩潰了。 日志記錄如下:

10-08 13:17:28.821: E/AndroidRuntime(8148): FATAL EXCEPTION: IntentService[GCMIntentService-460133591043-2]
10-08 13:17:28.821: E/AndroidRuntime(8148): Process: com.pingchat.app, PID: 8148
10-08 13:17:28.821: E/AndroidRuntime(8148): java.lang.NullPointerException
10-08 13:17:28.821: E/AndroidRuntime(8148):     at com.pingchat.app.GCMIntentService.onMessage(GCMIntentService.java:61)
10-08 13:17:28.821: E/AndroidRuntime(8148):     at com.google.android.gcm.GCMBaseIntentService.onHandleIntent(GCMBaseIntentService.java:223)
10-08 13:17:28.821: E/AndroidRuntime(8148):     at android.app.IntentService$ServiceHandler.handleMessage(IntentService.java:65)
10-08 13:17:28.821: E/AndroidRuntime(8148):     at android.os.Handler.dispatchMessage(Handler.java:102)
10-08 13:17:28.821: E/AndroidRuntime(8148):     at android.os.Looper.loop(Looper.java:136)
10-08 13:17:28.821: E/AndroidRuntime(8148):     at android.os.HandlerThread.run(HandlerThread.java:61)

我試圖找到解碼意圖“數據”的方法,但是沒有成功,有什么辦法可以解決這個問題? 嘗試捕獲只會打印stackrace。

GCMIntentService.java:61

String message = data.getStringExtra("message");

我要發送的有效負載:

{
  "k": "0fba39e3-f38f-41b4-823b-c802180bc260",
  "d": "APA91bFtShoLXvvzwMh2tUaLlaAzB4ossHu7zUN2rp9S7Dtxurw86k9DvHR5FEN7VQAPWsW0yePAWFjNbVEd4A7UaYQffdSsl6Lz2SkcuXX511Qd4txo1GgEF6C3Ho46ibMRSdwRGGKdAnIZD4-cUQaeibV1pcGGuQ",
  "m": "message",
  "f": "root",
  "c": "Tjo, finns dunderöö"
}

GCMIntentService.java $ OnMessage:

@Override
    protected void onMessage(Context context, Intent data) {
        String message = data.getStringExtra("message");
}

嘗試:

 String message = data.getExtras().getString("message");

代替

 String message = data.getStringExtra("message");

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM