出色的服务示例让我感到困惑

问题描述

| 我正在阅读\“ Pro Android 2 \”,其中包含一个出色的Service示例,如下所示:
    import android.app.Service;
    import android.content.Intent;
    import android.os.IBinder;
    import android.util.Log;

    public class TestService1 extends Service {
        private static final String TAG = \"TestService1\";

        @Override
        public void onCreate() {
            Log.d(TAG,\"onCreate\");
            super.onCreate();
        }

        @Override
        public IBinder onBind(Intent intent) {
            Log.d(TAG,\"onBind\");
            return null;
        }
     }
我还将服务定义条目添加为以下项的子项:
    <application> in my AndroidManifest.xml as follows:

    <service android:name=\"TestService1\"></service>
然后,书中说:“下一个明显的问题是如何调用服务?” 而这正是我想知道的!!!我已经搜寻过这本书,但看不到如何启动该服务。该书实际上似乎表明该服务是在启动时调用的。也许我只是误解了这一部分。 这只是实验性的,我只想查看服务运行情况,并查看logcat中的Log消息。这本书说:\“系统在首次创建服务时但在调用onStart()之前调用onCreate()。该过程类似于创建活动的过程,为服务提供了一种执行一次性初始化的方法在启动时。” 好的,但是我不确定启动服务的方式,除非在我的主要活动的onCreate()中执行以下操作:
    Intent TestService1 = new Intent(this,com.mydomain.myproject.TestService1.class);
    startActivity(TestService1);
但是,当我这样做时,我得到了错误消息:“应用程序...已意外停止。” 我认为这个问题有一个简单的解决方案,但是我太简单了,看不到它:)     

解决方法

        你很亲近服务不是一项活动,因此您无法使用
startActivity
来启动它。而是使用类似命名的“ 4”方法。     

相关问答

Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其...
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。...
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbc...