Skip to content

Instantly share code, notes, and snippets.

@bmaupin
Last active November 13, 2024 06:28
Show Gist options
  • Save bmaupin/b1443d3872b288554008c47b245a463b to your computer and use it in GitHub Desktop.
Save bmaupin/b1443d3872b288554008c47b245a463b to your computer and use it in GitHub Desktop.
Alternatives to Llama for Android

Goal

Find a replacement for Llama (R.I.P. 😢)

Conclusion

🦙 Keep using Llama! 🦙

  • Llama still works and no other application seems to match Llama in terms of ease of use and cell-tower location (Llama's killer feature)
    • Cell-tower location UX seems to be unmatched by the alternatives (training new locations, ignoring towers, seeing location events)
    • It is also very easy to see all conditions and actions in one place, unlike most of the alternatives
  • Tasker seems to be the best alternative, although it's not free, more complicated to use, and the UX around cell-tower location isn't quite as good
  • Easer has potential but there isn't any advantage to it over Llama at the moment
  • Automate is way too convoluted
  • Locale X requires a subscription, so ... no

Motivation

  • Llama hasn't been actively developed since 2014
  • Llama is no longer available in the Google Play Store
  • Some Llama features don't work well or at all in Android 11
    • Most of these can be easily worked around; see below

Using Llama on Android 13

Settings > Apps > See all ... apps > Llama > Permissions

  1. Enable these permissions:

    • Files: (optional) to import/export configuration
    • Location > Allow all the time: (required) to see cell towers
  2. These permissions will be enabled by default since it's an app for older Android:

    • Notifications: leave enabled
    • Photos and videos: leave enabled; file access is all-or-nothing since it's an older app
    • Nearby devices: disable unless you're using Llama actions to automatically pair/unpair Bluetooth devices
    • Music and audio: leave enabled; file access is all-or-nothing since it's an older app
  3. Make sure Pause app activity if unused is unchecked

Using Llama on Android 11

  1. Download latest Llama from https://www.mediafire.com/kebabapps/llama

    https://www.mediafire.com/file/5q7wpcfcacty8a0/Llama.1.2014.11.20.2330.apk/file

  2. Install and enable permissions

    • Basic permissions (Settings > Apps and notifications > See all ... apps > Llama > Permissions)

      • Files and media: (optional) to import/export configuration
      • Location: (required) to see cell towers
    • Advanced permissions (Settings > Apps and notifications > Advanced > Special app access)

      • Modify system settings: (optional) to enable/disable screen rotation
      • Wi-Fi control: (optional) to turn on/off wifi
  3. Limitations

    • Llama features that don't seem to work in Android 11:
      • Power off/on condition
        • This can be worked around by moving these actions into other events
      • Notification without an icon in the top bar
        • The notification can still be disabled altogether
        • If you set Llama to silent notification mode, Android 11 has an option to not show silent notifications in the top bar
      • Android 10 removed the menu for legacy apps
        • All features from the menu are still accessible through the llama button in the lower left
    • Features that are missing:
      • Night Light (blue light filter)

      • Bedtime mode (grayscale)

        (Both of these seem like they're part of the Google Digital Wellbeing app, so I doubt there would be an Android API to control them...)

Evaluation criteria

  • Cell-tower location is a must-have because it uses much less battery power than all other location methods (Bluetooth, wifi, GPS, etc):

    virtually no extra power on top of power needed for normal phone service

    (Location Without Tears)

    • In Android, go to Android Settings > Apps and notifications > See all ... apps > Llama > Advanced and observe battery use will be at or near 0%
  • Cell-tower location UX needs to be good (training new locations, ignoring towers, seeing location events)

  • Easy to use, like Llama

    • There should be an easy way to see all conditions and actions in one place
  • Google Play availability would be really nice for auto updates (I'm too lazy to install another app store, e.g. F-Droid)

  • Open-source would be incredible, since if Llama was open-source we wouldn't be where we are today

  • Free is always nice, although you get what you pay for

Detailed evaluation

App Maintained Available on Google Play Free Open-source Cell-tower location Notes
Automate yes yes limited no yes ⚠ Very unintuitive to use
Limit of 30 blocks in free version
Automation yes limited yes yes no ⚠ No cell-tower location
Easer yes no yes yes yes
LibreTasks no no yes yes ??? ⚠ Unmaintained, low on features
Llama no no yes no yes Still works in Android 11 with limited functionality
Locale X yes yes no no yes ⚠ No free version, requires subscription
Tasker yes yes no no yes ⚠ No free version, only 7-day free trial

Very powerful but UI is too unintuitive to be enjoyable to use.

  • Pros
    • Actively developed and in the Google Play Store
    • Seems to have more conditions/actions than Llama
  • Cons
    • Limit of 30 blocks in the free version
      • I think for my basic needs this would be doable ...
    • Cell-tower location is just another block
      • Llama has cell-tower location as one of the basic UX elements so they're easy to set, easy to see when location has changed, etc.
      • In Automate it's just another block. How would we know if we were home other than by digging through and seeing which flows are running and which ones aren't? If a tower was changed it seems like it'd be a huge pain to update.
    • Kind of a pain to use
      • There doesn't seem to be an easy way to see all conditions and actions in one place
      • Some blocks are very unintuitive
        • In Llama I can just set a time (e.g. 7:00 and 19:00)
        • In Automate there's an await time and a time window
        • Time window? Then do I just set the start time and a duration? So not even an end time?
      • Not intuitive how to reuse flows
        • I want to have a reusable subtask to determine when I'm at home. Do I just create a flow and call it? What do I do with the Yes and No parts of the Cell tower near? block?
      • Not intuitive how/if to keep flow running continuously
    • Night Mode block doesn't seem to do anything (I'm not even sure what it's supposed to do)
    • No Bedtime mode/grayscale block (same as Llama)
    • Not open-source (same as Llama)

No cell-tower location

Promising, although the UI is a bit clunky

  • Actively developed but not available in Google Play
  • Free and open-source
  • Seems to have about the same amount of actions (Easer: Profiles) as Llama at the moment
  • Combining multiple conditions/events seems to be a bit clunky
    • Llama shows you in plain text exactly what's going on, e.g.

      At home between 22:00 and 06:00 - change profile to silent and disable bluetooth

    • To get something like the above, I think you would have to create two conditions (at home, after 22:00), make one the parent and one the child, then have another condition (after 06:00) with a separate profile (e.g. set ringer to normal)
  • All conditions and actions can be seen in one place visually but not simply
  • UX not based around cell-tower location

Basic usage:

  1. Go to Data
    1. Go to Profile and create one profile with all the actions you'd like to take
    2. Create an Event (one-time) or Condition (ongoing) per situation that you'd like to trigger the Profile
  2. Create the Script
    • From Data
      1. Go to Script and create a new script
        • Select a Condition or an Event
        • If you want to apply more than one event/condition, they will be set up in a parent/child relationship. For the parent, it will have no Predecessors and no Profile. The child will have the parent as a Predecessor and the profile you'd like to apply as the Profile.
        • You can go to Pivot to visualize the scripts
    • From Pivot ...
    • I think you would set up an AND operator by chaining the parent to the child, and an OR operator by having a parent with many children?

Unmaintained and doesn't seem to even closely match Llama in terms of features

Requires subscription? Ummm no

No free version, only 7-day trial. Probably the best contender

  • Actively developed and in the Google Play Store
  • Simpler UX than alternatives like Automate
  • Cell-tower support: https://www.youtube.com/watch?v=a3UuEgX-qUQ
  • However, the UX around cell-tower location seems to be lacking
    • No way to scan a location for X amount of time
    • Not sure how easy it will be to see quickly what location you're in (Llama has a dedicated Recent tab just for this)
@bmaupin
Copy link
Author

bmaupin commented Aug 2, 2022

Did you look at the Situations app?

@erikderzweite Does it use cell-tower based location? That for me was the defining feature of Llama that made it use a trivial amount of battery compared to other similar apps.

@aranapatona
Copy link

still nada?

@onehunkytenor
Copy link

Brand new Samsung Galaxy Flip 6. After jumping through too many hoops, I was finally allowed to install Llama, or so I thought. Was presented with a message telling me that the app was not installed as it is not compatible with my phone. Rest in peace, dear and awesome Llama. Rest in peace.

@onehunkytenor
Copy link

IMHO after about 2 weeks, Situations kinda sucks. I find it confusing to use and unpredictable in terms of what it does next. Feels like it's fighting me at every turn. I miss Llama! Can't some enterprising programmer buy it from the original developer and get it working again? Anyone need another stream of income?

@dall2812
Copy link

dall2812 commented Oct 22, 2024

Android 14 seems to block installation :(

@onehunkytenor
Copy link

onehunkytenor commented Oct 22, 2024 via email

@elhennig
Copy link

elhennig commented Nov 7, 2024

For me Llama still works in A13. Anyway I would like to migrate to another tool but haven't found a solution for me, yet.
I do have a Tasker license, but I actually do not really understand it by now. Does anyone have a tip for a nice tutorial that helps Llama users understand the working principles of Tasker?

Also I would appreciate to find a solution to migrate my Llama rules to a successor app, even knowing that is wish is most likely not going to be fulfilled ;-)

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment