2012-06-20 3 views
0

사용자 개입없이 Android에 애플리케이션을 설치하고 싶습니다. INSTALL_PACKAGES 권한을 사용하고 있으며 "/ download /"폴더에 앱을 설치하고 있습니다. 다운로드가 끝나면 앱 설치를 묻는 대화 상자가 나타납니다. 이 대화 상자를 숨기고 사용자 개입없이 응용 프로그램을 설치하는 방법은 무엇입니까?android : 사용자 개입없이 앱 설치

답변

3

죄송합니다. 수 없습니다. 안드로이드 프레임 워크는 그렇게 할 수 없습니다. Android에는 보안 목적에 대한 몇 가지 제한 사항이 있습니다. 중단하지 마세요.

+0

Ok. 고맙습니다.. –

0

INSTALL_PACKAGES 권한은/system/app에 설치된 시스템 앱에만 허용됩니다.

다른 응용 프로그램의 경우 불가능합니다.

0

당신은 반사에 의해 숨겨진 API의 android.content.pm.IPackageInstallObserver를 사용할 수 있습니다

public class PackageManagement { 
public static final int INSTALL_REPLACE_EXISTING = 0x00000002; 
public static final int INSTALL_SUCCEEDED = 1; 

private static Method installPackageMethod; 
private static Method deletePackageMethod; 


static { 
    try { 
     installPackageMethod = PackageManager.class.getMethod("installPackage", Uri.class, IPackageInstallObserver.class, Integer.TYPE, String.class); 
    } catch (NoSuchMethodException e) { 
     e.printStackTrace(); 
    } 
} 


public static void installPackage(PackageManager pm, Uri mPackageUri, IPackageInstallObserver observer, int installFlags, String installerPackageName) { 
    try { 
     installPackageMethod.invoke(pm, mPackageUri, observer, installFlags, installerPackageName); 
    } catch (Exception e) { 
     e.printStackTrace(); 
    } 
} 

}

가져 오기 android.content.pm.IPackageInstallObserver 프로젝트에. 앱이 시스템이어야합니다. 매니페스트에서 android.permission.INSTALL_PACKAGES 권한을 활성화해야합니다.

관련 문제