{ "id": "149658", "key": "AC-225", "fields": { "issuetype": { "id": "1", "description": "A problem which impairs or prevents the functions of the product.", "name": "Bug", "subtask": false }, "project": { "id": "12217", "key": "AC", "name": "Appcelerator - INBOX", "projectCategory": { "id": "10000", "description": "", "name": "Customer Service" } }, "resolution": { "id": "5", "description": "All attempts at reproducing this issue failed, or not enough information was available to reproduce the issue. Reading the code produces no clues as to why this behavior would occur. If more information appears later, please reopen the issue.", "name": "Cannot Reproduce" }, "resolutiondate": "2015-12-14T14:03:47.000+0000", "created": "2015-07-13T18:57:26.000+0000", "labels": [], "versions": [], "issuelinks": [ { "id": "48383", "type": { "id": "10002", "name": "Duplicate", "inward": "is duplicated by", "outward": "duplicates" }, "inwardIssue": { "id": "149516", "key": "AC-1007", "fields": { "summary": "APS Cloud Push - Payload is null", "status": { "description": "The issue is considered finished, the resolution is correct. Issues which are closed can be reopened.", "name": "Closed", "id": "6", "statusCategory": { "id": 3, "key": "done", "colorName": "green", "name": "Done" } }, "issuetype": { "id": "1", "description": "A problem which impairs or prevents the functions of the product.", "name": "Bug", "subtask": false } } } } ], "assignee": { "name": "mrahman", "key": "mrahman", "displayName": "Mostafizur Rahman", "active": true, "timeZone": "Asia/Dhaka" }, "updated": "2016-03-01T18:38:27.000+0000", "status": { "description": "A resolution has been taken, and it is awaiting verification by reporter. From here issues are either reopened, or are closed.", "name": "Resolved", "id": "5", "statusCategory": { "id": 3, "key": "done", "colorName": "green", "name": "Done" } }, "components": [ { "id": "14548", "name": "Titanium SDK & CLI", "description": "Please enter tickets related to the MobileSDK here." } ], "description": "My app uses android push notification. If I do a fresh install on my android phone, I get the following error. It behaves as if a push notification is coming in, but there is actually none.\r\n{code}\r\n [ERROR] : APSCloudPush: Payload is null!\r\n [ERROR] : TiApplication: (main) [4889,4889] Sending event: exception on thread: main msg:java.lang.RuntimeException: Unable to start receiver com.appcelerator.aps.GCMReceiver: java.lang.NullPointerException: Attempt to invoke virtual method 'int java.lang.String.length()' on a null object reference; Titanium 4.0.0,2015/05/18 15:42,9239ff9\r\n [ERROR] : TiApplication: java.lang.RuntimeException: Unable to start receiver com.appcelerator.aps.GCMReceiver: java.lang.NullPointerException: Attempt to invoke virtual method 'int java.lang.String.length()' on a null object reference\r\n [ERROR] : TiApplication: at android.app.ActivityThread.handleReceiver(ActivityThread.java:2726)\r\n [ERROR] : TiApplication: at android.app.ActivityThread.access$1700(ActivityThread.java:144)\r\n [ERROR] : TiApplication: at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1449)\r\n [ERROR] : TiApplication: at android.os.Handler.dispatchMessage(Handler.java:102)\r\n [ERROR] : TiApplication: at android.os.Looper.loop(Looper.java:155)\r\n [ERROR] : TiApplication: at android.app.ActivityThread.main(ActivityThread.java:5696)\r\n [ERROR] : TiApplication: at java.lang.reflect.Method.invoke(Native Method)\r\n [ERROR] : TiApplication: at java.lang.reflect.Method.invoke(Method.java:372)\r\n [ERROR] : TiApplication: at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:1028)\r\n [ERROR] : TiApplication:\r\n [ERROR] : TiApplication: Caused by: java.lang.NullPointerException: Attempt to invoke virtual method 'int java.lang.String.length()' on a null object reference\r\n [ERROR] : TiApplication: at org.json.JSONTokener.nextCleanInternal(JSONTokener.java:116)\r\n [ERROR] : TiApplication: at org.json.JSONTokener.nextValue(JSONTokener.java:94)\r\n [ERROR] : TiApplication: at org.json.JSONObject.(JSONObject.java:156)\r\n [ERROR] : TiApplication: at org.json.JSONObject.(JSONObject.java:173)\r\n [ERROR] : TiApplication: at com.appcelerator.aps.APSCloudPush.showTrayNotification(APSCloudPush.java:347)\r\n [ERROR] : TiApplication: at com.appcelerator.aps.APSCloudPush.receivePayload(APSCloudPush.java:253)\r\n [ERROR] : TiApplication: at com.appcelerator.aps.GCMReceiver.onReceive(GCMReceiver.java:30)\r\n [ERROR] : TiApplication: at android.app.ActivityThread.handleReceiver(ActivityThread.java:2712)\r\n [ERROR] : TiApplication: ... 9 more\r\n{code}\r\nHere is the js code:\r\n{code}\r\n\tvar CloudPush = require('ti.cloudpush');\r\n\tvar rc = CloudPush.isGooglePlayServicesAvailable();\r\n\tif(rc == CloudPush.SUCCESS){\r\n\t\tvar flagBgPush = function(){\r\n\t\t\tbgPush = true;\r\n\t\t};\r\n\t\tCloudPush.retrieveDeviceToken({\r\n\t\t success: deviceTokenSuccess,\r\n\t\t error: function(){}\r\n\t\t});\r\n\t\tCloudPush.addEventListener('trayClickLaunchedApp', flagBgPush);\r\n\t\tCloudPush.addEventListener('trayClickFocusedApp', flagBgPush);\r\n\t\tCloudPush.addEventListener('callback', pushBackgroundCheck);\r\n\t}\r\n{code}", "attachment": [], "flagged": false, "summary": "Android Error: Payload is null! when installing freshly on a device", "creator": { "name": "shawnlan", "key": "shawnlan", "displayName": "Shawn Lan", "active": true, "timeZone": "America/Los_Angeles" }, "subtasks": [], "reporter": { "name": "shawnlan", "key": "shawnlan", "displayName": "Shawn Lan", "active": true, "timeZone": "America/Los_Angeles" }, "environment": "SDK 4.0.0/4.1.0 Android 5.0", "comment": { "comments": [ { "id": "357951", "author": { "name": "shawnlan", "key": "shawnlan", "displayName": "Shawn Lan", "active": true, "timeZone": "America/Los_Angeles" }, "body": "I didn't specify a version number for ti.cloudpush in tiapp.xml, so it should be the latest version that's shipped with 4.0.0/4.1.0. This issue seems random. Not every time the issue shows up. But I'm sure the issue happens only at the first launch of a fresh install. If you just \"update\" the app, there is no such issue. I think you have to try uninstalling and reinstalling a few times to see it happen. Maybe send a few push notifications as well (I did). ", "updateAuthor": { "name": "shawnlan", "key": "shawnlan", "displayName": "Shawn Lan", "active": true, "timeZone": "America/Los_Angeles" }, "created": "2015-07-19T06:00:57.000+0000", "updated": "2015-07-19T06:00:57.000+0000" }, { "id": "358603", "author": { "name": "bradleycorn", "key": "bradleycorn", "displayName": "Brad Ball", "active": true, "timeZone": "America/New_York" }, "body": "I cannot say for sure, but I think the issue might have to do with the device trying to process a push notification before all of the notification stuff is setup. Try this and see if it reproduces the issue:\r\n\r\n1.) Create an app and set it up to recieve push notifications.\r\n2.) Install the app on an android device and run it, registering to receive push notifications from one or more channels. \r\n3.) Verify in the appcelerator cloud services dashboard that the device is registered.\r\n4.) Uninstall the app from the device.\r\n5.) Using the cloud services dashboard, send a push notification to the device (which still shows up in the dashboard, even though it has been uninstalled).\r\n6.) Reinstall and start the app on the device.\r\nSee if the error appears.", "updateAuthor": { "name": "bradleycorn", "key": "bradleycorn", "displayName": "Brad Ball", "active": true, "timeZone": "America/New_York" }, "created": "2015-07-30T17:16:34.000+0000", "updated": "2015-07-30T17:16:34.000+0000" }, { "id": "358757", "author": { "name": "shawnlan", "key": "shawnlan", "displayName": "Shawn Lan", "active": true, "timeZone": "America/Los_Angeles" }, "body": "and try uninstalling and reinstalling immediately. Not every time you'll see this error, but if you try enough times you should be able to get it.", "updateAuthor": { "name": "shawnlan", "key": "shawnlan", "displayName": "Shawn Lan", "active": true, "timeZone": "America/Los_Angeles" }, "created": "2015-07-31T20:09:53.000+0000", "updated": "2015-07-31T20:09:53.000+0000" }, { "id": "358926", "author": { "name": "hmrida", "key": "hmrida", "displayName": "Harish Mridha", "active": true, "timeZone": "Asia/Dhaka" }, "body": "Hi [~shawnlan]\r\n\r\nCan you please share with us your android device details?\r\n\r\nThanks ", "updateAuthor": { "name": "hmrida", "key": "hmrida", "displayName": "Harish Mridha", "active": true, "timeZone": "Asia/Dhaka" }, "created": "2015-08-04T11:44:35.000+0000", "updated": "2015-08-04T11:44:35.000+0000" }, { "id": "358952", "author": { "name": "shawnlan", "key": "shawnlan", "displayName": "Shawn Lan", "active": true, "timeZone": "America/Los_Angeles" }, "body": "HTC One M7, Sense 6.0. Android 5.0.2. Anything else you need?", "updateAuthor": { "name": "shawnlan", "key": "shawnlan", "displayName": "Shawn Lan", "active": true, "timeZone": "America/Los_Angeles" }, "created": "2015-08-04T16:35:47.000+0000", "updated": "2015-08-04T16:35:47.000+0000" }, { "id": "359316", "author": { "name": "jyounus", "key": "jyounus", "displayName": "Junaid Younus", "active": true, "timeZone": "Europe/London" }, "body": "I have the exact same issue.\r\n\r\n\r\n{noformat}\r\nE/APSCloudPush(14459): Payload is null!\r\nW/GCM-DMM ( 941): broadcast intent callback: result=CANCELLED forIntent { act=com.google.android.c2dm.intent.RECEIVE pkg=sh.dogfi.intrepid (has extras) }\r\nD/AndroidRuntime(14459): Shutting down VM\r\nW/dalvikvm(14459): threadid=1: thread exiting with uncaught exception (group=0x41614ba8)\r\nE/TiApplication(14459): (main) [46918,57276] Sending event: exception on thread: main msg:java.lang.RuntimeException: Unable to start receiver com.appcelerator.aps.GCMReceiver: java.lang.NullPointerException; Titanium 4.1.0,2015/07/06 11:15,d57aa7d\r\nE/TiApplication(14459): java.lang.RuntimeException: Unable to start receiver com.appcelerator.aps.GCMReceiver: java.lang.NullPointerException\r\nE/TiApplication(14459): \tat android.app.ActivityThread.handleReceiver(ActivityThread.java:2426)\r\nE/TiApplication(14459): \tat android.app.ActivityThread.access$1700(ActivityThread.java:135)\r\nE/TiApplication(14459): \tat android.app.ActivityThread$H.handleMessage(ActivityThread.java:1272)\r\nE/TiApplication(14459): \tat android.os.Handler.dispatchMessage(Handler.java:102)\r\nE/TiApplication(14459): \tat android.os.Looper.loop(Looper.java:136)\r\nE/TiApplication(14459): \tat android.app.ActivityThread.main(ActivityThread.java:5017)\r\nE/TiApplication(14459): \tat java.lang.reflect.Method.invokeNative(Native Method)\r\nE/TiApplication(14459): \tat java.lang.reflect.Method.invoke(Method.java:515)\r\nE/TiApplication(14459): \tat com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:779)\r\nE/TiApplication(14459): \tat com.android.internal.os.ZygoteInit.main(ZygoteInit.java:595)\r\nE/TiApplication(14459): \tat dalvik.system.NativeStart.main(Native Method)\r\nE/TiApplication(14459): Caused by: java.lang.NullPointerException\r\nE/TiApplication(14459): \tat org.json.JSONTokener.nextCleanInternal(JSONTokener.java:116)\r\nE/TiApplication(14459): \tat org.json.JSONTokener.nextValue(JSONTokener.java:94)\r\nE/TiApplication(14459): \tat org.json.JSONObject.(JSONObject.java:155)\r\nE/TiApplication(14459): \tat org.json.JSONObject.(JSONObject.java:172)\r\nE/TiApplication(14459): \tat com.appcelerator.aps.APSCloudPush.showTrayNotification(APSCloudPush.java:347)\r\nE/TiApplication(14459): \tat com.appcelerator.aps.APSCloudPush.receivePayload(APSCloudPush.java:253)\r\nE/TiApplication(14459): \tat com.appcelerator.aps.GCMReceiver.onReceive(GCMReceiver.java:30)\r\nE/TiApplication(14459): \tat android.app.ActivityThread.handleReceiver(ActivityThread.java:2419)\r\nE/TiApplication(14459): \t... 10 more\r\nE/AndroidRuntime(14459): FATAL EXCEPTION: main\r\nE/AndroidRuntime(14459): Process: sh.dogfi.intrepid, PID: 14459\r\nE/AndroidRuntime(14459): java.lang.RuntimeException: Unable to start receiver com.appcelerator.aps.GCMReceiver: java.lang.NullPointerException\r\nE/AndroidRuntime(14459): \tat android.app.ActivityThread.handleReceiver(ActivityThread.java:2426)\r\nE/AndroidRuntime(14459): \tat android.app.ActivityThread.access$1700(ActivityThread.java:135)\r\nE/AndroidRuntime(14459): \tat android.app.ActivityThread$H.handleMessage(ActivityThread.java:1272)\r\nE/AndroidRuntime(14459): \tat android.os.Handler.dispatchMessage(Handler.java:102)\r\nE/AndroidRuntime(14459): \tat android.os.Looper.loop(Looper.java:136)\r\nE/AndroidRuntime(14459): \tat android.app.ActivityThread.main(ActivityThread.java:5017)\r\nE/AndroidRuntime(14459): \tat java.lang.reflect.Method.invokeNative(Native Method)\r\nE/AndroidRuntime(14459): \tat java.lang.reflect.Method.invoke(Method.java:515)\r\nE/AndroidRuntime(14459): \tat com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:779)\r\nE/AndroidRuntime(14459): \tat com.android.internal.os.ZygoteInit.main(ZygoteInit.java:595)\r\nE/AndroidRuntime(14459): \tat dalvik.system.NativeStart.main(Native Method)\r\nE/AndroidRuntime(14459): Caused by: java.lang.NullPointerException\r\nE/AndroidRuntime(14459): \tat org.json.JSONTokener.nextCleanInternal(JSONTokener.java:116)\r\nE/AndroidRuntime(14459): \tat org.json.JSONTokener.nextValue(JSONTokener.java:94)\r\nE/AndroidRuntime(14459): \tat org.json.JSONObject.(JSONObject.java:155)\r\nE/AndroidRuntime(14459): \tat org.json.JSONObject.(JSONObject.java:172)\r\nE/AndroidRuntime(14459): \tat com.appcelerator.aps.APSCloudPush.showTrayNotification(APSCloudPush.java:347)\r\nE/AndroidRuntime(14459): \tat com.appcelerator.aps.APSCloudPush.receivePayload(APSCloudPush.java:253)\r\nE/AndroidRuntime(14459): \tat com.appcelerator.aps.GCMReceiver.onReceive(GCMReceiver.java:30)\r\nE/AndroidRuntime(14459): \tat android.app.ActivityThread.handleReceiver(ActivityThread.java:2419)\r\nE/AndroidRuntime(14459): \t... 10 more\r\nW/ActivityManager( 619): Force finishing activity sh.dogfi.intrepid/org.appcelerator.titanium.TiActivity\r\n{noformat}\r\n\r\n\r\n\r\n\r\n\r\nThe payload is not null, just a few lines above this error I log out the data to the console, and it's all there.\r\n\r\nUsing Cloudpush v3.3.8 with 4.1.0.GA on a Nexus 4 running 4.4.2. \r\n\r\nRadamantis heeeeelp!!!! :O", "updateAuthor": { "name": "jyounus", "key": "jyounus", "displayName": "Junaid Younus", "active": true, "timeZone": "Europe/London" }, "created": "2015-08-07T15:05:11.000+0000", "updated": "2015-08-07T15:07:50.000+0000" }, { "id": "359357", "author": { "name": "rtlechuga", "key": "rtlechuga", "displayName": "Radamantis Torres-Lechuga", "active": false, "timeZone": "Asia/Dubai" }, "body": "[~jyounus] hey, can you reproduce this with the same test case in the ticket? is this also reproducible with some other devices?\r\n", "updateAuthor": { "name": "rtlechuga", "key": "rtlechuga", "displayName": "Radamantis Torres-Lechuga", "active": false, "timeZone": "Asia/Dubai" }, "created": "2015-08-07T21:32:48.000+0000", "updated": "2015-08-07T21:32:56.000+0000" }, { "id": "359559", "author": { "name": "jyounus", "key": "jyounus", "displayName": "Junaid Younus", "active": true, "timeZone": "Europe/London" }, "body": "Hey Radamantis,\r\n\r\nWe managed to solve the issue. \r\nOkay, so the above test case (and our own app project) works fine if we use the ACS dashboard for sending test push notifications. No problems there, no crash and the app receives the notification just fine. However, we are using PubNub and their push notification service, which does NOT work with Ti.Cloud and the Ti.CloudPush module. We didn't know that, don't think that's very obvious at all for people that are new to push notifications (like me D: ). We kept sending push notifications via PubNub but the app just wouldn't receive them. Ti.Cloud and Ti.CloudPush modules seem to be specifically for ACS.\r\n\r\nWe ended up using this module here: https://github.com/CaffeinaLab/GCM\r\n\r\nAnyone else that's having the same issue and isn't using ACS for push notifications, use the above module. That should hopefully do the trick for you.", "updateAuthor": { "name": "jyounus", "key": "jyounus", "displayName": "Junaid Younus", "active": true, "timeZone": "Europe/London" }, "created": "2015-08-11T15:44:33.000+0000", "updated": "2015-08-11T15:44:33.000+0000" }, { "id": "359565", "author": { "name": "shawnlan", "key": "shawnlan", "displayName": "Shawn Lan", "active": true, "timeZone": "America/Los_Angeles" }, "body": "Well, I'm using ACS and still have such issue. It happens sometimes when uninstalling and reinstalling the app (no push notification is sent at the time).", "updateAuthor": { "name": "shawnlan", "key": "shawnlan", "displayName": "Shawn Lan", "active": true, "timeZone": "America/Los_Angeles" }, "created": "2015-08-11T16:49:56.000+0000", "updated": "2015-08-11T16:49:56.000+0000" }, { "id": "360605", "author": { "name": "shawnlan", "key": "shawnlan", "displayName": "Shawn Lan", "active": true, "timeZone": "America/Los_Angeles" }, "body": "Hey, in order to re-produce, you have to subscribe to channel in the beginning. (Cloud.PushNotifications.subscribeToken)\r\n\r\nIf in your app you don't subscribe to channel at all, you won't see the error.\r\n\r\nYou might still need to uninstall and reinstall several times to re-produce.", "updateAuthor": { "name": "shawnlan", "key": "shawnlan", "displayName": "Shawn Lan", "active": true, "timeZone": "America/Los_Angeles" }, "created": "2015-08-21T01:09:24.000+0000", "updated": "2015-08-21T01:09:24.000+0000" }, { "id": "372515", "author": { "name": "sdarda", "key": "sdarda", "displayName": "Sharif AbuDarda", "active": false, "timeZone": "Asia/Dhaka" }, "body": "We have re-tested this issue with our updated environment SDK 5.1.1.GA With Cloudpush v3.4.0. We can not reproduce this issue. Thanks.", "updateAuthor": { "name": "mrahman", "key": "mrahman", "displayName": "Mostafizur Rahman", "active": true, "timeZone": "Asia/Dhaka" }, "created": "2015-12-09T09:35:57.000+0000", "updated": "2015-12-14T14:01:34.000+0000" }, { "id": "378253", "author": { "name": "annakozy@direcciona.me", "key": "annakozy@direcciona.me", "displayName": "Ganna Kozynenko", "active": true, "timeZone": "America/Los_Angeles" }, "body": "I have it now. \r\n\r\nMy environment is 5.1.2.GA and my cloudpush is 3.4.1\r\n\r\nI have both Ti.Parse and Cloudpush. When I send push notifications from Parse, app crashes with this message, because in case of Parse messages, payload IS null. \r\n\r\nvar CloudPush = require('ti.cloudpush');\r\n\t CloudPush.debug = true;\r\n CloudPush.enabled = true;\r\n CloudPush.showTrayNotificationsWhenFocused = true;\r\n CloudPush.focusAppOnPush = false;\r\n\t\tCloudPush.retrieveDeviceToken({\r\n\t\t success: function deviceTokenSuccess(e) {\r\n\t\t Ti.API.info('Cloudpush Device Token: ' + e.deviceToken);\r\n\t\t },\r\n\t\t error: function deviceTokenError(e) {\r\n\t\t alert('Failed to register for push! ' + e.error);\r\n\t\t }\r\n\t\t});\r\n\t\t// These events monitor incoming push notifications\r\n\t\tCloudPush.addEventListener('callback', pushNotificationCallback);\r\n\t\t\r\n\t\tCloudPush.addEventListener('trayClickLaunchedApp', function (evt) {\r\n\t\t Ti.API.info('Tray Click Launched App (app was not running)');\r\n\t\t});\r\n\t\tCloudPush.addEventListener('trayClickFocusedApp', function (evt) {\r\n\t\t Ti.API.info('Tray Click Focused App (app was already running)');\r\n\t\t});", "updateAuthor": { "name": "annakozy@direcciona.me", "key": "annakozy@direcciona.me", "displayName": "Ganna Kozynenko", "active": true, "timeZone": "America/Los_Angeles" }, "created": "2016-03-01T09:21:00.000+0000", "updated": "2016-03-01T09:21:54.000+0000" }, { "id": "378344", "author": { "name": "shawnlan", "key": "shawnlan", "displayName": "Shawn Lan", "active": true, "timeZone": "America/Los_Angeles" }, "body": "Do you always have this problem? Or only sometimes after a fresh install?", "updateAuthor": { "name": "shawnlan", "key": "shawnlan", "displayName": "Shawn Lan", "active": true, "timeZone": "America/Los_Angeles" }, "created": "2016-03-01T18:11:06.000+0000", "updated": "2016-03-01T18:11:06.000+0000" }, { "id": "378353", "author": { "name": "annakozy@direcciona.me", "key": "annakozy@direcciona.me", "displayName": "Ganna Kozynenko", "active": true, "timeZone": "America/Los_Angeles" }, "body": "You are right, I noticed it after fresh install. \r\n\r\nBut I cannot test anymore, because I already switched to another gcm module (nl.vanvianen.android.gcm)\r\n\r\nThe problem I was having yesterday is that the app would not wake up from background on messages with or without payload, so probably it was not crashing. Still, it was not waking up, this is why I did a fresh install today. \r\n\r\nI was receiving Push with Ti.Parse and CloudPush, and Ti.Parse without cloudpush does wake it up just fine. \r\n\r\nMy process was like this: \r\n\r\n1. Install Ti.Parse (with a modification to get token). App wakes up. \r\n2. I realised that Ti.Parse does not process all messages, so I need another module\r\n3. Installed CloudPush. \r\n4. Messages were being processed in foreground, but not when the app is backgrounded. Went to bed. \r\n5. Morning I did a clean install and tried again. Cloudpush crashed. \r\n6. Uninstall Cloudpush, leaving only Parse - back to step 1, everything works fine. \r\n7. .... here I accidentally updated Appcelerator and had to reinstall node.js and Studio, because of another bug, so after I was done with fixing environment, in TiSlack they told me that this conversation already took place 2 weeks ago and most people use nl.vanvianen.android.gcm instead of CloudPush\r\n8. Now I have that other module and everything works fine, so I donĀ“t want to spoil it. ", "updateAuthor": { "name": "annakozy@direcciona.me", "key": "annakozy@direcciona.me", "displayName": "Ganna Kozynenko", "active": true, "timeZone": "America/Los_Angeles" }, "created": "2016-03-01T18:28:16.000+0000", "updated": "2016-03-01T18:34:24.000+0000" }, { "id": "378358", "author": { "name": "shawnlan", "key": "shawnlan", "displayName": "Shawn Lan", "active": true, "timeZone": "America/Los_Angeles" }, "body": "Thanks for the info.\r\n\r\nBy the way, Parse is shutting down.", "updateAuthor": { "name": "shawnlan", "key": "shawnlan", "displayName": "Shawn Lan", "active": true, "timeZone": "America/Los_Angeles" }, "created": "2016-03-01T18:38:27.000+0000", "updated": "2016-03-01T18:38:27.000+0000" } ], "maxResults": 20, "total": 20, "startAt": 0 } } }