felixwiemuth / SimpleReminder

Efficient creation of simple reminders on Android.
Other
57 stars 9 forks source link

Issues with SimpleReminder in launchers #22

Closed yephny closed 2 years ago

yephny commented 2 years ago

I'd rather have a single SimpleReminder activity visible in launchers, which would launch the app instead of launching the "Add Reminder" activity.

Android 10, SimpleReminder v.0.9.9

felixwiemuth commented 2 years ago

Thanks for your comment. I am not sure whether there is a general problem with the app here, but it could be that you use a launcher which is not customizable enough.

It is a feature that SimpleReminder has two different launcher icons: one to open the main app with the overview of reminders and one to add a reminder.

In the default Android launcher (and most other launchers I assume), you have a list of all apps and their different launcher icons (in the default launcher you reach this list by swiping up). There you can choose which launcher icons you place on your home screen, depending on where you need quick access to. For SimpleReminder you do not only have the main app icon which launches the reminders list activity, but also the "Add Reminder" icon, which is there so that you can more quickly access the "Add Reminder" screen. Some people might want only the "Add reminder" icon on their homescreen, some only the one for the main app, and some might want both. Note that long-clicking on any of the two launcher icons shows an action equivalent to what the respective other launcher icon does.

Which launcher are you talking about here? Do you not have a home screen where you can place launcher icons and widgets of your choice? By hiding you probably mean that you can make an app disappear from the list of apps, which of course includes both launcher icons ("Add Reminder" and "Simple Reminder").

yephny commented 2 years ago

I used Olauncher to test this. Strangely, as I noted in my first message, both "apps" listed in the launcher start the same "Add reminder" activity; there are no launcher entries in my case to open the main app, which forces me to do settings->apps->simplereminder->launch.

felixwiemuth commented 2 years ago

This doesn't sound like a problem with the app. Technical explanation: Both activities have an intent filter registered with an android.intent.category.LAUNCHER entry (see below), which is the way to specify different launcher activities. And it works as expected on the default launcher (Android 11, 12) and has also worked on old and new Samsung UIs (Android 6, 10, 11).

https://github.com/felixwiemuth/SimpleReminder/blob/87bda492b839d65fb2123f7cb38e37b51fb12381/app/src/main/AndroidManifest.xml#L44 https://github.com/felixwiemuth/SimpleReminder/blob/87bda492b839d65fb2123f7cb38e37b51fb12381/app/src/main/AndroidManifest.xml#L64

Apparently for Android 12 one has to set the android:exported="true" property for launcher activities (and I will do this for the next release) but it also works without that on Android 12.

So I assume there is something wrong with Olauncher if it does not start the right activities for the different launcher icons.

yephny commented 2 years ago

Thanks for taking the time to explain it in detail. I will be redirecting this issue to Olauncher.

yephny commented 2 years ago

Though, that is only for the issue where Olauncher fails to launch the "reminders list" activity when you tap "SimpleReminder" to launch it.

As for having two activities listed in launchers, I believe my point still stands. Not everyone uses shortcuts on their home screen to open apps. In fact, I think people like a less cluttered home screen with only a few frequently used apps like the phone app, while using the app drawer pretty often. Is there really no way to have a toggle in settings that could disable the "Add Reminder" activity showing up in app drawer?

felixwiemuth commented 2 years ago

Not everyone uses shortcuts on their home screen to open apps.

That's right, but then one also has to live with the inconveniences this brings: having to access apps from a list of all apps sorted in some rather arbitrary order.

I think home screens are really there to be used, one can have many of them and put less frequently used apps on home screens further away from the main one. Some launchers, like Samsung's, even allow to group apps in the app drawer, as an additional organization feature.

Even though I see your point, I don't think that an app having multiple launchers makes the big difference here and I really think using both icons is the major use case when using the app frequently.

There is one new feature (since Android 7.1.1) which allows to "pull out" launcher icons from other launcher icons: long-click on a launcher icon to show app shortcuts (SimpleReminder has one for "Add Reminder" and one for "Show reminders") and drag one to the home screen. This way one can have additional launcher icons without cluttering the collection of all apps. The launcher icons obtained this way can be a bit ugly though, as they get an additional small version of the main app icon in the bottom right.

Regarding providing a setting: It could be an option in the settings to disable any one of the launcher icons (it might be possible: https://stackoverflow.com/a/22754642/). But I would first want to know how the use case of an app with two common entry points is usually handled / what best practices are. If this has been found out, you or anyone interested is welcome to contribute this setting. :)

yephny commented 2 years ago

Now that I consider my use case, I do agree that it makes sense to have the "Add Reminder" activity in the app drawer as it makes adding a reminder much quicker. The reason why I'd rather see only a single activity currently is that I'm waiting on certain features like setting reminders on different dates to actually use the app actively. I can't speak for other people who may or may not want to see multiple activities in their launcher, so I thought it could be a handy option.

Unfortunately, I don't remember using another app with two activities visible in the app drawer, so I can't help with best practices. All I know is how keyboard apps such as Florisboard have an option to prevent the app from showing up in it.

On another note, I found out that the "Add Reminder" activity doesn't show up in Blue Line Console. I'm not sure if it has to do with SimpleReminder or the launcher again. I guess I can assume there's something wrong with the launcher when the feature in question works in other launchers.

felixwiemuth commented 2 years ago

keyboard apps such as Florisboard have an option to prevent the app from showing up

It could be that it still works for a keyboard app (which doesn't have a launcher activity), but otherwise from Android 10 at least one launcher icon appears for each app (see SO link above or the docs)

On another note, I found out that the "Add Reminder" activity doesn't show up in Blue Line Console. I'm not sure if it has to do with SimpleReminder or the launcher again. I guess I can assume there's something wrong with the launcher when the feature in question works in other launchers.

I would strongly guess it has to do with the launcher. As shown in the code snippets above, SimpleReminder just declares some standard launcher activities.

nhirokinet commented 2 years ago

I'm the developer of Blue Line Console. Sorry for your confusion here, as you guess it is a problem of Blue Line Console.

Blue Line Console implemented search to use from apps list, not LAUNCHER intent list. Later I noticed the mistake, but kept left the problem concerning compatibility and thinking of UI...

felixwiemuth commented 2 years ago

Thanks for the additional information. :)

tanujnotes commented 2 years ago

Hi, developer of Olauncher here. Yes, the issue is indeed with the launcher and not this app. I'm working on it and this should be fixed in the next update. Thank you for your patience.