yashsingh1/xdaforums huggingface dataset:
[Android Apps and Games] JusticeRage:
I just released the 1.1 version, mainly because "stable" channel users probably couldn't use the AppBrain update source any more.

Both releases (beta and stable) also get better notifications in the process (a single one with all the information instead of one per available update).

No response from AppBrain on Twitter so far :(

Also, the project has received its first Bitcoin donation! Thanks a lot to the donor, it's really heartwarming!
[Android Apps and Games] Kiba No Ou:
Would be possible to search updates on every search engine instead one by one?

Keep up The good work ;)
[Android Apps and Games] JusticeRage:
This is what ApkTrack does if it has no preferred update source specified. If a working one is found, it is then remembered, and the app stops scraping all sources to limit requests.

Is there a scenario where you would rather try all available websites instead of one that is known to work?
[Android Apps and Games] Kiba No Ou:
If i choose apkmirror in settings for example and i search for updates and an app doesn't have any updates on The selected source but other sources got updates, would be better to have an optional to search in all Source.
[Android Apps and Games] JusticeRage:
I think there is a confusion between the source that is crawled for getting version information, and the search engine "short-cut" provided to download APKs.

An update source is like the Google Play Store. ApkTrack performs web requests to see what the latest version of an app is. You can modify these on a per-application basis by long-pressing an app in the list.

The default search engine is the website that you will be redirected to if a new version is detected, and the selected update source does not provide direct APK access. For example, you can look for APKs on Duck Duck Go. The preferred search engine can be changed in the "settings" menu.
[Android Apps and Games] JusticeRage:
AppBrain implemented new scraping counter-measures, and I updated the beta channel to circumvent them. They replied to me on twitter and told me to contact them by e-mail, which I did. We'll see where this goes!

In the meantime, ApkTrack now knows to check Guardian Project and I2P apps on their official repositories.

The stable channel will be updated very soon, for users who need the AppBrain update source to get version information.
[Android Apps and Games] JusticeRage:
Another beta APK is online!

The alphabetical sorting has been improved (it is now case insensitive), and ApkTrack now respects the screen orientation.

[MENTION=4958579]Primokorn[/MENTION]: I still haven't been able to locate the cause of your issue. The latest APK includes more logging, would you be able to provide me with another logcat please? Thanks again for your help!
[Android Apps and Games] Primokorn:
1.1c is the latest beta, isn't it? I do not find the new one. BTW I'm up-to-date now so I'll do new tests ASAP.
[Android Apps and Games] JusticeRage:
No, the latest is 1.1e now. I should really get better at updating this topic's first page.

Doesn't ApkTrack detect its update? (The beta channel has to be selected - except this time, because I just bumped the release channel to 1.1e a minute ago).
[Android Apps and Games] Primokorn:
Now I have it but it wasn't available when you posted your above message.

So here is a new log when updating ApkTrack itself. The app only detects the installation of the update after restarting the app / launching a detection.
[Android Apps and Games] huntic@gmail.com:
issues in paradise

version 1.1.e works on 4.4.4 but can't install on 4.2.2

apk download from F.Droid install but have problems to identify latest version - write no 10000
[Android Apps and Games] Primokorn:
Maybe a new source for open source apks: http://fossdroid.com/
[Android Apps and Games] Real_KinG:
APK TRACK .. Nice one
[Android Apps and Games] JusticeRage:
Unfortunately, this example will not help me debug the problem: ApkTrack cannot detect its own updates, because it is closed while being upgraded and therefore cannot receive system notifications. Would you be able to post a logcat for another app upgrade?

I'll add fossdroid.org to the sources, but the URL scheme it uses needs a little work (spaces are replaced by dashes), so I have to do preprocessing).

[MENTION=5497407]huntic@gmail.com[/MENTION]: I checked the API level and it seems to be right. What is the error message when installing on 4.2.2 ? The erroneous "1000000" version number is due to AppBrain sending back erroneous version numbers to prevent ApkTrack from working. A fix is in the works, and for most apps the latest beta already circumvents this.

[MENTION=5992667]Real_KinG[/MENTION]: Thanks!
[Android Apps and Games] mathorv:
Tool tool is great for people who don't want to use Gapps.

Few ideas:

Exclusion list - we always may have app we do not wish to update or search for(private projects).

App groups - some prefer to check selected apps only manually (exclusion from check all with possibility to check group)

Icon next to app name and version indicating which source is used as a version provider(store). Sometimes default provider is a surprise.

autoupdate itself

optionally Download update from evozi if evozi mirror is up to date (to apktrack folder in Downloads, only applies to play store apps)

optionally Download update from Apk Mirror...

(null) error occurs due to timeouts?

example: Chrome Beta (arm version) 43.0.2357.38 (null) - Play store Arm version, on android 5.1.1
[Android Apps and Games] JusticeRage:
Hey!

Thanks for those ideas!

(null) errors are caused by a change in Google's Play Store layout. For some apps, the place where the version number used to be displayed has totally vanished. This should be fixed soon! In the meantime, changing the update source to AppBrain usually fixes the issue.

I don't think I will perform automatic updates, except maybe for ApkTrack itself. Evozi will probably frown upon automatic downloads, and I think there may be security implications in downloading APKs from the internet without the user's supervision.

The exclusion list is a long-standing request, and I will get to it eventually (app group may be included when that time comes).

It is a good suggestion to have the update source indicated somewhere on the UI, I'll definitely look for a way.

These days, I'm working on a search feature for users with a lot of installed apps. It would make it possible to filter apps based on their name (or package name), instead of having to scroll the whole list.

Finally, I have received an answer from AppBrain. They have indeed been trying to block ApkTrack from getting version information from their website, because they feel that it creates too much traffic to their website, and every request pulls comments, ratings etc. from their database, just for a measly version number.

They suggested that I set up a central server which performs caching and does not query their website more than once a day (per app). I will likely set this up in the future, but there are a lot of other features ApkTrack needs before that happens. I replied that if every request is that costly for them, they should probably be the ones doing some caching.

Stay tuned!
[Android Apps and Games] Ban Dan:
A Fast and Efficient Update Check Source

First let me thank you for this most useful App!

I've collected a few wish list items before reading the thread to see that you already (favourably! ) consider most of the significant ones :)

I'll collect and post the remaining, but first a quick suggestion to take a look at

androidquery.appspot.com/api/market?app=fr.kwiatkowski.ApkTrack

you can probably also use the open source androidquery to adapt it and host it yourself.

Thanks!

Please keep up your great work!
[Android Apps and Games] JusticeRage:
It's been a while!

I've come out to push a new stable version, because of (yet again) AppBrain mischiefs. This time, they added CloudFlare protection to their website which for some reason I have yet to figure out does not play well with my requests. In the meantime, a fix has been implemented.

I have also added a long time requested feature: app filtering. A search bar has been added at the top, which allows users with very long app lists to find the ones they are looking for quickly.
[Android Apps and Games] sui81:
Just wan't to say l, i love this App. After ChangelogDroid was outdated, this is the best Alternative for me.
[Android Apps and Games] JusticeRage:
Thanks a lot for using ApkTrack! It's always nice to see that people find it useful.

Version 1.1g has been released to fix a regression in the built-in update sources. Credit goes to DJaeger for noticing and submitting a fix!
[Android Apps and Games] mathorv:
Thank you for the updates and for taking my ideas into account.

What you think about white list of apps - popular apps that should always by default to one store or website example:

F-Droid app to F-Droid not the guardian project.
[Android Apps and Games] JusticeRage:
This "white-list" idea is already kind of implemented. For instance, ApkTrack knows to look for WhatsApp, SnoopSnitch or Nine Mail updates directly on their official websites.

If there is a specific app for which you would like an official repository added, feel free to tell me about on GitHub or here :)
[Android Apps and Games] mathorv:
By whitelist you meant https://github.com/JusticeRage/ApkTrack/blob/master/assets/sources.json ?

I am missing

F-Droid as I mentioned line above

cSploit https://github.com/cSploit/android/releases

Router Keygen https://github.com/routerkeygen/routerkeygenAndroid/releases

Lucky Patcher - great app manager and hosts file updater besides of its other infamous features(grab first line from http://chelpus.defcon5.biz/Changelogs.txt)

All the spicy goodies.

Edit:

There are three Xposed channels, not just only two: stable, beta and experimental.

Is there possibility for choosing default xposed channel :S/B/E?

PS. You are right I am definitely missing github account.
[Android Apps and Games] sui81:
[MENTION=231896]dev[/MENTION]

Could you include a Option, to auto detect updated/newly installed Apps after startup ApkTrack ?
[Android Apps and Games] Fleux:
can't install

Pls help me. I really need this app. But i can't even install it

I'm using oppo r819

4.2.1
[Android Apps and Games] Portgas D. Ace:
Installation instruction: download the apk, put it onto your device's storage, use a file explorer and browse to the file's path, click on the apk.

If you want others to help you, please include more information (for example an error message you receive during installation), otherwise no one is able to help you ;)
[Android Apps and Games] Fleux:
still cant install

There is no error message

After the app ask for permissions, there's only "App not Installed"

Honestly I'm new in this kind of thing. But is there a difference between phone storage and device storage, because somehow i just can't find the device storage.
[Android Apps and Games] Portgas D. Ace:
Your device = your phone. Thus there is no difference between phone storage and device storage.

You could try to download the F-Droid client (an alternative app market for open-source apps). Then you can search for ApkTrack and install it through F-Droid.
[Android Apps and Games] jb91:
Just discovered this app - definitely very useful. However, on my device (Nexus 4) it doesn't seem to find update info for a lot of apps (for example Shazam, AirDroid, TeamViewer,...).

It just says "no update information found", but these are standard play store apps downloaded via Raccoon. What can I do to fix this?
[Android Apps and Games] JusticeRage:
Hey XDA, it's been a while, and I apologize for this. I've had a lot of work these days, and there's another program I'm trying to clean up before open-sourcing it (it's related to windows malware analysis, so no connection to Android there).

Anyway, I have received requests to lower ApkTrack's API level in order to be compatible with more devices. I have worked on that, and the app can now be installed on any 4.0.3+ Android system.

I have also looked into that. The problem is likely that AppBrain has found new ways to block ApkTrack. I have (once again) added countermeasures on my side, but it seems that a capcha is still served after too many non-existent apps are requested... And it happens a lot when performing a full check.

I'll be working on a server which caches requests, as they requested in our previous e-mail exchange, and this should solve this once and for all.

After that, I still intend to implement a way to ignore some apps, and I'd like to improve notifications as well (I don't like that ApkTrack mentions available updates multiple times).

As always, the latest beta APK can be found here: I'll move all this to the stable channel as soon as it looks like the app works fine on 4.0 and 4.1 devices.

Oh, and one last thing: I'd like to give my heartfelt thanks to the people who donated bitcoins to the project! I don't know who you are, but I sure like you.
[Android Apps and Games] JusticeRage:
Hi everyone!

I have finally written a web proxy for AppBrain, which will cache version information for 24 hours and reduce the amount of traffic we've been sending towards them.

Most of the time, it's actually quicker than querying AppBrain directly, because their webpages have so much content.

I've sent them an e-mail to let them know about it and ask if they could whitelist my IP. I'm not moving ApkTrack to this proxy just yet, because if they have changed their mind since the last e-mail, that'll create a single point of failure (they'll just blackhole the server's IP and all ApkTrack users will be impacted).

I hope I'll have good news on this topic next week! Otherwise, we'll have to go back to that web-scraping block-me bypass-you game :(
[Android Apps and Games] Ban Dan:
Dear JusticeRage,

Congratulations for the smart move! and Thank you for all your efforts!

It's the right way to go for MANY good reasons.

Just as long as you keep the current (or similar alternative) app direct access method as a fallback for when the server access lags or fails, than there is no single point of failure.

Have you looked at the very nice and quick

androidquery.appspot.com/api/market?app=xxx

used by, the now abandoned, com.telmah.updatechecker?

These days it is often flooded (returning error 500), but you may be able to get a reply sometimes.

Being open source you may take a look at it and adopt a lot from it.

A few further quick points I'd like to raise:

- 24 hours cache is very adequate, except on the day an app is updated.

It'll ve very useful to have a "request update" flag the user can raise. You can then decide (server side), how long since your last update (1-3 hours) to grant such a request.

- please make the server internals, and the interface to it, general and flexible enough so it can use multiple information sources (brain, store, Aptoide,... ) as well as providing the users easy ways to suggest more sources, and allow fallback to use the direct app access with their own appended (+overriding ) "sources.json" file.

- would be great to, maybe later, also be able to keep and report with the version string (and build number!), also the URL for downloading the apk.

- please allow your protocol (json based? ) to provide for multiple request aggregation in one http access. This can allow for yet another level of speedup.

Thank you!
[Android Apps and Games] JusticeRage:
Hi Ban Dan. Many points to address in your post:

I hadn't, but my service is basically the same. I don't use JSON because ApkTrack's design philosophy is more based around regular expressions, but I may look into this later if other people are interested in querying it.

What you said about this appspot app (it being flooded) worries me a little. All I did was write a simple Python/Flask app with SQLite running on an nginx stack. Oh, and it's hosted on a VPS. I have no idea how it scales. If have no idea IF it scales.

I don't like tracking, so I'm not doing any regarding ApkTrack's user base. This means I have literally no idea how many people are using the app. Not a clue. I'm curious to see what happens.

I would like to point out that I'm creating a webservice targeted at ApkTrack here. I don't think a "force update" button would make sense in the app, and I'm okay with the fact that users will be notified of updates with a couple hours of delay. I mean, I'm not sure updates are instantaneous on the Play Store either. The goal of ApkTrack has always been to remind users of available updates. Having that information immediately when it becomes available seems a bit out of scope to me.

Allowing users to manipulate their sources.json file is a nice idea in theory, but in practice, it means people have to write regular expressions. On a mobile phone keyboard. That will never work in my opinion. The best I can offer is to accept pull requests on GitHub if anyone wants to make an addition to the file.

I mean, if you can write regexps, you can probably use Git too.

There is currently ongoing work by an ApkTrack contributor to create an Evozi-like service that the app will be able to use to provide up-to-date APKs for any application. I'm not writing any code for this, but I hope this succeeds. It would be a great addition.

As for the report, it feels yet again out of ApkTrack's scope. I'm not trying to build an AppBrain competitor here, I just want to provide update information for ApkTrack users. If people wants to reuse the data, be my guest, but I'm not going to collect more info that I'm not going to use.

That's a good point. Enabling this will probably require some work in ApkTrack's internals, but it could (theoretically) enable full checks in a single query. I'll have to do some testing on this.
[Android Apps and Games] Ban Dan:
Dear JusticeRage,

Thanks for the clear and extensive reply!

Just trying to offer my 2 cents.

Please take anything useful, and leave aside the rest :)

>> AndroidQuery/market...

> I may look into this later if other people are interested in querying it.

AndroidQuery/market is also very interesting because it directly and very quickly fetches Google Shop info!

> All I did was write a simple Python/Flask app with SQLite running on an nginx stack.

I'm not sure I understand.

Does it only scrape Brain and cache those results?

I imagined you would duplicate in the Server the working of the App for all sources and have the App query it with "App ID"+"Source ID" pairs.

And if the Server lags, or fails or reports it is being blocked by the source, than the App will do it directly.

> I don't like tracking, so I'm not doing any regarding ApkTrack's user base.

Well said! Well done!

> I'm okay with the fact that users will be notified of updates with a couple hours of delay.

Won't a 24 hours cache make it be more like 12 hours average, up to 24 hours?

> Allowing users to manipulate their sources.json file is a nice idea in theory, but in practice, it means people have to write regular expressions. On a mobile phone keyboard. That will never work in my opinion.

I'm doing it all the time :)

My phone is my computer.

The big advantage of having one's own sources.json override file is that it's EXTREMELY EASY to experiment and verify the new entry.

It will be also great if the Search URLs can be another optional "Search" part of each source!

> create an Evozi-like service that the app will be able to use to provide up-to-date APKs for any application.

Why rely on any specific one?

Another way could be to have an optional "Download" part (closely related to the "Search" part ) for sources. The user can than set for each App also the proper download source (with a global default).

> As for the report, it feels yet again out of ApkTrack's scope. I'm not trying to build an AppBrain competitor here, I just want to provide update information for ApkTrack users. If people wants to reuse the data, be my guest, but I'm not going to collect more info that I'm not going to use.

Sorry for the easily misleading use of the word "report" :(

what I mean is that getting and showing the build number (like AndroidQuery does) makes it trivial to compare versions with very complicated version strings.

Take care,

please keep up the good work!
[Android Apps and Games] Ban Dan:
A minor bug report:

Apps that get "No update information found" from F-Droid don't update the "Last check" date.

Would be nice to have Sort by "Last check" date, and a way to re-query just from some date back.

Would also be useful to have sort by Source.
[Android Apps and Games] Ban Dan:
And a bit more:

For some reason a few of AppBrain results are colored Gray, and sorted by Status to the end, instead of being colored Green or Red.

Also note that the Google reply "Varies with device" itself varies with location - returned in a local language!

The status sorting is Really very helpful!

One can easily see up top the Apps that requires attention.

You may consider further refining:

Red

Gray: null, no update information found, Never checked

Yellow: depend on device, installed>current

Green

It may be nice for people with MANY Apps to be able to mark Favorites which will come up top.

For people with limited memory it can be useful to be able to go on tracking updates of Apps they have temporarily UNINSTALLED.

Just my 2 cents :)

Please keep up this most useful project, Thank you!
[Android Apps and Games] oodork123:
Thought of this idea long time ago but the moment I tried it I didn't even know some of my apps were outdated. (cheers)
[Android Apps and Games] JusticeRage:
I'm always glad that this app is helpful!

I have pushed the 1.1h version a couple of days ago: although I haven't received a response from AppBrain, the app now points to my proxy which caches requests and greatly reduces the amount of requests we send them - and in turn makes them less angry. Let's hope they don't ban my IP, otherwise we'll have to go back to our old ways :(

I think that ApkTrack has reached a somewhat stable state where users can obtain their update information reliably. This means we can go back to working on features.

I have been doing some tests recently to implement an "ignore" feature, where users would be able to remove apps from the list and exclude them from update checks. I'd like to do this with a swipe gesture: moving the app out of the screen would mean that the user is not interested in tracking a particular app. There's also be a nice "undo" button like in the good looking apps to cancel an accidental gesture.

I have read here and there that the new RecyclerView introduced in Lollipop is the right component to do this, and I'm currently playing around with it to figure out how it works. It is clear to me that replacing my legacy ListView will take some work, but I intend to take this opportunity to clean up the code base once more and squash a lot of small but annoying bugs that you have probably noticed.

I also intend to make all the database interaction a lot more streamlined. When I started working on ApkTrack, I had no idea it would grow so much and I was doing all the SQL by hand: it's time to use a real ORM library (I have my eyes on Sugar).

So. What this means is that I'm mostly freezing features on branch 1.1, and start working on 2.0! As long as 2.0 isn't released, I will of course fix bugs on the current version, and play any cat and mouse game necessary with the update sources.

Thanks again for following this project!
[Android Apps and Games] JusticeRage:
To follow up on yesterday's post, the work I'm doing on the UI right now was way overdue. By taking things from scratch, I've managed to reproduce the look & feel of the app with a lot less code and hacks.

Plus, I think I've found a way to make all those loadings go away. I'm feeling very proud right now, so here's a sneak peek into the future: