- I’ve received some interesting feedbacks in the opinion poll. I’ll try to address a few of those, but before that, you should know that sorting or filtering is difficult to implement without affecting the overall loading speed of the Main page. Those who have been using App Manager from the very beginning knows how long it took to load this page without the caching mechanism that was implemented much later. However, for certain cases, caching needs to be bypassed. For example, a list of running applications cannot be cached as it is a real time information. Same goes for the size checks. For those cases, when the filter/sort is triggers, App Manager takes a snapshot of the running apps/size and apply the selected option. This is why you may see increased loading time when you use those options. Also, as the number of sorting and filtering options are increasing, it’s also necessary for a (not a complete) re-design of the list options to make it less overwhelming to a regular user. The reason for the poll to have limited voting options is also this. I want to understand which sorting options are most likely used by a user so that they can be more accessible than the others at the initial stage. It is also possible to update the options dynamically based on usage, but this will have a negative impact because when you use a feature regularly, you develop muscle memory. So, you may end up being annoyed with the dynamic options due to occasional changes in the layout. These are some of the trade-offs that needs to be considered when working on a complex feature that requires a simple front-end.
- Grouping apps on the Main page based on predefined groups is an interesting idea. But when you think about it analytically, you can find that groups cannot be overlapped, unlike say categories, tags, or profiles. So, it is necessary to research on how all these can be integrated. For example, groups can be just categories with where only one app is allowed across groups. Tags and categories are likely the same thing. Also, there may also be collections of tags or categories which can be just filters. In that regard, a single group/category/tag can also be regarded as a filter with just one item. These are some of the interesting concepts that require some deep thinking. Profiles is another topic.
- What is the biggest obstacle in publishing a new release? Writing changelogs. Though it may be surprising to many people, writing changelog often takes several hours to finish, because it’s necessary to take a look at the features implemented, improved or fixed, and then write it in a way that makes some sense. Then, certain platforms requires a certain amount of work as well. For example, F-Droid has a restriction on the number of characters a changelog may contain which is way too limited for an active project like App Manager. For the in-app changelog, it’s necessary that all the changes are documented properly since we expect people to read it most often. In other cases, such as GitHub, Telegram, Matrix, or website, it is expected that the users will just skim over the changes, but at the same time, they may be referred by other channels, forums, etc. So, they have to sufficiently descriptive but easy to read and understand. Finally, we also need to post the update via the social networks (Mastodon and X). Possibly developing a feature is less tiresome than this since they tend to be more rewarding and enjoyable.
- A few months ago, I talked about permissions in Android. App Manager currently does not have a permission model. This, as you may recall, is because Android itself has a very complex and distributed permission model. Unifying them is a challenge that App Manager needs to eventually address. My estimation is that such unification attempt may take at least 5-6 years if I do this alone (and I probably have to do this alone).
- My rooted phone broke down. I suspected it has something to do with the battery as it’s no longer charging. As a result, development of root-only features and bug fixes are paused until I can find a solution. I can use an emulator, but they aren’t convenient for testing certain aspects of root.
- We actually have everything necessary to implement ADB backup/restore for supported apps inside App Manager, only a user interface is necessary. However, the primary problem is the convenience, because whenever you run ADB backup, a popup will be displayed by the Android system asking for a password (which you should not set since encryption is handled by App Manager on its own) which can be very annoying. Then, the primary concept is to convert an ADB backup into regular App Manager backup and vice versa to allow restoring arbitrary backups made using App Manager which may not hold in all cases, especially the apps that only support key-value backup/restore. This is an interesting problem that I need to look into. ADB backup can also back up launcher widgets which App Manager cannot right now.
- The contributor of the month for February is Theray Tharow. Tharow was chosen for their outstanding code contribution to App Manager which include implementing the front- and back-end of the overlay management features. I hope more people will be interested in code contribution because this is where more contributions are needed.
February'25 Updates
App Manager development insights: challenges in implementing sorting and filtering without impacting load speed; exploring app grouping, categories, tags, and profiles integration; the time-consuming task of writing detailed changelogs across platforms; long-term goal to unify Android’s complex permission model; pause on root feature development due to broken rooted phone; plans to improve ADB backup/restore UI despite system inconveniences; and February’s Contributor of the Month recognized for overlay management enhancements.