2011-09-28 2 views
3

미니언 텍스트와 같이 기부금 신청서를 게시하고 싶습니다. 동일한 패키지 이름으로 자신의 무료 응용 프로그램을 제공 할 수 있습니다설치된 응용 프로그램이 내 것이라는 것을 확인하는 방법은 무엇입니까?

try 
{ 
    ApplicationInfo info = getPackageManager() 
         .getApplicationInfo("com.myproject", 0); 
    //-- application exists 
} catch(PackageManager.NameNotFoundException e) { 
    //-- application doesn't exist 
} 

하지만 사실 사람에 : 나는이 기부 응용 프로그램 패키지 매니저를 통해 설치되어 내 주요 무료 응용 프로그램에서 확인할 수 있습니다 알고있는 것처럼. 이 신청서가 실제로 광산인이라는 증거를 어떻게받을 수 있습니까?

+2

패키지 이름이 이미있는 응용 프로그램을 다른 설치된 응용 프로그램 패키지 이름으로 설치할 수 없습니다. – Rasel

답변

5

동일한 키/인증서로 두 앱에 모두 서명하면 서명이 일치하는지 확인할 수 있습니다. 사용자 만 개인 키에 액세스 할 수 있다고 가정하면 일치하는 경우 자신의 앱입니다. 예 :

String myPackageName = application.getPackageName(); 
PackageManager pm = context.getPackageManager(); 
PackageInfo pi = pm.getPackageInfo("com.myproject", 0); 
boolean isMine = pm.checkSignatures(myPackageName, pi.packageName) == PackageManager.SIGNATURE_MATCH; 
관련 문제