如何获取扩展文件的URL?

问题描述

如果用户已删除扩展文件,如何从Google Play获取扩展文件网址以下载文件。

解决方法

您必须使用LicenseChecker来获取扩展文件的URL,名称或大小。

  private LicenseChecker mChecker;
  private String expFileUrl;

MainActivity上使用此方法:

 private void setLicenseChecker() {
        String deviceId = android.provider.Settings.Secure.getString(this.getContentResolver(),android.provider.Settings.Secure.ANDROID_ID);

        final APKExpansionPolicy aep = new APKExpansionPolicy(this,new AESObfuscator(SALT,this.getPackageName(),deviceId));

        // reset our policy back to the start of the world to force a
        // re-check
        aep.resetPolicy();

        // let's try and get the OBB file from LVL first
        // Construct the LicenseChecker with a Policy.
        mChecker = new LicenseChecker(this,aep,BASE64_PUBLIC_KEY);

        mChecker.checkAccess(new LicenseCheckerCallback() {
            @Override
            public void allow(int reason) {
                expFileUrl=aep.getExpansionURL(0);
                Log.d(LOG_TAG,"Obb name:"+aep.getExpansionFileName(0));
                Log.d(LOG_TAG,"Obb size:"+aep.getExpansionFileSize(0));
                Log.d(LOG_TAG,"Obb Url:"+aep.getExpansionURL(0));
                Log.d(LOG_TAG,"Obb Count:"+aep.getExpansionURLCount());
            }
            @Override
            public void dontAllow(int reason) {
            }
            @Override
            public void applicationError(int errorCode) {
            }
        });
    }
 @Override
    protected void onDestroy() {
        super.onDestroy();
        mChecker.onDestroy();
    }

相关问答

错误1:Request method ‘DELETE‘ not supported 错误还原:...
错误1:启动docker镜像时报错:Error response from daemon:...
错误1:private field ‘xxx‘ is never assigned 按Alt...
报错如下,通过源不能下载,最后警告pip需升级版本 Requirem...