Running activity from remote service
iam trying to run an activity from diffrent package from my remote service: this is how i implement the service.java
public class CurrencyService extends Service
{
public class CurrencyServiceImpl extends ICurrencyService.Stub
{
int CALL_PUSH_SERVICE_ACTIVITY=10;
@Override
public void callSomeActivity(int activityId) throws RemoteException
{
Intent pushActivity=new Intent("com.pushservice.PushActivity");
pushActivity.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
startActivity(pushActivity);
}
.....
}
ive also added a line in the manifest of the service:
the service works fine, but i cant run the acti开发者_运维百科vity -> PushActivity which is in diffrent package of diffrent application, this is the error:
Activity not found Exception: No Activity found to handle Intent {act=com.pushservice.PushServiceActivity flq=0x10 ...
thanks.
You shouldn't call start activity from your service. From Android developers best practice:
Instead of spawning Activity UIs directly from the background, you should instead use the NotificationManager to set Notifications. These will appear in the status bar, and the user can then click on them at his leisure, to see what your application has to show him.
You are attempting to open an Activity
that has an intent-filter
with an action
of "com.pushservice.PushActivity"
. You do not have an Activity
that has an intent-filter
with an action
of "com.pushservice.PushActivity"
.
The best answer is to not display an activity from a service, since users will be very irritated with you if you interrupt them when they are using the device.
精彩评论