안드로이드의 code 안에서 app 을 설치하고 제거하는 등의 a source 입니다.

 

app 설치

    void installApp(String fileName) {
        Intent intent = new Intent(Intent.ACTION_VIEW)
            .setDataAndType(Uri.parse("file://" + fileName), "application/vnd.android.package-archive");
        startActivity(intent);
    }

apk 파일의 경로를 알면 패키지 메니저를 intent 로 불러서 설치 화면을 통해 install 할 수 있습니다.

 

app 제거

    void removeApp(String packageName) {
        Intent intent = new Intent(Intent.ACTION_DELETE)
            .setData(Uri.parse("package:" + packageName));
        startActivity(intent);
    }

제거하려는 app 의 패키지 이름( com.falinux.app )을 이용해서 remove 할 수 있습니다.

 

app 설치 유무 확인하기 

    boolean getApplicationInstalled(String pkgName) {
        ApplicationInfo appInfo = null;
   
        final PackageManager pm = getPackageManager();
        try {
            appInfo = pm.getApplicationInfo(pkgName, PackageManager.GET_META_DATA);
        } catch (NameNotFoundException e) {
            e.printStackTrace();
        }  
   
        if(appInfo != null) return true;
        else return false;
    }

역시 확인하려는 app 의 패키지 이름을 정확히 알아야 합니다.

 

PackageManager 를 통해서 그 밖에 다른 정보들도 많이 확인할 수 있습니다.