2012-07-13 1 views
0

http://developer.android.com/tools/publishing/app-signing.html에 설명 된 서명 프로세스를 사용하여 서명 한 응용 프로그램이 있습니다. 이 응용 프로그램은 해당 데이터를/data/data/mystorage/폴더에 저장합니다. 동일한 키를 사용하여 서명 된 새 버전의 응용 프로그램을 설치 한 후에는 새 버전이/data/data/mystorage 폴더에 액세스 할 수 없습니다. 내가 여기서 무엇을 놓치고 있니? 내가 아는 바로는 동일한 인증서로 서명 된 응용 프로그램은 동일한 응용 프로그램 ID로 제공되기 때문에 사용자가 이전에 저장된 데이터에 액세스 할 수 있습니다. 다시 설치 한 후에도 응용 프로그램이 데이터에 액세스 할 수 있는지 확인하는 방법동일한 디지털 서명으로 응용 프로그램을 다시 설치하면 사용자 데이터에 액세스하지 못합니다.

+0

**/데이터/데이터/mystorage를/** - 사용되거나 실제 경로는 단지 예이다인가요? – Squonk

+0

실제 경로는 실제로/data/foobar /입니다. 루팅 된 장치로 작업 중이며 응용 프로그램이 adb 셸 명령을 사용하여 다시 설치되었습니다. – ShivangSeth

답변

1

확인 한 앱 매니페스트에서 동일한 공유 사용자 ID가 :

android:sharedUserId="com.your.app" 
+0

내 응용 프로그램의 패키지 이름은 "com.stw.foobar"입니다. 두 응용 프로그램 모두 동일한 패키지 이름을 사용합니다. 동일한 포장 이름을 사용한 후에도이 단계가 필요합니까? 예인 경우 매니페스트의 항목을 android : sharedUserId = "com.stw.foobar"로 읽으시겠습니까? – ShivangSeth

+0

네, 아직도 필요하다고 생각합니다. 두 매니페스트에서 모두 동일하다면 sharedUserId 내부에서 작성하는 내용은 중요하지 않습니다. 그래서'android : sharedUserId = "com.stw.foobar"'괜찮습니다. – Caner

+0

고맙습니다. 나는 그것을 빨리 시험해보고 당신의 대답에 투표 할 것입니다. 다시 한번 감사드립니다. :) – ShivangSeth

관련 문제