2010-03-16 3 views
4

나는 세 가지 응용 프로그램 (app-1, app-2app-3)으로 분기 한 Android 프로젝트를 보유하고 있으며 일부 사용자 정의가 적용됩니다. 현재 코드 중복이 많이 발생하여 유지 관리가 악몽입니다. ​​분기 중 하나에서 변경을 수행 한 다음 다른 두 개를 병합합니다.클래스 경로가 변경된 후 Android에서 앱 서명이 변경되는 이유는 무엇입니까?

따라서 중복 된 코드의 대부분을 제외시키는 app-core이라는 라이브러리 프로젝트를 만듭니다. 여태까지는 그런대로 잘됐다.

Re-installation failed due to different application signatures

다른 서명 :

나는 응용 프로그램이 이미 (리팩토링 전)로드 된 에뮬레이터에이를 시작

는,이 예외가? 하지만 난 .classpath에 라인을 추가하여 app-core Java 프로젝트에 링크하십시오!

주요 질문은 : 기존 사용자가이 문제로 귀찮게 할 것입니까?

그리고 측면 질문 : 왜 다른 서명입니까?

+0

에뮬레이터에 릴리스 또는 디버그 빌드가 있습니까? –

답변

12

디지털 서명은 앱에 서명하는 컴퓨터에있는 서명 키로 구동됩니다. 개발자 A가 표준 디버그 키를 사용하여 앱을 컴파일하고이를 에뮬레이터에 설치 한 다음 프로덕션 키로 서명 한 앱, 개발자 B의 디버그 키로 서명 한 앱 등을 앱의 다른 변형 버전을 설치하려고합니다. 동일한 에뮬레이터를 사용하면 오류가 발생합니다.

The main question is: are the existing users going to be bothered by this too?

기존 사용자가 사용중인 앱 버전에 사용한 프로덕션 서명 키가 있습니까? 그렇다면 문제가 없어야합니다. 그렇지 않다면, 당신은 망했다.

+0

프로덕션 서명 키를 가져 오는 방법이 있습니까? 또는 정말로, 나는 망했다? –

+0

@PradipKharbuja : "생산 서명 키를 구할 수있는 방법이 있습니까?" - 앱을 선적하기 전에 앱을 만들었습니다. – CommonsWare

+0

그 열쇠를 다시 검색 할 수 있습니까? 내가 잃어 버렸기 때문에 ... : ( –

1

장치에서 응용 프로그램을 제거한 다음 코드를 다시 실행하면 작동합니다. 그것은 저를 위해 일어나고 동일한 것을 시도했다, 지금 정확하게 작동하고있다.

0

(Windows-> 환경 설정 -> Android-> 빌드)에서 올바른 키가 사용되는지 확인해야합니다. 이 앱의 android.mk 파일에서 확인할 수 있습니다. 올바른 키 경로를 배치 할 때이 오류를 방지하려면 프로젝트를 지우고 빌드하십시오.

0

비슷한 종류의 문제가 있습니다. 장치에 설치하는 경우 이클립스에서 설치하기 전에 장치에서 응용 프로그램을 제거해야합니다. 그것은 분명히 당신의 문제를 해결할 것입니다.

건배

관련 문제