Force les utilisateurs à avoir la dernière version de l'application Android

Est-il possible de vérifier lors du démarrage d'une application Android si l'utilisateur a la dernière version de celui-ci et l'obliger à mettre à jour s'il n'a pas? Ou au moins vérifier s'il existe une nouvelle version et lui dire que l'application ne fonctionnera que quand il télécharge et installe la mise à jour?

L'arrière-plan est que j'ai une application qui doit communiquer avec un serveur. Lorsque je change quelque chose dans l'interface entre le serveur et le client, je souhaite assurer que le client possède la dernière version.

  • Quand annuler l'enregistrement de BroadcastReceiver? Dans onPause (), onDestroy (), ou onStop ()?
  • Dagger 2 Build IllegalArgumentException compileDebugJavaWithJavac
  • Android: utilisez WebView pour évaluer une chaîne javascript et renvoyer la valeur
  • Obtenir ClassCastException lorsque vous essayez d'insérer RelativeLayout dianmiquement?
  • Obtenir le fuseau horaire local du périphérique
  • Implémentez la curl de la page sur Android?
  • Existe-t-il une manière native de le faire? Ou dois-je vérifier cela par moi-même?

    Est-ce que cela n'est accessible que si vous avez une base de données mysql? Est-il possible de le faire avec un simple texte sur une page Web et de le vérifier avec la version de l'application en cours?

    One Solution collect form web for “Force les utilisateurs à avoir la dernière version de l'application Android”

    Est-il possible de le faire avec un simple texte sur une page Web et de le vérifier avec la version de l'application en cours?

    C'est ce que je ferais:

    Vérification de la dernière version sur votre serveur, dans un fichier texte:

    HttpClient client = new DefaultHttpClient(); HttpGet request = new HttpGet(url); HttpResponse response = client.execute(request); String latestVersion = ""; InputStream in = response.getEntity().getContent(); BufferedReader reader = new BufferedReader(new InputStreamReader(in)); StringBuilder str = new StringBuilder(); String line = null; while((line = reader.readLine()) != null) { str.append(line); } in.close(); latestVersion = str.toString(); 

    Puis comparez-le à la version installée:

     private String getSoftwareVersion() { try { PackageInfo packageInfo = getPackageManager().getPackageInfo(getPackageName(), 0); return packageInfo.versionName;//EDIT: versionCode would be better } catch (PackageManager.NameNotFoundException e) { Log.e(TAG, "Package name not found", e); }; } 
    coAndroid est un fan Android de Google, tout sur les téléphones Android, Android Wear, Android Dev et Android Games Apps.