2014-07-16 3 views
0

서버의 일부 분석 정보를 기록하는 데 사용할 응용 프로그램 소스에 포함될 안드로이드 라이브러리를 만듭니다. 사용자가 SDK API를 사용하여 새 버전의 응용 프로그램 (라이브러리 아님)으로 업그레이드했는지 확인하고 싶습니다. 응용 프로그램 개발자가 버전 변경을 나타 내기 위해 매니페스트에서 아무 것도 변경하지 않도록하기 위해 노력하고 있습니다. 이미 서버의 각 장치를 식별하는 메커니즘이 있습니다. 이 경우 서버에 접속하려고 할 때 .apk가 업그레이드되었는지 확인하는 방법이 있습니까?새 apk가 설치되었는지 확인하는 방법은 무엇입니까?

지금까지 PackageInfo.lastUpdateTime이 변경된 것을 발견했습니다. PackageInfo.signatures 내용도 변경 될 것이라고 생각했지만 응용 프로그램 코드를 변경하더라도 변경되지 않았습니다. 어떤 도움을 주시면 감사하겠습니다.

답변

2

BuildConfig.VERSION_CODE을 보내지 않으십니까? 값이받은 마지막 값과 다른 경우 업데이트되었습니다. 응용 프로그램을 업데이트하려면 버전 코드가 최소한 이전 버전보다 커야합니다. Google Play 스토어에 게시하려면 버전 코드를 늘려야합니다.

+0

'업데이트 할 애플리케이션 용'- 완전히 사실이 아닙니다. Google Play 스토어 요구 사항입니다. 사이드로드 (개발 중일 때와 같이)가 필요하지 않습니다. –

+0

아니요, * 업그레이드 *해야합니다. 응용 프로그램을 제거했다가 다시 설치하면 버전 번호가 중요하지 않습니다. * 설치를 업그레이드하려면 ('adb install -r ') versionCode를 변경해야합니다. – kcoppock

+0

업그레이드가 기존 설치를 통해 설치하는 것을 의미한다면 versionCode를 건드리지 않고도 할 수 있습니다. –