Obtainium icon indicating copy to clipboard operation
Obtainium copied to clipboard

Enhancement Idea: Make adding apps easier

Open S7venLights opened this issue 2 years ago • 7 comments

May help some new users who don't have github accounts to Include a lists of common apps to choose from to add. It could be a menu within the import/export tab.

Apps like: Auroura Store Browsers Messengers Simple Apps Suite Mail apps Map apps and other common.

I could put together a list if you like.

The user can make a selection of apps to add and then when they click add Obtanium generates an import file with all the correct preferences (regular expressions etc) needed and adds the apps.

There could also be a warning that some apps releases are not available anywhere but F-droid or Aurora Store.

S7venLights avatar Oct 29 '22 14:10 S7venLights

Another Idea is to import from peoples F-Droid library:

In F-droid for each app there's a tab for 'Links' In there the bug tracker link usually points to github/lab. This could be parsed as a way to import peoples existing library of apps.

In F-droids official app, one can go to: 'Settings/Manage installed Apps' From there in the top right corner, there's a share menu. Using this one can share your whole library of F-droid apps in text form. And perhaps this can be shared directly with obtainium, then obtainium can use that to find the apps on F-droids website and maybe scrape the Git links from the 'bug tracker' tab. Then check whether there are APK releases present before adding apps to Obtanium.

Note F-droids 'Manage installed apps' share, exports Package names, eg: dev.obtanium.com but these can be used to search F-droid/izzyondroid and find the exact app.

An alternative, if that doesn't work is to allow users to share individual apps from F-droid to obtanium. In this case an APK or fdroid link is shared. Then that could be scraped to find Git links.

S7venLights avatar Oct 29 '22 14:10 S7venLights

Alternatively/aditionally Neostore has a feature where it links to Gits with an icon in the top right that looks like this: </> and people could click that and obtainium could be set as the default app for github links and add the app that way.

S7venLights avatar Oct 29 '22 14:10 S7venLights

Now I don't know if its possible but if already installed apps declare there package name, and obtanium can access this, it could pull that and search f-droid with them and scrape Git links. This way the user need only click one button to import all their installed apps that have Git links.

S7venLights avatar Oct 29 '22 15:10 S7venLights

Not sure how I feel about hardcoding a list of recommended Apps. A better approach would be to query an external list that changes based on popularity/ratings, like most app stores do. I don't think GitHub provides anything like this (at least for Android apps specifically) but maybe someone else does.

For the other suggestion, it's basically a feature that takes an F-Droid link and converts it to a GitHub link. Definitely doable but I'm not sure if it's worth doing, maybe there should be an external service for that. In general, I'm not a fan of how F-Droid APKs are not compatible with those from other sources (can't update from one to another). Taking people's currently installed F-Droid Apps and giving them a GitHub link could cause problems.

I'll leave this issue open but not sure if it (the F-Droid part) will be implemented. Definitely will add a recommended Apps list if there is a good external API for it.

ImranR98 avatar Oct 29 '22 17:10 ImranR98

Well my main thinking here is finding an easier way for people to get there FOSS app library moved over, copy pasting one link at a time is tedious. That's why I thought a list of common apps most people use to choose from in app could help.

But perhaps the 2nd last idea I posted of Neostore is easiest to implement. It would at least remove the need to copy paste github links.

To clarify, Neostore already makes the github/lab links accessible in one click, all you need then is for Obtanium to register itself as a default app for Github and Gitlab links and have it ask whether to add apps when links are opened.

and lastly have an explainer linked somewhere so people know about that option.

S7venLights avatar Oct 29 '22 21:10 S7venLights

Opening GitHub links by default wouldn't work on new versions of Android, as discussed in #51.

ImranR98 avatar Oct 29 '22 22:10 ImranR98

It does work, for me on android 12 at least.

S7venLights avatar Oct 30 '22 06:10 S7venLights

With what App? As far as I can tell, Apps on Android 12 can only open links to websites if the website has approved the App.

ImranR98 avatar Nov 12 '22 06:11 ImranR98

With Octodroid. But it's because I changed normal android settings to make Octodroid open Github links. Go to settings/Apps/Default Apps/opening links or just search settings for 'Opening links'

Then turn on Instant apps and you can allow apps to open a custom list of supported links.

There is even an android 'Activity' to launch the 'Opening links' settings menu. So you could perhaps add a button in Obtanium that takes users to the setting(assuming it works that way).

PS. Droidify now also has a button to directly open Git links like Neostore </>

S7venLights avatar Nov 12 '22 07:11 S7venLights

Obtanium could be set to open Git links in the same fashion but it currently doesn't appear in the instant app list.

S7venLights avatar Nov 12 '22 07:11 S7venLights

As far as I can see, this can't be done for HTTP links on Apps that target Android 12. From what I can tell, Octocat targets an extremely old version of Android, so it is not subject to the new limitations (here's a comment on the Neo Store repo saying the same about F-Droid). For Neo-Store, it looks like they are using a custom scheme (not HTTP) to open F-Droid repo links; I didn't see anything about supporting GitHub or other regular HTTP links. I tried to get this to work anyways using this plugin, but had no luck.

Closing this issue for now as it doesn't seem doable, but will re-open if anything changes. Also for the other suggestion about recommended Apps, I think it's best to leave that up to the user; besides idk where the App list could come from or if it's really a good idea to rely on an external source (using an internal hardcoded list has it's own issues).

ImranR98 avatar Nov 12 '22 08:11 ImranR98

Too bad, okay 👍

S7venLights avatar Nov 12 '22 13:11 S7venLights

At least people can long click on the </> button in Droidify and Neostore to more quickly copy the Git link. Perhaps you can just put that advice in the import tab of Obtanium. It could say: Quickly copy Git links of F-droid apps by long pressing the </> button in Droidify or Neostore. If the repo has an APK release, Obtanium can add them.

S7venLights avatar Nov 12 '22 15:11 S7venLights

https://github.com/ImranR98/Obtainium/issues/68#issuecomment-1295849929

Is still possible in theory, perhaps a bit hard to do.

S7venLights avatar Nov 17 '22 07:11 S7venLights

Another thing that could be done is creating a crowd sourced table of android apps released on Gits and grouping the app and package name to the Git link. Then make it so the user can search and select the apps they want, and mark them then output a list of Git links.

https://getgrist.com could be a good platform for this, but I don't have time for such a project. But maybe the F-droid team already has this data since they probably build from Gits. We could ask for it.

S7venLights avatar Nov 17 '22 07:11 S7venLights

Off the top of my head, https://github.com/offa/android-foss is regularly updated, crowdsourced to some degree, has regular formatting so it'd be very easy to scrape, and lists both fdroid and non-fdroid links.

Hate9 avatar Jun 01 '23 15:06 Hate9

Off the top of my head, https://github.com/offa/android-foss is regularly updated, crowdsourced to some degree, has regular formatting so it'd be very easy to scrape, and lists both fdroid and non-fdroid links.

This could work

ImranR98 avatar Jul 16 '23 17:07 ImranR98

We can turn Obtainium into a standard app store like Droid-ify, but then when you go to install the app it will go out to the source (GitHub, GitLab, etc.) and grab the latest .APK automatically, and install it rather than downloading it from the repository.

I think you should still be able to manually add apps in case there is some error or something, but I feel like this approach would make Obtainium much more user friendly and simple.

candroid-man avatar Dec 04 '23 18:12 candroid-man

We can turn Obtainium into a standard app store like Droid-ify, but then when you go to install the app it will go out to the source (GitHub, GitLab, etc.) and grab the latest .APK automatically, and install it rather than downloading it from the repository.

I think this would be out of scope - not something I want to include in the app itself.

Someone suggested creating a site where people can submit crowdsourced Obtainium configs for apps (#1214). I think this is better than relying on https://github.com/offa/android-foss as suggested earlier because the suggestions there are not guaranteed to work with Obtainium (user-submitted JSON configs would be). Especially now that it's possible to one-click import an app directly into Obtainium (see https://github.com/ImranR98/Obtainium/issues/368#issuecomment-1858777494). Closing this issue in favour of #1214.

ImranR98 avatar Dec 31 '23 01:12 ImranR98