2013-02-16 52 views
0

在android中如何确保我在应用程序中使用的service只会通过应用程序内的activity进行调用。如何确保服务从特定活动中被调用

(换句话说,我想限制的话,被只有在一定的活动&该应用中发挥甚至没有其他活动服务)

我试着学习Intent-filters,但有一点困惑。

有人可以请示例,如果可能的话?

谢谢

回答

0

使用情境。 startService(意向服务)从您的活动开始服务。 尽管它的名称不只启动服务。如果服务已经运行,它只是调用它。

从服务角度来看,服务会调用onStartCommand(...)方法。

只有同一个应用程序中的活动可以这种方式调用/启动服务。

0

如果您在您的AndroidManifest.xml的<service .. />元素中设置exported="false",则该服务不能由您自己的应用程序之外的活动调用。

我知道没有办法限制访问应用程序内的任何特定活动,但这似乎不是一个紧迫的问题。据说你可以信任你自己的代码?

+0

其实我关心的是[这个](http://stackoverflow.com/questions/14903374/android-activity-also-calling-other-service-of-the-application-which-is-not-ca) – reiley 2013-02-16 13:10:26