Feedback/Requests

263 views
Skip to first unread message

vertigo...@gmail.com

unread,
Oct 27, 2018, 9:01:14 PM10/27/18
to Automate
I've been playing around with this app as well as a few others for a few days now, and I have quite a bit of feedback and requests and a few questions based on my use of it so far. I apologize in advance for the length, but I'm hoping the developer finds it useful, especially since they were asking people for feedback on Reddit. I'm sure I'm wrong on some of these points, so please (anybody) correct me on any invalid points.
  1. Add a dark theme.
  2. Add on/off switches on each flow on main screen. In addition to a switch for this, a 3-dot menu button could be added, so clicking the flow's name would open the flowchart screen, and clicking the menu button would provide the options to edit the properties, share and delete the flow, and open the logging menu, eliminating the need for the screen with the start/stop buttons, which is an unnecessary extra step.
  3. Remember the zoom level, and open new and existing flows at the same level.
  4. Open flows with the beginning at the top of the screen instead of in the middle, as well as allowing the screen to be scrolled to move it all the way to the top (and beyond). Working in this app feels awkward anc crowded, since it defaults to such a high zoom level and doesn't give me much freedom in panning the screen.
  5. I'm mainly comparing this to Automagic, since the two are so similar, and one difference I've found is that it has an invert option in the orientation trigger. Another is that it has more flow execution options (parallel execution of multiple instances, skip execution when an instance is already executing, wait until the currently executing instance has finished, and stop the currently executing instance and then execute the newer instance). Automate only has the first two from what I can tell. Another feature it has that Automate lacks is the emergency stop in case a user-defined number of actions per minute.
  6. The orientation sensor battery usage warning doesn't make it clear whether it only applies when the condition is met or if it's a constant drain all the time, which would make more sense (otherwise why bother with a warning), but the accelerometer is always working, to change the screen rotation, so it doesn't seem like using it as a condition would cause more drain.
  7. Is it possible to detect if a plug/cable is inserted even if there's no power applied (i.e. trigger an event when a power cord is plugged into the phone, whether or not it's plugged into the wall)?
  8. In addition to undo, it should have a redo function.
  9. The app list needs a quick-scroll feature (where you can drag the bar to scroll very fast through the list). A search function would be nice as well.
  10. Removing connections can be inconsistent and a bit of a pain. I much prefer Automagic's method for this, as well as editing a connection (e.g. switching true to false), though Automate's way of connecting them is far superior IMO.
  11. Low storage space can't be used as a trigger.
  12. Maybe it's not possible, but ideally the free space % for the low storage space should be configurable. I typically have less than 10% free (yet need to get to a very low amount before getting a system warning), so this wouldn't even work for me. Also, I assume it's related to internal storage, but there should be an option for external storage as well.
  13. There doesn't appear to be any way to set multiple triggers (e.g. run the flow at a certain time, but also if something happens). I thought maybe this could be done by forking from the flow beginning block, so if either of the conditions it branched off to were met it would activate, and then they could be recombined after those conditions, but that's not possible. So unless I'm missing something, this can't be done, and it should be possible to do multiple triggers as both an AND and an OR.
  14. When scrolling the blocks list, the category name for the currently visible blocks should always stay visible at the top, to make it easier to collapse it without having to scroll back up to it.
  15. It should be possible to duplicate flows. It would also be nice to be able to share multiple flows at once (this goes hand-in-hand with #2).
  16. Can't move multiple blocks at once.
  17. Should be able to ignore warning when a variable isn't found, instead of having to abandon the expression check and go create the variable assign block before being able to proceed.
  18. Entering expressions isn't intuitive. It appears you do "= {variable_name} == {value}" (or maybe just = instead of ==, since it looks like it automatically changed that for me) but there's no guide to it, having it start with an equal sign makes no sense, and it doesn't have any sort of help with inserting operators or variable names. Automagic is much easier for this, not only showing you examples, but having buttons to insert variables, functions, and operators, etc. It should also allow you to select from existing variables when setting a variable.
  19. Variable options also appears to be extremely limited, with the only clear option being to assign a number or use a variable from another flow, but no options such as random number, date/time, or any of the numerous other ones that Automagic has.
  20. When configuring a check or set volume block, it should allow you to select multiple volume types and automatically enter default variable names based on the types (e.g. global_volume_music), like Automagic. What takes one block in Automagic takes several in Automate, and yet even just one-to-one Automagic is faster due to having the names prefilled.
  21. Some of the block names aren't intuitive. An example is "Notification posted?" which sounds like it just checks to see if a notification has been posted, and based on the name doesn't at all sound like it's the one to use for when a notification is removed. There are several others as well.
  22. Should be able to create groups to organize flows and enable/disable entire groups.
  23. The log is nowhere near detailed enough to be useful. It should not just say the name of the block, but its output (true, false, variable value, etc). There should also be a confirmation box when clearing the log.
  24. Flows should stay running until disabled, intead of stopping when they're edited or after they've run. I don't even understand how this is supposed to work since flows stop running after executing once. I must be missing something, in which case it's another example of how much less intuitive this app is compared to Automagic. In addition, it would be nice to have an option to make changes take effect immediately, instead of only after exiting the flow (and restarting it).
  25. Should be able to change a block to a different type instead of having to remove it, add a new one, and remake the connections. Similarly, should be able to toggle a block within the same type, e.g. change "App start" to "App kill" while keeping the app and all other info the same.
  26. Delay needs millisecond accuracy. It should also allow changing the larger parts without having to delete the whole thing (e.g. change hours without having to backspace and erase seconds and minutes first).
  27. Add the ability to edit categories and what blocks are in what categories, including being able to have them listed in more than one.
  28. Pressing back while on the main screen appears to keep going back through this history of things done in the app instead of exiting it.
  29. A block should be able to be temporarily disabled without having to go through the effort of disconnecting its input(s) and output(s) and reconnecting them between the blocks on either side of it. It would be much quicker and easier to just disable it so it takes no action and just allows the flow to continue. If it has more than one output, when disabling it should ask which output should be used. Similarly, a connection should be able to be temporarily disabled, preventing the flow from going down that path.
  30. Add an option to hide or, preferably, gray out (or both) blocks that require root.
  31. Maybe just a limitation of Android or the device, but if executing two app launches one right after another without a delay in between neither one happens. This sort of happens with Automagic, too, but with that the first app will launch and the second won't, which makes sense, whereas with Automate even the first one won't launch, which makes no sense. Also, I've found that with Automagic, which goes to the thousandths of a second (millisecond) place, it only needs an ~200ms delay in between the two app launch actions to work, whereas with Automate I have to use a full second delay since, per point #26, it doesn't have millisecond accuracy.
  32. I often find myself going back and forth between two or more flows. The ability to view multiple flows simultaneously in split screen, or a button that would switch between recent flows like the recent apps button in Android, would help a lot with this.

vertigo...@gmail.com

unread,
Oct 28, 2018, 1:03:56 AM10/28/18
to Automate
Just ran into another couple issues. I made a flow to automate the movement of files from internal to external storage, and it took a while to figure out why it wasn't working, partly because there were two separate problems. One was that I hadn't granted access to the SD card yet, though I thought I had, but it should ask or give a warning or something if a flow requires access that hasn't been given. The second issue is that it apparently can't create a folder, so if you're trying to move files to a non-existent location, instead of creating it it will just fail.

Henrik "The Developer" Lindqvist

unread,
Oct 28, 2018, 2:42:10 PM10/28/18
to Automate
  1. Already on the to-do list.
  2. An improved flow lost screen is on the to-do list., but it will not include a "switch" since a flow can be started multiple times, so it's state aren't simply on or off.
  3. The minimum zoom level is determined by the flow size, so it may be difficult.
  4. As with #3, is depends on the flow size, and a flow can have multiple Flow beginning blocks, placed anywhere, so keep displaying them all at the top could be difficult.
  5. To allow parallel execution/start enable the option for in the Flow beginning block. The other ways are also supported, but you have to implement then yourself using the appropriate blocks, Fork, Subroutine, etc. For "emergency stop", see Safe mode.
  6. The sensor battery drain is usually so minuscule that this information is irrelevant anyway. I think "during continuous use" is pretty explanatory.
  7. I don't think Android provide such information.
  8. I'll consider it.
  9. A search field is already on the to-do list. Most dialogs could be improved, but Automate has a lot of them.
  10. Agreed, the connect/disconnect is a bit buggy, and can use some improvements, which is already on the to-do list. I'm hesitant to allow rearrangement of the (YES/NO) dots since it would make the flows even more complex.
  11. Doesn't the Storage space block work?
  12. Android decides low-space threshold.
  13. For now, you have to implement it yourself.
  14. Not really how that Android UI widget works, implementing it that way may be difficult.
  15. Use the import menu.
  16. See #1
  17. Somewhat agreed, but it would make variable name verification somewhat useless.
  18. Auto-completion has always been there, but just not for within string interpolations.
  19. It's all there as functions or built-in variables.
  20. The UI for specifying multiple sets of input arguments would be way too complex, that's why Automate relies on the Fork block for that. Just write the variable name YOU want in the output field, i don't see that as as burden.
  21. Most decision block works this way, they're used to check current state or await state change, see Proceed option. Separating such operation for every block would require three times as many block.
  22. See #1
  23. A "visual debugger" is on the to-do list, making such detailed logs redundant, until then use the Log append block. Use the Log > Clear menu on the flow details screen.
  24. Please read.
  25. A replace block which simple keep the connections would be doable, but "converting" arguments/variables would require an insurmountable amount of work, i.e. 330*330 blocks.
  26. Tap the fx icon and write 0.1 for 100 ms.
  27. No.
  28. It shouldn't. How did you launch the main screen, through the notification?
  29. Just bypass the block, with #10 it's probably a non issue.
  30. See #1
  31. The delay is an Android feature/bug. Android 9 seems to be even buggier.
  32. Should be easily done on Android 8, added to the to-do list.
Phew.

Henrik "The Developer" Lindqvist

unread,
Oct 28, 2018, 2:44:04 PM10/28/18
to Automate
The File move block works like the Linux mv command.

vertigo...@gmail.com

unread,
Oct 28, 2018, 5:00:31 PM10/28/18
to Automate
2) This just doesn't make sense to me. All other automation apps you can
turn them on and off, so they only run when you want them to. I thought
Automate was the same, just that it doesn't have the ability to do so from
the main screen, but based on my use so far and your response, it seems it
works differently. I guess I'd have to look more into it, but so far I have
to say I find this aspect of it very confusing compared to other apps. Not
saying it's worse, because I don't understand it enough to say one way or
another, just less intuitive.
5) Safe mode is certainly a means to an end, but it would be much better if
Automate could police itself instead of relying on, and requiring, that.
6) Small, yes, but so minuscule it's irrelevant, I'd have to disagree. With
a 3500mah battery, which is very large, assuming a 30 hour run time from
100% to 0%, the 5mA draw would equate to 4.28% of the total battery usage.
That's not insignificant, and that's only one sensor. Without it, the phone
would last another 1.3 hours with everything else the same. So it's
important to me to know the impact, and, despite being small, I try to
avoid using things like this whenever possible in favor of things that
don't have a constant drain. Also, would it be correct to assume that the
drain would be the same whether the sensor is used in just one or multiple
flows, or if it's used by more than one automation app?
10) I wasn't saying the outputs should be able to be rearranged, I was
talking about changing an existing connect from one to the other. But that
can be done by just dragging it from one to the other. #10 can be ignored.
11) You're right, and honestly, I don't even know what I was thinking on
this one.
12) Could there be a block to periodically check free space for a
user-defined level? Granted, it wouldn't be as effective or battery
efficient, but I think it could be useful.
14) What about making the back button collapse it *then* close it?
15) Works, but definitely less convenient.
17) Couldn't this be done when saving/exiting a flow? Check at that time to
see if it contains any undefined variables.
19) Not only do I find these unintuitive to find (even after you mentioned
functions and built-in variables, I still had to check the links you posted
to figure it out), but it doesn't seem they can do the types of things I
was referring to. For example, unless I'm mistaken, I can't have a flow
assign the time/date/day so a later block and check it. All it can do is
set the variable with the number of seconds from almost have a century ago,
which would not only not always be useful, but would be a very inconvenient
way to deal with it.
24) Ok, so it's what I thought, which is that I have to connect the last
block to the first. Not a big deal, but doesn't make sense to me, either,
since the point of automation is to do things automatically, which
typically means more than once. I guess I can maybe see the benefit to
this, since you might sometimes only want it to run the next time the
trigger event occurs, but not every time after that, but it does seem
strange.
26) Another instance where the current setup works, but it's not at all
intuitive and it could/should be much easier.
28) I don't remember.
29) Which requires breaking connections and making new ones, then
rebreaking those and remaking the original ones, vs just disabling/enabling
a block.

Again, I do realize all of these suggestions aren't going to be agreed upon
by you and other users, and I don't expect them all to be implemented,
certainly not in the short-term. But you seemed interested in feedback, and
so I wanted to give you my thoughts. Unfortunately, based on my experience
with it and the other apps and the fact it doesn't seem Automate is a good
fit for me or that it will be changed enough to be, I think I'm going to
stick with Automagic and/or MacroDroid. But you have my thoughts on it,
which hopefully were helpful.

On Sunday, October 28, 2018 at 2:42:10 PM UTC-4, Henrik "The Developer"
Lindqvist wrote:
>
>
> 1. Already on the to-do list
> <https://groups.google.com/d/topic/automate-user/ieFxvzSiWkA/discussion>
> .
> 2. An improved flow lost screen is on the to-do list., but it will not

> include a "switch" since a flow can be started multiple times, so it's
> state aren't simply on or off.

> 3. The minimum zoom level is determined by the flow size, so it may be
> difficult.
> 4. As with #3, is depends on the flow size, and a flow can have

> multiple Flow beginning blocks, placed anywhere, so keep displaying them
> all at the top could be difficult.

> 5. To allow parallel execution/start enable the option for in the Flow

> beginning block. The other ways are also supported, but you have to
> implement then yourself using the appropriate blocks, Fork, Subroutine,
> etc. For "emergency stop", see Safe mode

> <https://www.google.com/url?q=https%3A%2F%2Fllamalab.com%2Fautomate%2Fdoc%2Fsafe_mode.html&sa=D&sntz=1&usg=AFQjCNElv3d6GTkh-MY6kh_ZPXQwFjv8pA>
> .
> 6. The sensor battery drain is usually so minuscule that this

> information is irrelevant anyway. I think "during continuous use" is pretty
> explanatory.

> 7. I don't think Android provide such information.
> 8. I'll consider it.
> 9. A search field is already on the to-do list. Most dialogs could be

> improved, but Automate has a lot of them.

> 10. Agreed, the connect/disconnect is a bit buggy, and can use some

> improvements, which is already on the to-do list. I'm hesitant to allow
> rearrangement of the (YES/NO) dots since it would make the flows even more
> complex.

> 11. Doesn't the Storage space block work?
> 12. Android decides low-space threshold.
> 13. For now, you have to implement it yourself
> <https://groups.google.com/d/msg/automate-user/KDIfZlD1uiE/i878IFJK5-gJ>
> .
> 14. Not really how that Android UI widget works, implementing it that
> way may be difficult.
> 15. Use the import menu.
> 16. See #1
> 17. Somewhat agreed, but it would make variable name verification
> somewhat useless.
> 18. Auto-completion has always been there, but just not for within
> string interpolations.
> 19. It's all there as functions
> <https://www.google.com/url?q=https%3A%2F%2Fllamalab.com%2Fautomate%2Fdoc%2Ffunction%2Findex.html&sa=D&sntz=1&usg=AFQjCNHi7unQPtGQsKzfPtYy7EqOYJLKGw>
> or built-in variables
> <https://www.google.com/url?q=https%3A%2F%2Fllamalab.com%2Fautomate%2Fdoc%2Fvariable.html&sa=D&sntz=1&usg=AFQjCNFYdh5Q4iL56YC1zom6ofUSXQ_GyA>
> .
> 20. The UI for specifying multiple sets of input arguments would be

> way too complex, that's why Automate relies on the Fork block for that.
> Just write the variable name YOU want in the output field, i don't see that
> as as burden.

> 21. Most decision block works this way, they're used to check current

> state or await state change, see Proceed option

> <https://llamalab.com/automate/doc/flow.html#proceed>. Separating such

> operation for every block would require three times as many block.

> 22. See #1
> 23. A "visual debugger" is on the to-do list, making such detailed

> logs redundant, until then use the Log append block. Use the Log > Clear
> menu on the flow details screen.

> 24. Please read
> <https://www.google.com/url?q=https%3A%2F%2Fllamalab.com%2Fautomate%2Fdoc%2Ffaq.html%23flow_stopping&sa=D&sntz=1&usg=AFQjCNFKgWeCE45_8IjRg7i0KdEFSP8C5g>
> .
> 25. A replace block which simple keep the connections would be doable,

> but "converting" arguments/variables would require an insurmountable amount
> of work, i.e. 330*330 blocks.

> 26. Tap the fx icon and write 0.1 for 100 ms.
> 27. No.
> 28. It shouldn't. How did you launch the main screen, through the
> notification?
> 29. Just bypass the block, with #10 it's probably a non issue.
> 30. See #1
> 31. The delay is an Android feature/bug. Android 9 seems to be even
> buggier.
> 32. Should be easily done on Android 8, added to the to-do list.


>
> Phew.
>
>
> On Sunday, October 28, 2018 at 2:01:14 AM UTC+1, vertigo220apps wrote:
>>
>> I've been playing around with this app as well as a few others for a few
>> days now, and I have quite a bit of feedback and requests and a few
>> questions based on my use of it so far. I apologize in advance for the
>> length, but I'm hoping the developer finds it useful, especially since they
>> were asking people for feedback on Reddit. I'm sure I'm wrong on some of
>> these points, so please (anybody) correct me on any invalid points.
>>

>> 1. Add a dark theme.
>> 2. Add on/off switches on each flow on main screen. In addition to a

>> switch for this, a 3-dot menu button could be added, so clicking the flow's
>> name would open the flowchart screen, and clicking the menu button would
>> provide the options to edit the properties, share and delete the flow, and
>> open the logging menu, eliminating the need for the screen with the
>> start/stop buttons, which is an unnecessary extra step.

>> 3. Remember the zoom level, and open new and existing flows at the
>> same level.
>> 4. Open flows with the beginning at the top of the screen instead of

>> in the middle, as well as allowing the screen to be scrolled to move it all
>> the way to the top (and beyond). Working in this app feels awkward anc
>> crowded, since it defaults to such a high zoom level and doesn't give me
>> much freedom in panning the screen.

>> 5. I'm mainly comparing this to Automagic, since the two are so

>> similar, and one difference I've found is that it has an invert option in
>> the orientation trigger. Another is that it has more flow execution options
>> (parallel execution of multiple instances, skip execution when an instance
>> is already executing, wait until the currently executing instance has
>> finished, and stop the currently executing instance and then execute the
>> newer instance). Automate only has the first two from what I can tell.
>> Another feature it has that Automate lacks is the emergency stop in case a
>> user-defined number of actions per minute.

>> 6. The orientation sensor battery usage warning doesn't make it clear

>> whether it only applies when the condition is met or if it's a constant
>> drain all the time, which would make more sense (otherwise why bother with
>> a warning), but the accelerometer is always working, to change the screen
>> rotation, so it doesn't seem like using it as a condition would cause more
>> drain.

>> 7. Is it possible to detect if a plug/cable is inserted even if

>> there's no power applied (i.e. trigger an event when a power cord is
>> plugged into the phone, whether or not it's plugged into the wall)?

>> 8. In addition to undo, it should have a redo function.
>> 9. The app list needs a quick-scroll feature (where you can drag the

>> bar to scroll very fast through the list). A search function would be nice
>> as well.

>> 10. Removing connections can be inconsistent and a bit of a pain. I

>> much prefer Automagic's method for this, as well as editing a connection
>> (e.g. switching true to false), though Automate's way of connecting them is
>> far superior IMO.

>> 11. Low storage space can't be used as a trigger.
>> 12. Maybe it's not possible, but ideally the free space % for the low

>> storage space should be configurable. I typically have less than 10% free
>> (yet need to get to a very low amount before getting a system warning), so
>> this wouldn't even work for me. Also, I assume it's related to internal
>> storage, but there should be an option for external storage as well.

>> 13. There doesn't appear to be any way to set multiple triggers (e.g.

>> run the flow at a certain time, but also if something happens). I thought
>> maybe this could be done by forking from the flow beginning block, so if
>> either of the conditions it branched off to were met it would activate, and
>> then they could be recombined after those conditions, but that's not
>> possible. So unless I'm missing something, this can't be done, and it
>> should be possible to do multiple triggers as both an AND and an OR.

>> 14. When scrolling the blocks list, the category name for the

>> currently visible blocks should always stay visible at the top, to make it
>> easier to collapse it without having to scroll back up to it.

>> 15. It should be possible to duplicate flows. It would also be nice

>> to be able to share multiple flows at once (this goes hand-in-hand with #2).

>> 16. Can't move multiple blocks at once.
>> 17. Should be able to ignore warning when a variable isn't found,

>> instead of having to abandon the expression check and go create the
>> variable assign block before being able to proceed.

>> 18. Entering expressions isn't intuitive. It appears you do "=

>> {variable_name} == {value}" (or maybe just = instead of ==, since it looks
>> like it automatically changed that for me) but there's no guide to it,
>> having it start with an equal sign makes no sense, and it doesn't have any
>> sort of help with inserting operators or variable names. Automagic is much
>> easier for this, not only showing you examples, but having buttons to
>> insert variables, functions, and operators, etc. It should also allow you
>> to select from existing variables when setting a variable.

>> 19. Variable options also appears to be extremely limited, with the

>> only clear option being to assign a number or use a variable from another
>> flow, but no options such as random number, date/time, or any of the
>> numerous other ones that Automagic has.

>> 20. When configuring a check or set volume block, it should allow you

>> to select multiple volume types and automatically enter default variable
>> names based on the types (e.g. global_volume_music), like Automagic. What
>> takes one block in Automagic takes several in Automate, and yet even just
>> one-to-one Automagic is faster due to having the names prefilled.

>> 21. Some of the block names aren't intuitive. An example is

>> "Notification posted?" which sounds like it just checks to see if a
>> notification has been posted, and based on the name doesn't at all sound
>> like it's the one to use for when a notification is removed. There are
>> several others as well.

>> 22. Should be able to create groups to organize flows and
>> enable/disable entire groups.
>> 23. The log is nowhere near detailed enough to be useful. It should

>> not just say the name of the block, but its output (true, false, variable
>> value, etc). There should also be a confirmation box when clearing the log.

>> 24. Flows should stay running until disabled, intead of stopping when

>> they're edited or after they've run. I don't even understand how this is
>> supposed to work since flows stop running after executing once. I must be
>> missing something, in which case it's another example of how much less
>> intuitive this app is compared to Automagic. In addition, it would be nice
>> to have an option to make changes take effect immediately, instead of only
>> after exiting the flow (and restarting it).

>> 25. Should be able to change a block to a different type instead of

>> having to remove it, add a new one, and remake the connections. Similarly,
>> should be able to toggle a block within the same type, e.g. change "App
>> start" to "App kill" while keeping the app and all other info the same.

>> 26. Delay needs millisecond accuracy. It should also allow changing

>> the larger parts without having to delete the whole thing (e.g. change
>> hours without having to backspace and erase seconds and minutes first).

>> 27. Add the ability to edit categories and what blocks are in what

>> categories, including being able to have them listed in more than one.

>> 28. Pressing back while on the main screen appears to keep going back

>> through this history of things done in the app instead of exiting it.

>> 29. A block should be able to be temporarily disabled without having

>> to go through the effort of disconnecting its input(s) and output(s) and
>> reconnecting them between the blocks on either side of it. It would be much
>> quicker and easier to just disable it so it takes no action and just allows
>> the flow to continue. If it has more than one output, when disabling it
>> should ask which output should be used. Similarly, a connection should be
>> able to be temporarily disabled, preventing the flow from going down that
>> path.

>> 30. Add an option to hide or, preferably, gray out (or both) blocks
>> that require root.
>> 31. Maybe just a limitation of Android or the device, but if

>> executing two app launches one right after another without a delay in
>> between neither one happens. This sort of happens with Automagic, too, but
>> with that the first app will launch and the second won't, which makes
>> sense, whereas with Automate even the first one won't launch, which makes
>> no sense. Also, I've found that with Automagic, which goes to the
>> thousandths of a second (millisecond) place, it only needs an ~200ms delay
>> in between the two app launch actions to work, whereas with Automate I have
>> to use a full second delay since, per point #26, it doesn't have
>> millisecond accuracy.

>> 32. I often find myself going back and forth between two or more

Henrik "The Developer" Lindqvist

unread,
Oct 28, 2018, 5:58:05 PM10/28/18
to Automate
2. As said, Automate flows aren't simply on or off. However the improved flow list screen will likely include some context action within the list.
5. "Policing itself" is very difficult implement, see Halting problem.
6. Having an app continuously process the sensor data is likely using more battery than the sensor itself, and nowadays the sensors are probably always enabled anyway by Google Play Services, etc.. The drain info is more or less obsolete, and was only shown because Automagic also did so.
12. "Polling" isn't very battery friendly so i'm hesitant to implement feature relying on it. But if you must, the Storage space block has an "Usable space" output variable so you can do it yourself.
14. That would be feasible.
15. Agreed. A duplicate option is already on the to-do list.
18. Saving the flow is irrelevant. Every time a user wrote an expression with a variable it would have to be added to the auto-completion list, possible making it cluttered with typos etc..
19. The auto-completion shows every function and built-in variable, with a short summary, i can't see what else to include. Expression allows you to perform any calculation you can think of, as in any other programming language.
24. This is the benefit, unlike other automation apps which aren't using a flowchart design, where you enable/disable completely separate "contexts" or whatever they're calling it.
26. You have a convenient duration picker. I could make it handle milliseconds as well, but it should so seldom be needed, since the Android "timer" doesn't have such precision anyway.
29. Including an enable option in every block would make everything more complex. I know of no other programming language where you can disable a statements.

Automate is more akin to proper programming, so it may not be for everyone.

vertigo...@gmail.com

unread,
Oct 28, 2018, 8:15:16 PM10/28/18
to Automate
No idea why my response to this went to your email instead of here:

12) As long as there's a warning about battery usage, it would be the user's decision. But at least it is possible, albeit in a much more complex way.
18) By adding them to the auto-complete list (or better yet, a pop-up with all variables), it would reduce the possibility of typos vs having to type them out.
26) It's hard to say for sure, but there does seem to be a difference in how quickly the second action (after a delay) happens when I use a full second vs various fractions of a second. The fact that the flow doesn't work properly unless I'm using at least an ~200ms delay also indicates there is accuracy to that level. Granted, it may not be to the millisecond, but it's enough that there's an appreciable difference between 100 and 200, 200 and 300, and so on.
29) Every language can do this:

If A then {
   If B then {
      Else...

A then B has to happen...

// If A then {
   If B then {
      Else...

A is skipped, so now only B has to happen. EDIT: I've looked at this and given it more thought and definitely agree it's not as simple as commenting out some lines, but I still feel it should be feasible. If disabling a block, it could ask which output to use and then shunt the input to that output. Anyways, just a thought.

One way to do it which would keep it from becoming more complex would be to add it to the menu that becomes available when long-pressing a block, along with cut and delete.

I do have some programming experience, but only a bit and nothing too complex, so for me Automate is usable but more difficult to use than others. I just figured by simplifying things and changing some things, it could be made more accessible, instead of limiting it to more advanced users. It does seem to have more stuff than Automagic, though that may be just the appearance because of how different things are between them, but assuming the capability between the two is fairly equivalent, it would be nice if Automate could be as easy to use. I don't have enough experience with either to truly compare them, though, so it may be that Automate is capable of much more and therefore some of the complexity is necessary, but even for most of the more "basic" things I find I'm able to find and use things in Automagic significantly easier than I am in Automate. Maybe it's just me, but it's also possible many others are in the same boat.

Henrik "The Developer" Lindqvist

unread,
Oct 28, 2018, 9:26:32 PM10/28/18
to Automate
12. As said, easily done using existing blocks.
18. I'll consider including it, probably when the "output variable" fields can take expressions.
26. As said, for such rare cases where sub-second precision is needed, just tap the fx icon an write it.
29. A comment isn't really a the same as a disabled statement. Another issue is how "disabled" decision blocks should know which way to go.

Agreed, the other automation apps are likely simpler. With flexibility comes complexity, Automate > Automagic  > Tasker > MacroDroid >  IFTTT.
Reply all
Reply to author
Forward
0 new messages