I'm trying to develop a Tasker routine (ultimately to export as app) that will access the "app drawer" of an e-ink launcher directly. Send Intent does not work and running a shell command also is not working. I guess I don't understand what I have read about finding intents in AndroidManifest.
When I've started the launcher and have navigated to the app drawer section I've done this via adb:
dumpsys window windows | grep -E 'mCurrentFocus'
The result is:
com.harasoft.relaunch/com.harasoft.relaunch.AllApplications
If I have understood correctly this should be package name/activity.
The AndroidManifest.xml (https://github.com/yiselieren/ReLaunch/blob/master/AndroidManifest.xml) for the app shows AllApplications as an intent (and it has an intent filter specified) so this looks good.
A Send Intent from Tasker using only the package name and the activity gives an exit error. Via adb shell I tried this:
# am start -n com.harasoft.relaunch/com.harasoft.relaunch.AllApplications
This does not give the desired result but instead spits out an error:
Starting: Intent { cmp=com.harasoft.relaunch/.AllApplications }
java.lang.SecurityException: Permission Denial: starting Intent {
flg=0x10000000 cmp=com.harasoft.relaunch/.AllApplications } from null
(pid=-1, uid=-1) requires null
And that's where I'm stuck. I've read about this error, but not understood all of it. It seems like the intent either has to be explicitly exported in the Manifest or accompanied by an intent-filter. There is an intent-filter in the Manifest (android.intent.action.LAUNCHER), unless I have misunderstood that. Intents listed in the Manifest that begin with "." do seem to function while those without the "." do not. I have read that this should make no difference.
Can someone enlighten me?
User contributions licensed under CC BY-SA 3.0