从另一个服务中的intent启动服务会出现运行时错误

时间:2012-04-29 03:36:37

标签: java android

尝试使用Android 2.3.3项目中其他服务的意图启动服务时出现错误。错误是:无法使用Intent启动服务{act =(class name)cmp =(class name)/。(android name)}:java.lang.IllegalArgumentException:provider == null

方法调用:

private void startLocationService(){
    intent = new Intent("com.example.Android.LocationService");
    intent.setClass(MainService.this.getApplicationContext(), LocationService.class);
    startService(intent);
}

清单:

<service android:name=".LocationService">
        <intent-filter>
            <action android:name="com.example.Android.LocationService"/>
        </intent-filter>
    </service>
</application>

2 个答案:

答案 0 :(得分:0)

问题是LocationService.class中的提供程序吗?

答案 1 :(得分:0)

您可以在LocationService.onCreate()中设置断点以进行调试,看看它是否能够进行调试。也许这个问题不是你在这里给出的。

PS。

如果您只需要使用显式Intent(应用程序内部使用),那么Java代码和Manifest的action部分都是多余的。