开发者

Android: My service doesn't want to start

I have: <service android:name=".kernel.background.Process"></service> Main package is: package="call.com"

I want to create a process which will start sync method for my database, for now I found some example, but..

this is my background process:

package call.com.kernel.background;

import java.util.Timer;
import java.util.TimerTask;

import android.app.Service;
import android.content.Intent;
import android.os.IBinder;

public class Process extends Service {

private final Timer timer   = new Timer();

@Override
public void onCreate() {
    
    super.onCreate();
    
    startservice();
    
}

@Override
public IBinder onBind(Intent intent开发者_如何学Go) {
    // TODO Auto-generated method stub
    return null;
}

private void startservice() {
    
    timer.scheduleAtFixedRate(new TimerTask() {
        
        @Override
        public void run() {
            
            System.out.println("time:");
            System.out.println("is:");
            System.out.println("up:");
            
        }
        
    }, 0, 1000);

    ;
}

private void stopservice() {
    
    if(timer != null) {
        timer.cancel();
    }
    
}

}


Where are you calling startService(...) from? An Activity somewhere in your code would need to be starting your service. Have you read the Android Service Docs yet? They give a lot of insight as to how to properly build and start a service.

If your breakpoint is in the run() method of your TimerTask and it isn't being hit, then it definitely sounds like the service has never been called:

So from your Activity:

Intent i = new Intent(this, Process.class);
startService(i);


I don't think what you are starting is a Service. You are starting a timer. You could use a separate Thread to do your update operations. Here is a link to a good article called Painless Threading. Please see the referenced links to learn more about each.

0

上一篇:

下一篇:

精彩评论

暂无评论...
验证码 换一张
取 消

最新问答

问答排行榜