Warning: This is an answer in progress. If at all. Maybe it's an overlarge comment. I have no clue. But I hope to extend it with time. If not, it may provide information for other truth seekers. Indiana Jones -- Raiders of the Lost Apps.
Thanks to J.M.Arnold for his supportive efforts!
Preface
The official documentation is the site Linking to Google Play on the Android Dev Docs. Neither there nor anywhere else one finds a restriction on the number of apps to be shown.
Idea 1: Applying Google Search semantics
Can one apply the parameters for Google's search engine like num
on Google's play store?
Result: Negative. Tried it. Correct me, if I'm wrong.
Idea 2: Who can what we can't?
Does any site or store display all play store apps of Rollic Games (our animal de laboratoire)?
Result:
- mobileaction.co: Nope, shows also exactly 150 apps
- apkpure.net, a kind of play store mirror, shows us all 156 apps on 8 pages. Access pattern (PHP-alike pseudocode):
$i = 1;
$HTMLcode = 0;
while($HTMLcode != 404) // one gets the general idea, I suppose, for precision see https://developer.mozilla.org/en-US/docs/Web/HTTP/Status
{
$HTMLcode = access("https://apkpure.net/developer/Rollic%20Games?page=".$i);
$i++;
}
- Several other sites show even less than 150 apps.
So, let's stop here. How does apkpure.net know about >150 apps, when the play store itself shows maximum 150? Where's the crystal skull? (No, the play store seems to ignore a "page" parameter or similar stuff, so that's not the point).
Well, J.M.Arnold played around with the apps on APKPure and noticed that about 5%-10% percent of the apps listed by big publishers aren't on the Android Store. He suggests that they may have scraped them over time, i.e. they are not searching for specific publishers and may have just added new apps over time to their repository. By constant scraping one could explain this phenomena.
Idea 3: Scrape it!
Some open-source play store scraper like google-play-scraper. Does that show everything? And if yes, how? What secrets are hidden in those ancient javascript runes?
Some time later... So. Installed google-play-scraper
via npm
and wrote three self-explaining scripts (for docs see link above) which should output up to 200 hits:
Search apps via developer by numeric ID:
var gplay = require('google-play-scraper');
gplay.developer({devId: "6018074114375198913", num: 200}).then(console.log);
Search apps via developer by name:
var gplay = require('google-play-scraper');
gplay.developer({devId: "Rollic Games", num: 200}).then(console.log);
Search by developer resp. publisher via, well, search()
function by name:
var gplay = require('google-play-scraper');
gplay.search({term: "pub:Rollic Games", num: 200}).then(console.log);
Execute per shell e.g. by Bash with
$ node script.js > result.txt
Check results e.g. with cat result.txt
for correctness and count the apps:
$ cat test.txt | grep "title: " | wc -l
Result: Negative. All three scripts find exactly the same apps. And exactly 100, though the num
value for the search()
function allows up to 250:
num
(optional, defaults to 20, max is 250): the amount of apps to retrieve.
Great. Not even 150 hits for a search by numerical dev ID.
(Edit: J.M.Arnold got 150 with the first approach, which would be actually the expected result. Strange.)
Cringe... I'll take a look into the scraper's source code to find something useful.
Later... Looking into the scraper's source hasn't brought much. Interestingly it seems to apply the num
parameter known from Google Search. However, as we already know by manual tests as well as using the scraper, it is ignored. However that might indicate, that it maybe was supported in the past. Or not, who knows.
Intermediate Conclusion
Kind of dead-end for now. We need somehow more info.
Note: See the last comments below for the most recent developments. However, there's no breakthrough so far.