Using Parse.com in Android Intent Service -


i want upload data database on parse.com background service on android. have used parse in activities before , used write following lines in oncreate() method:

parse.enablelocaldatastore(this);     parse.initialize(this, "kw0fn094jfetdcmryxngsyo3wqkhxaem2rbcldeq", "aklrbwft0zhwqw1huwa0avuk9iqb7z1qkvhxsslj"); 

when try add same service , call service android app, logcat shows error:

07-07 19:43:27.393    1053-1578/com.example.shikhar.trackmydevice e/androidruntime﹕ fatal exception: intentservice[uploadservice] process: com.example.shikhar.trackmydevice, pid: 1053 java.lang.illegalstateexception: `parse#enablelocaldatastore(context)` must invoked before `parse#initialize(context)`         @ com.parse.parse.enablelocaldatastore(parse.java:65)         @ com.example.shikhar.trackmydevice.uploadservice.onhandleintent(uploadservice.java:81)         @ android.app.intentservice$servicehandler.handlemessage(intentservice.java:65)         @ android.os.handler.dispatchmessage(handler.java:102)         @ android.os.looper.loop(looper.java:135)         @ android.os.handlerthread.run(handlerthread.java:61) 

i have declared service in androidmanifest.xml here's snippet:

    <service android:enabled="true" android:name="com.example.shikhar.appname.uploadservice"/>  </application> 

this code of upload service:

package com.example.shikhar.appname;  import android.app.intentservice; import android.content.intent;  import android.util.log;  import com.parse.findcallback; import com.parse.getcallback; import com.parse.parse; import com.parse.parseobject; import com.parse.parsequery;   public class uploadservice extends intentservice {  protected static final string tag = "uploadservice: ";    public uploadservice() {     super("uploadservice"); }  /**  * intentservice calls method default worker thread  * intent started service. when method returns, intentservice  * stops service, appropriate.  */  @override protected void onhandleintent(intent intent) {      parse.enablelocaldatastore(this);     parse.initialize(this, "kw0fn094jfetdcmryxngsyo3wqkhxaem2rbcldeq", "aklrbwft0zhwqw1huwa0avuk9iqb7z1qkvhxsslj");    }  @override public void ondestroy() {     } } 

i'm starting , stopping service single imagebutton in main activity. code in oncreate() of activity:

btnservice.setonclicklistener(new view.onclicklistener() {         @override         public void onclick(view view) {             intent intent = new intent(thisactivity, uploadservice.class);              if(serviceisrunning(uploadservice.class))             {                 stopservice(intent);             }             else             {                 startservice(intent);             }              if(serviceisrunning(uploadservice.class))             {                 btnservice.setimageresource(r.mipmap.ic_service_stop);             }             else             {                 btnservice.setimageresource(r.mipmap.ic_service_start);              }           }     }); 

the above code uses following method defined outside oncreate inside class of myactivity:

 protected boolean serviceisrunning(class<?> serviceclass) {     activitymanager manager = (activitymanager) getsystemservice(context.activity_service);     (activitymanager.runningserviceinfo service : manager.getrunningservices(integer.max_value)) {         if (serviceclass.getname().equals(service.service.getclassname())) {             return true;         }     }     return false; } 

please suggest me. should do?

you can try initialazing parse in custom application, don't have initialize in every activity or service:

public class myaplication extends application {      @override     public void oncreate() {         super.oncreate();         parse.enablelocaldatastore(this);         parse.initialize(this, "xxxx", "xxxx");     } } 

then in androidmanifest.xml add name:

<application     android:name=".myaplication"     android:icon="@mipmap/ic_launcher"     android:label="@string/app_name"     android:theme="@style/apptheme" > 

Comments

Popular posts from this blog

How to provide Authorization & Authentication using Asp.net, C#? -

toolbar - How to add link to user registration inside toobar in admin joomla 3 custom component -

How to use Authorization & Authentication in Asp.net, C#? -