2011-02-14 7 views
17

마켓에 앱의 새 버전을 게시하려고합니다. 일단 시장에 푸시되고 사람들이 업데이트 사실을 통보 받으면 잠재적 인 문제를 피하기 위해 게시 할 앱의 새 버전에 .apk를 사용하여 휴대 전화에서 해당 프로세스를 시뮬레이션하고 싶습니다.앱 업데이트를 시장에 게시 할 때 어떤 일이 일어나는지 테스트하는 방법

예를 들어, 사용중인 SQLite DB에 대한 업데이트가 있습니다.

나는 명령을 사용하여 안드로이드 디버그 브리지 (ADB)을 사용하고 찾을 수있는 가장 가까운 : USB 케이블을 통해 내 PC에 연결된 내 전화 adb install C:\myApplication.apk 합니다. (매개 변수는 APK 파일이 PC에있는 모든 위치를 나타냅니다). 나는이 작업을 수행 할 때 응용 프로그램이 이미 내 휴대 전화에 설치되어있는 경우

는, 나는 오류 메시지 :

않으면 이미 실패 EXISTS 설치합니다.

휴대 전화에서 기존 앱을 삭제하면 adb install 명령이 정상적으로 작동합니다. 휴대 전화에 현재없는 앱을 설치하는 데만 사용할 수있는 것 같습니다.

업데이트 프로세스를 시뮬레이션 할 수있는 방법이 있습니까? adb update 명령이 있다면 좋겠지 만 나는 그것을 보지 못합니다.

답변

1

에 설치하는 것을 의미 나는 당신이 시장이 설치된 버전을 체결하고이 디버그 버전을 체결 설치하려고 때문에 당신의 오류라고 생각합니다. 마켓 키로 서명하면 잘 설치해야합니다.

+0

이것은 사실이 아닙니다. 앱이 이미 설치되어 있다면 서명 키와 상관없이'adb install'은 올바르게 설치하기 위해'-r' 옵션을 요구합니다. 그리고 서명 키가 잘못되면 INSTALL_PARSE_FAILED_INCONSISTENT_CERTIFICATES 오류가 발생합니다 (아래의 @charlest 주석에서 언급했듯이). (http://stackoverflow.com/questions/4993946/how-to-test-what-will-happen-when- app-to-the-marke # comment5580744_4994089)를 업데이트하십시오. –

2

가장 가까운 곳은 APK를 어딘가에 배치하고 전화로 다운로드하는 것입니다. 이는 "알 수없는 출처"옵션을 추가해야한다는 점만 제외하면 실제 시장 상황에 가장 근접 할 수 있다는 것입니다.

(A (!) 참고에 : 동일한 패키지 이름의 APK를 설치 오류,하지만 다른 서명을받을 수 있습니다.)

31

옵션 -r를 사용해보십시오 adb install에 :

ADB 설치 [ -l] [-r] [-s] - 이 패키지 파일을 기기에 푸시하고 을 설치하십시오 ('-l'은 앱을 앞으로 잠그는 것을 의미합니다) ('-r'은 앱을 재설치하고 데이터) ('-s' SD 카드 대신 내부 스토리지)

+0

고마워요! 그 일은 그 일을 처리했습니다. Google 사이트에 설치 옵션을 살펴 보았습니다. 내 PC에서 실제 명령을 실행하면 언급 한 옵션이 나타납니다. 한 가지 발견 한 사실은 다른 키 저장소로 서명 된 .apk로 대체하려고하면 INSTALL_PARSE_FAILED_INCONSISTENT_CERTIFICATES라는 오류 메시지가 나타납니다. 그래서 유일한 제한은 동일한 인증서로 서명 된 .apk로 대체해야한다는 것입니다. – charlest

+0

@charlest 좋아요. 서명하는 것은 보안 조치입니다. 기본적으로 장치에 업로드하기 위해 이전 버전을 유지 한 다음 업그레이드 테스트 (증분)를 유지해야합니다. –

+1

'-r' 옵션이 앱의 데이터베이스 파일을 보존하므로 이것은 정확합니다.업그레이드 된 앱을 처음 실행하면 데이터베이스 도우미가 테스트를 위해 필요에 따라'onUpdate()'를 호출합니다. –