existe-t-il un moyen d'interroger la version d'une application sur le Play Store sans avoir besoin d'informations d'identification de l'utilisateur? Je suis au courant de cette API non officielle:
http://code.google.com/p/Android-market-api/
mais je ne veux pas compter sur les informations d'identification des utilisateurs - je peux également visiter les sites de jeu de Google en mode incognito via Chrome -, donc cela doit être possible d'une manière ou d'une autre. Mais je n'ai trouvé aucun moyen et je ne veux pas me rabattre sur le raclage ;-)
Trouvé une API appropriée via G +: C'est l'API: https://androidquery.appspot.com
exemple d'appel: https://androidquery.appspot.com/api/market?app=org.ligi.fast
et ce wrapper/code: https://github.com/androidquery/androidquery
Google Play ne fournit aucune API officielle permettant de récupérer les métadonnées. Vous pouvez toutefois vérifier l’API non officielle à l’adresse http://code.google.com/p/Android-market-api/ .
Plus précisément, consultez la page Wiki HowToSearchApps . La réponse à la requête contient des informations sur la version:
Votre requête sera quelque chose comme:
String query = "maps";
AppsRequest appsRequest = AppsRequest.newBuilder()
.setQuery(query)
.setStartIndex(0).setEntriesCount(10)
.setWithExtendedInfo(true)
.build();
session.append(appsRequest, new Callback<AppsResponse>() {
@Override
public void onResult(ResponseContext context, AppsResponse response) {
// Your code here
// response.getApp(0).getCreator() ...
// see AppsResponse class definition for more infos
}
});
Votre réponse sera au format:
{
"app": [
{
"rating": "4.642857142857143",
"title": "Ruboto IRB",
"ratingsCount": 14,
"creator": "Jan Berkel",
"appType": "APPLICATION",
"id": "9089465703133677000",
"packageName": "org.jruby.ruboto.irb",
"version": "0.1",
"versionCode": 1,
"creatorId": "\"Jan Berkel\"",
"ExtendedInfo": {
"category": "Tools",
"permissionId": [
...
Bien entendu, vous pouvez utiliser un analyseur JSON ou effectuer une recherche de chaîne.
Consultez également: www.playstoreapi.com
C'est officieux mais facile à utiliser (gratuit pour une utilisation non commerciale). vous pouvez obtenir des données sur les applications, effectuer une recherche dans le Play Store et obtenir les données des meilleurs graphiques. de leur section de documentation:
Node.js:
var request = require('request');
var apiKey = 'wij5czxu3mxkzkt9'; // your API key
var packageName = 'com.whatsapp'; // package Name, e.g. com.whatsapp for WhatsApp
var url = 'http://api.playstoreapi.com/v1.1/apps/' + packageName + '?key=' + apiKey;
request({
url: url,
json: true
}, function (error, response, body) {
if (!error && response.statusCode === 200) {
console.log(body) // Print the json response
}
});
HTML/JS:
<html>
<head>
<body>
<p></p>
<script src="//ajax.googleapis.com/ajax/libs/jquery/1.11.0/jquery.min.js"></script>
<script>
var apiKey = 'wij5czxu3mxkzkt9'; // your API key
var app = 'com.whatsapp'; // package com.whatsapp for WhatsApp
var url = 'http://api.playstoreapi.com/v1.1/apps/' + app + '?key=' + apiKey;
$.getJSON(url).done(function(appDetails) {
$('p:last').html(JSON.stringify(appDetails));
});
</script>
</body>
</head>
<html>
Python:
import urllib2
import json
packageName = 'com.whatsapp' # package com.whatsapp for WhatsApp
apiKey = 'wij5czxu3mxkzkt9' # your API key
url = 'http://api.playstoreapi.com/v1.1/apps/{0}?key={1}'
response = urllib2.urlopen(url.format(packageName, apiKey))
data = json.load(response)
print data
C # .NET:
string apiKey = "wij5czxu3mxkzkt9"; // your API key
string app = "com.whatsapp"; // package com.whatsapp for WhatsApp
string url = "http://api.playstoreapi.com/v1.1/apps/{0}?key={1}";
using (var webClient = new System.Net.WebClient()) {
string jsonString = webClient.DownloadString(string.Format(url, app, apiKey));
}
Gardez à l'esprit que de nombreuses applications utilisent actuellement plusieurs versions. Pour les applications avec une version, vous pouvez essayer 42matters Lookup API , il devrait vous donner la version correcte.