본문 바로가기
JAVA

안드로이드 어플 자동 업데이트 기능 구현하기 (Android/Java)

by 고체물리학 2021. 6. 10.

어플 실행 중에 다른 어플을 설치하고 싶을 때 (어플 업데이트 기능) 구현하면 되는 코드이다.

MainActivity.java에 아래 코드를 작성한다.  

	public void InstallAPK(){
        File apkFile = new File("앱설치 되어있는경로"+앱이름.apk);
        
        if (apkFile != null) {
            Intent intent = new Intent(Intent.ACTION_VIEW);
            intent.setDataAndType(Uri.fromFile(apkFile), "application/vnd.android.package-archive");
            intent.setFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP | Intent.FLAG_ACTIVITY_NEW_TASK);
            intent.addFlags(Intent.FLAG_GRANT_READ_URI_PERMISSION);
            startActivity(intent);
		}
	}

 

원하는 조건문에서 InstallAPK() 호출하면 앱 실행 중에 자동으로 어플이 설치된다.

 

 

startActivity가 호출 안되면 AndroidManifest.xml에서 아래의 권한 추가한다

<uses-permission android:name="android.permission.REQUEST_INSTALL_PACKAGES"/>
        <activity 
            android:name=".intent실행하는 클래스명" android:label="@string/app_name" >
            <intent-filter >
	            <action android:name="android.intent.action.MY_PACKAGE_REPLACED"/> 
        </activity>

 

+++ 만약 업데이트파일을 받았는데 앱 서명 인증서가 다르다고 나오면 업데이트 전 apk파일이 컴파일된 어플인지 확인하면 된다.

 

 

 

[출처] [Java] 앱실행중에 다른 어플 설치하고 실행하는 방법(앱 자동업데이트기능)|작성자 고체물리학

반응형

댓글