获取谷歌Play 里APP的版本号

谷歌Play没有提供Api来获取App的版本号。

但是有个 https://play.google.com/store/apps/details?id=com.xxx.xxx,id是包名。

那就只能用Jsoup来解析网页,从而获取谷歌Play展示的版本号,Jsoup 的 jar包下载地址https://jsoup.org/download

public class CheckVersionAsyncTask extends AsyncTask<String,String,String>{
    Context context;
    String currentVersion;
    String oldVersion;
    private String latestVersion;

    public CheckVersionAsyncTask(Context context, String oldVersion) {
        this.context = context;
        this.oldVersion = oldVersion;
    }


    @Override
    protected String doInBackground(String... params) {

        try {
            latestVersion = Jsoup.connect("https://play.google.com/store/apps/details?id=" + context.getPackageName())
                    .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.hAyfc:nth-child(4) > span:nth-child(2) > div:nth-child(1) > span:nth-child(1)")
                    .first()
                    .ownText();
            Log.e("latestversion","---"+latestVersion);

        } catch (IOException e) {
            e.printStackTrace();
        }
        return latestVersion;

    }

    @Override
    protected void onPostExecute(String latestVersion) {
        if(latestVersion!=null){
            if(!latestVersion.equalsIgnoreCase(oldVersion)){
                 Toast.makeText(context,"需要更新咯",Toast.LENGTH_LONG).show();

            }else {
                Toast.makeText(context,"一样的",Toast.LENGTH_LONG).show();
            }
        }
        super.onPostExecute(latestVersion);

    }

}

这个网页不是不变的,所以个人建议不可取,那怎么办呢??????????

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值