2017-11-08 6 views
0

내 자신의 외부에있는 앱의 versionCode에 대한 내 서버의 json 파일을 확인하고 서버의 json에있는 versionCode가 보다 큰 경우 앱 외부에있는 앱 중 하나 인보다 큰 기능을 추가하려고합니다. 내 자신, 다음 업데이트 작업을 수행하십시오.내 앱 외부에 앱의 versionCode를 가져 오는 방법은 무엇입니까?

업데이트 작업이 제대로 작동하지만 외부 앱의 versionCode를 가져 오는 중에 문제가 발생합니다. versionCode는 항상 외부 앱의 실제 버전 대신 0으로 반환됩니다.

왜 올바른 버전을 반환하지 않습니까?

public static int getinstVersionCode(Context mContext) { 
    if (mContext != null) { 
     try { 
      return mContext.getPackageManager().getPackageInfo(Constants.PACKAGE_NAME, 0).versionCode; 
     } catch (PackageManager.NameNotFoundException ignored) { 
     } 
    } 
    return 0; 
} 

PACKAGE_NAME 내 서버에 JSON 파일에서 개최 된 com.example.app 응용 프로그램 패키지 이름과 같다 :

여기

은 다른 응용 프로그램의 버전 코드를 가져 오는 내 코드입니다
static final String APK_VERSION_CODE = "versionCode"; 
static final String PACKAGE_NAME = "package"; 

그리고 마지막으로, JSON은 자체 파일 :

"versionCode":0, 
"package":"com.example.app", 

답변

0

예외를 확인하십시오. 가져 오려는 버전이 장치에 있어야하며 패키지 이름과 정확히 일치해야합니다.

+0

내 서버의 json에있는 패키지 이름을 내 apk에 설정하더라도 0 만 반환합니다. 패키지 이름이 정확합니다. – Zuuchq

+0

예를 들어 "com"과 다른 버전을 반환하는 것이 맞는지 확인하십시오. .android.chrome ". – GoranNSW