JusticeRage / ApkTrack

ApkTrack is an Android app which checks if updates for installed APKs are available.
GNU General Public License v3.0
122 stars 27 forks source link

[Feature suggestion] Enable ApkTrack to use Aptoide directly for update queries, app downloads and as a search engine #126

Open Olf0 opened 6 years ago

Olf0 commented 6 years ago

Background

Aptoide is the server and client software F-Droid was forked from more than 6 years ago. Unfortunately Aptoide's developers have decided (stepwise between 2012 and 2016) to pursue a more closed strategy, so the source of the Aptoide server software was made unavailable to the public in 2012 (when it was renamed from BazaarAndroid to Aptoide) and (much worse) its client app has become a data gathering tool digesting ones contacts and account information since version 8.1 (at the end of 2016).

OTOH the Aptoide app store is supposedly the biggest "alternative" app store worldwide with its protocol still being open and client software still being developed as Free Software.

References:

  1. As an overview, Aptoide on Wikipedia, specifically the section Interfaces there with its references.
  2. The Aptoide Protocol Specification v2.0.1 (PDF, captured 2012-07-07 by the Internet Archive), as of 2012-04-17, covering Aptoide's protocol version v2.
  3. The Aptoide Protocol - XML & Webservices Specification v4 (PDF from aptoide.com, which is apparently an updated, more recent, still public version of [2]), as of 2013-07-22, covering Aptoide's protocol version v4.
  4. The Aptoide Web Services Documentation on the Internet Archive, as of 2014-07-01 (intro page; reference 16 in aforementioned Wikipedia article links to an older version of it) / 2014-07-15 (sub-pages), which is the last successfully archived one.
  5. Aptoide's info.xml http://aptoidedev.store.aptoide.com/info.xml. Trying to obtain it via HTTPS (i.e. https://aptoidedev.store.aptoide.com/info.xml) "works", but is futile, as retrieving info.xml always redirects to an auto-generated HTTP-link.
    AFAICS extras.xml and stats.xml (as mentioned in Aptoide's Wikipedia article references 18 and 19) do not exist anymore.
  6. The Aptoide repositories on Github, specifically the Aptoide SDK demo, the actively developed Aptoide client v8 (written in Java) and the older client versions up to v7.1.1.4 (also written in Java).
  7. Mentioning it, just because I found it (but not expecting it to be very useful): The Node Aptoide tool (using node.js) by DWeinstein on Github.

Feature suggestion

With the documentation and implementation examples above, integrating the ability to query and download apps directly from Aptoide into ApkTrack should be well feasible. Side note: On first sight, the Aptoide protocol is also still close to the original F-Droid protocol (i.e. not the newer, revamped F-Droid "v1" protocol).

In a second step Aptoide could be also offered as a Search Engine in ApkTrack.

Furthermore Aptoide provides most non-paid apps available on Google Play Store, which requires an account to download apps (no matter if paid or non-paid ones). Similarly with the feature requests (e.g. issue #51 ) for the Amazon App Store, which would require tedious reverse engineering of the details of its protocol first. Also both, Amazon and Google, may regard the ability to directly download apps from their app stores in ApkTrack as an unfriendly action and might counteract legally.