Q:

Why does a SyncMe shortcut run only "once"?

I'm trying to run SyncMe only when computer is pingable. Since the app currently is not able to work this way, I'm using Tasker and its AutoShortcut plugin. SyncMe exposes an intent/shortcut which allows to run all sync jobs for a given computer. Tasker was then configured to run such shortcut under certain conditions and every two minutes.
The problem is that the shortcut will only run "once", any subsequent calls to the shortcut will not run the sync. This happens not only from within Tasker but also when adding the shortcut to home screen. When tapping the icon for the first time, UI shows up and the sync runs correctly. But if I press home button and tap it again, it will only return focus to the UI without any action being taken.
The only way I could figure out to make the shortcut run again was somehow "closing" the app, for example going to home screen with the back button or removing SyncMe from recent apps, none of which seems possible from within Tasker, I think it requires rooting.

A:

Home screen shortcut
We believe it's an Android bug. In fact, as I could confirm on a custom build, adding FLAG_ACTIVITY_SINGLE_TOP fixed the problem for home screen shortcuts, despite its documentation indicating pretty the opposite, as below. We find those docs very poorly written, at least. According to the developer, this fix is going to work as long as main app activity stays on top (that is, editing a sync job then pressing home button for tapping icon again is not going to work).

If set, the activity will not be launched if it is already running at the top of the history stack. 

Tasker and AutoShortcut
For some reason, the above fix does not work in AutoShortcut. I don't know how different the intent sent by this plugin is from that of the home screen shortcuts. Either way, I have reported the problem to the developer. Regardless, I also just have set up a direct intent configuration in Tasker, instead of using AutoShortcut, as follows:

Action: com.bv.wifisync.run
Extra: itemId:<id>
Package: com.bv.wifisync
Class: com.bv.wifisync.Hosts
Target: Activity

