push notification - Android : Error com.parse.ParseException: at least one ID field (installationId,deviceToken) must be specified in this operation -


i using parse push-notification in our application problem in registration of device, error shown below. there problem ,when send push notification device more 1 notification received device. although have upgraded parse library parse 1.4.1.please me,thanks in advance.

error shown when app first time installed:

04-14 14:00:40.004: e/log(26045): socket event: onconnect  04-14 14:00:41.874: e/parsecommandcache(26045): failed run command. 04-14 14:00:41.874: e/parsecommandcache(26045): com.parse.parseexception: @ least 1 id field (installationid,devicetoken) must specified in operation 04-14 14:00:41.874: e/parsecommandcache(26045):     @ com.parse.parsecommand$2.then(parsecommand.java:348) 04-14 14:00:41.874: e/parsecommandcache(26045):     @ com.parse.task$10.run(task.java:452) 04-14 14:00:41.874: e/parsecommandcache(26045):     @ com.parse.task$1.execute(task.java:68) 04-14 14:00:41.874: e/parsecommandcache(26045):     @ com.parse.task.completeimmediately(task.java:448) 04-14 14:00:41.874: e/parsecommandcache(26045):     @ com.parse.task.continuewith(task.java:322) 04-14 14:00:41.874: e/parsecommandcache(26045):     @ com.parse.task.continuewith(task.java:333) 04-14 14:00:41.874: e/parsecommandcache(26045):     @ com.parse.task$8.then(task.java:385) 04-14 14:00:41.874: e/parsecommandcache(26045):     @ com.parse.task$8.then(task.java:377) 04-14 14:00:41.874: e/parsecommandcache(26045):     @ com.parse.task$11.run(task.java:485) 04-14 14:00:41.874: e/parsecommandcache(26045):     @ com.parse.task$1.execute(task.java:68) 04-14 14:00:41.874: e/parsecommandcache(26045):     @ com.parse.task.completeaftertask(task.java:481) 04-14 14:00:41.874: e/parsecommandcache(26045):     @ com.parse.task.access$300(task.java:18) 04-14 14:00:41.874: e/parsecommandcache(26045):     @ com.parse.task$7.then(task.java:350) 04-14 14:00:41.874: e/parsecommandcache(26045):     @ com.parse.task$7.then(task.java:347) 04-14 14:00:41.874: e/parsecommandcache(26045):     @ com.parse.task.runcontinuations(task.java:514) 04-14 14:00:41.874: e/parsecommandcache(26045):     @ com.parse.task.access$700(task.java:18) 04-14 14:00:41.874: e/parsecommandcache(26045):     @ com.parse.task$taskcompletionsource.trysetresult(task.java:569) 04-14 14:00:41.874: e/parsecommandcache(26045):     @ com.parse.task$taskcompletionsource.setresult(task.java:603) 04-14 14:00:41.874: e/parsecommandcache(26045):     @ com.parse.task$11$1.then(task.java:497) 04-14 14:00:41.874: e/parsecommandcache(26045):     @ com.parse.task$11$1.then(task.java:489) 04-14 14:00:41.874: e/parsecommandcache(26045):     @ com.parse.task$10.run(task.java:452) 04-14 14:00:41.874: e/parsecommandcache(26045):     @ com.parse.task$1.execute(task.java:68) 04-14 14:00:41.874: e/parsecommandcache(26045):     @ com.parse.task.completeimmediately(task.java:448) 04-14 14:00:41.874: e/parsecommandcache(26045):     @ com.parse.task.access$200(task.java:18) 04-14 14:00:41.874: e/parsecommandcache(26045):     @ com.parse.task$6.then(task.java:315) 04-14 14:00:41.874: e/parsecommandcache(26045):     @ com.parse.task$6.then(task.java:312) 04-14 14:00:41.874: e/parsecommandcache(26045):     @ com.parse.task.runcontinuations(task.java:514) 04-14 14:00:41.874: e/parsecommandcache(26045):     @ com.parse.task.access$700(task.java:18) 04-14 14:00:41.874: e/parsecommandcache(26045):     @ com.parse.task$taskcompletionsource.trysetresult(task.java:569) 04-14 14:00:41.874: e/parsecommandcache(26045):     @ com.parse.task$taskcompletionsource.setresult(task.java:603) 04-14 14:00:41.874: e/parsecommandcache(26045):     @ com.parse.task$11$1.then(task.java:497) 04-14 14:00:41.874: e/parsecommandcache(26045):     @ com.parse.task$11$1.then(task.java:489) 04-14 14:00:41.874: e/parsecommandcache(26045):     @ com.parse.task$10.run(task.java:452) 04-14 14:00:41.874: e/parsecommandcache(26045):     @ com.parse.task$1.execute(task.java:68) 04-14 14:00:41.874: e/parsecommandcache(26045):     @ com.parse.task.completeimmediately(task.java:448) 04-14 14:00:41.874: e/parsecommandcache(26045):     @ com.parse.task.continuewith(task.java:322) 04-14 14:00:41.874: e/parsecommandcache(26045):     @ com.parse.task.continuewith(task.java:333) 04-14 14:00:41.874: e/parsecommandcache(26045):     @ com.parse.task$11.run(task.java:489) 04-14 14:00:41.874: e/parsecommandcache(26045):     @ com.parse.task$1.execute(task.java:68) 04-14 14:00:41.874: e/parsecommandcache(26045):     @ com.parse.task.completeaftertask(task.java:481) 04-14 14:00:41.874: e/parsecommandcache(26045):     @ com.parse.task.access$300(task.java:18) 04-14 14:00:41.874: e/parsecommandcache(26045):     @ com.parse.task$7.then(task.java:350) 04-14 14:00:41.874: e/parsecommandcache(26045):     @ com.parse.task$7.then(task.java:347) 04-14 14:00:41.874: e/parsecommandcache(26045):     @ com.parse.task.runcontinuations(task.java:514) 04-14 14:00:41.874: e/parsecommandcache(26045):     @ com.parse.task.access$700(task.java:18) 04-14 14:00:41.874: e/parsecommandcache(26045):     @ com.parse.task$taskcompletionsource.trysetresult(task.java:569) 04-14 14:00:41.874: e/parsecommandcache(26045):     @ com.parse.task$taskcompletionsource.setresult(task.java:603) 04-14 14:00:41.874: e/parsecommandcache(26045):     @ com.parse.task$3.run(task.java:228) 04-14 14:00:41.874: e/parsecommandcache(26045):     @ java.util.concurrent.executors$runnableadapter.call(executors.java:422) 04-14 14:00:41.874: e/parsecommandcache(26045):     @ java.util.concurrent.futuretask.run(futuretask.java:237) 04-14 14:00:41.874: e/parsecommandcache(26045):     @ java.util.concurrent.scheduledthreadpoolexecutor$scheduledfuturetask.access$201(scheduledthreadpoolexecutor.java:152) 04-14 14:00:41.874: e/parsecommandcache(26045):     @ java.util.concurrent.scheduledthreadpoolexecutor$scheduledfuturetask.run(scheduledthreadpoolexecutor.java:265) 04-14 14:00:41.874: e/parsecommandcache(26045):     @ java.util.concurrent.threadpoolexecutor.runworker(threadpoolexecutor.java:1112) 04-14 14:00:41.874: e/parsecommandcache(26045):     @ java.util.concurrent.threadpoolexecutor$worker.run(threadpoolexecutor.java:587) 04-14 14:00:41.874: e/parsecommandcache(26045):     @ java.lang.thread.run(thread.java:841) 

updated code

    parse.initialize(this, constant.parse_app_id, constant.parse_client_key);     parseacl defaultacl = new parseacl();     defaultacl.setpublicreadaccess(true);     parseacl.setdefaultacl(defaultacl, true);     pushservice.setdefaultpushcallback(this, mainactivity.class);     parseinstallation.getcurrentinstallation().getinstallationid();     parseinstallation.getcurrentinstallation().saveinbackground(); 

this code used registration on parse.com

   pushservice.subscribe(this, "name",detail.class); 

this code used registration of chanels

we had similar issue:

we had move the: pushservice.setdefaultpushcallback(this, mainactivity.class);

into mainactivity#oncreate, tried calling in our application class cashed.

parse unhelpful on matter, 1 of them , provide insight.


Comments

Popular posts from this blog

windows - Single EXE to Install Python Standalone Executable for Easy Distribution -

c# - Access objects in UserControl from MainWindow in WPF -

javascript - How to name a jQuery function to make a browser's back button work? -