新しい更新を確認する方法は、プレイストアで利用できるかどうかです。これを得る簡単な方法はありますか?バックエンドサーバー/ Webサービスを使用せずにプレイストアでアプリケーションのバージョンを確認しますか?
制限。 1.カスタムWebサービスはありません。
は
- ユーザーエージェントを使用することができます。
- Googleが提供するすべてのAPI。
助けてください。
新しい更新を確認する方法は、プレイストアで利用できるかどうかです。これを得る簡単な方法はありますか?バックエンドサーバー/ Webサービスを使用せずにプレイストアでアプリケーションのバージョンを確認しますか?
制限。 1.カスタムWebサービスはありません。
は
助けてください。
使用このヘルパーメソッドをPlayストアで
private String getPlayStoreVersion(){
final String PLAY_STORE_URL = "https://play.google.com/store/apps/details?id=%s&hl=%s";
final String PLAY_STORE_TAG_RELEASE = "itemprop=\"softwareVersion\">";
String version = "0.0.0.0";
Boolean isAvailable = false;
String source = "";
OkHttpClient client = new OkHttpClient();
String formedString = String.format(PLAY_STORE_URL,"com.demo.application.yourapp",Locale.getDefault().getLanguage());
ResponseBody body = null;
try {
URL playStoreURL = new URL(formedString);
Request request = new Request.Builder().url(url).build();
Response response = client.newCall(request).execute();
body = response.body();
BufferedReader reader = new BufferedReader(new InputStreamReader(body.byteStream(), "UTF-8"));
StringBuilder str = new StringBuilder();
String line;
while ((line = reader.readLine()) != null) {
if (line.contains(PLAY_STORE_TAG_RELEASE)) {
str.append(line);
isAvailable = true;
}
}
response.body().close();
source = str.toString();
if (isAvailable) {
String[] splitPlayStore = source.split(PLAY_STORE_TAG_RELEASE);
if (splitPlayStore.length > 1) {
splitPlayStore = splitPlayStore[1].split("(<)");
version = splitPlayStore[0].trim();
}
}
return version;
} catch(Exception e){
e.printStackTrace();
}
return version;
}
注意更新されたバージョンを見つけるために:バックグラウンドスレッドで使用
すぐにご連絡を差し上げます。 thnx – young
をだから私は、私は問題の簡単な解決策があると思います。
依存が必要です。
compile 'org.jsoup:jsoup:1.7.3'
サンプルコード
class GetVersionCode extends AsyncTask<Void, String, String> {
private static final String currentVersion = "x.x.xx";
static final String packageName = "com.xxx.xxx";
@Override
protected String doInBackground(Void... voids) {
String newVersion = null;
try {
newVersion = Jsoup.connect("https://play.google.com/store/apps/details?id=" + packageName + "&hl=it")
.timeout(30000)
.userAgent("Mozilla/5.0 (Windows; U; WindowsNT 5.1; en-US; rv1.8.1.6) Gecko/20070725 Firefox/2.0.0.6")
.referrer("http://www.google.com")
.get()
.select("div[itemprop=softwareVersion]")
.first()
.ownText();
return newVersion;
} catch (Exception e) {
// HTTP error fetching URL, 404
return newVersion;
}
}
@Override
protected void onPostExecute(String onlineVersion) {
super.onPostExecute(onlineVersion);
if (null == onlineVersion) {
// Some error occurred
return;
}
if (onlineVersion.compareTo("") == 0) {
// Some error occurred
return;
}
Toast.makeText(getApplicationContext(), onlineVersion, Toast.LENGTH_SHORT).show();
}
}
使用firebaseコンソール –
使用firebase remoteconfig。 https://firebase.google.com/remoteconfig – eriuzo