I am trying to start a service from ADB via the following command -
adb shell am startservice -n com.ixigo/.mypnrlib.service.SMSParsingService -a com.ixigo.mypnrlib.ACTION_PARSE_EXISTING_MESSAGES
I get the following response
Starting service: Intent { act=com.ixigo.mypnrlib.ACTION_PARSE_EXISTING_MESSAGES cmp=com.ixigo/.mypnrlib.service.SMSParsingService } Error: Requires permission not exported from uid 10693
Now when i specify the user via --user argument and the application is up and running via the same userID:
adb shell am startservice --user 10693 -n com.ixigo/.mypnrlib.service.SMSParsingService -a com.ixigo.mypnrlib.ACTION_PARSE_EXISTING_MESSAGES
I get the following message:
Starting service: Intent { act=com.ixigo.mypnrlib.ACTION_PARSE_EXISTING_MESSAGES cmp=com.ixigo/.mypnrlib.service.SMSParsingService } Error: Not found; no service started.
I do not want to expose the service Is there any other way we can call it from ADB ?
As per @SamT01 's comment. There is no way we can call a non exported component from non-root ADB.