마켓에서 원하는 앱을 설치하기 했을 때 다운로드 과정이 끝난 후 설치 과정으로 바뀌면서 강제종료가 되며 에러가 날 때가 있습니다.
로그캣으로 아래와 같은 에러가 보이신다면,
E/AndroidRuntime(27065): FATAL EXCEPTION: work-service-handler-thread
E/AndroidRuntime(27065): java.lang.SecurityException: Neither user 10015 nor current process has android.permission.INSTALL_PACKAGES.
E/AndroidRuntime(27065): at android.os.Parcel.readException(Parcel.java:1322)
E/AndroidRuntime(27065): at android.os.Parcel.readException(Parcel.java:1276)
E/AndroidRuntime(27065): at android.content.pm.IPackageManager$Stub$Proxy.installPackage(IPackageManager.java:1951)
E/AndroidRuntime(27065): at android.app.ContextImpl$ApplicationPackageManager.installPackage(ContextImpl.java:2605)
E/AndroidRuntime(27065): at com.android.vending.DownloadManagerBroadcastReceiver.installFromUri(DownloadManagerBroadcastReceiver.java:294)
E/AndroidRuntime(27065): at com.android.vending.DownloadManagerBroadcastReceiver.handleDownloadCompletedAction(DownloadManagerBroadcastReceiver.java:119)
E/AndroidRuntime(27065): at com.android.vending.DownloadManagerBroadcastReceiver.handleIntent(DownloadManagerBroadcastReceiver.java:73)
E/AndroidRuntime(27065): at com.android.vending.util.ServiceBroadcastReceiver$1.run(ServiceBroadcastReceiver.java:45)
E/AndroidRuntime(27065): at com.android.vending.util.WakelockedRunnable.run(WakelockedRunnable.java:34)
E/AndroidRuntime(27065): at com.android.vending.util.WorkService$1.run(WorkService.java:80)
E/AndroidRuntime(27065): at android.os.Handler.handleCallback(Handler.java:587)
E/AndroidRuntime(27065): at android.os.Handler.dispatchMessage(Handler.java:92)
E/AndroidRuntime(27065): at android.os.Looper.loop(Looper.java:123)
E/AndroidRuntime(27065): at android.os.HandlerThread.run(HandlerThread.java:60)
W/ActivityManager( 3013): Force finishing activity com.android.vending/.AssetInfoActivity
E/ ( 3013): Dumpstate > /data/log/dumpstate_app_error
해결 방법은 아래와 같습니다.
우선 adb shell이 루트 권한으로 실행되어야 합니다. (루팅이 되어있거나 테그라크 커널을 설치하신 분)
마켓을 완전히 종료홥니다.
그런 다음 아래의 명령어를 입력합니다.
# pm uninstall com.android.vending
pm uninstall com.android.vending
Success
위에서 Success 대신에 Failure가 보인다면 마켓이 완전히 종료되지 않아서입니다.
이후에 마켓을 재실행하면 약관 동의 부분이 다시 보이게 되며 정상적인 마켓 이용이 가능해집니다.
로그캣으로 아래와 같은 에러가 보이신다면,
E/AndroidRuntime(27065): FATAL EXCEPTION: work-service-handler-thread
E/AndroidRuntime(27065): java.lang.SecurityException: Neither user 10015 nor current process has android.permission.INSTALL_PACKAGES.
E/AndroidRuntime(27065): at android.os.Parcel.readException(Parcel.java:1322)
E/AndroidRuntime(27065): at android.os.Parcel.readException(Parcel.java:1276)
E/AndroidRuntime(27065): at android.content.pm.IPackageManager$Stub$Proxy.installPackage(IPackageManager.java:1951)
E/AndroidRuntime(27065): at android.app.ContextImpl$ApplicationPackageManager.installPackage(ContextImpl.java:2605)
E/AndroidRuntime(27065): at com.android.vending.DownloadManagerBroadcastReceiver.installFromUri(DownloadManagerBroadcastReceiver.java:294)
E/AndroidRuntime(27065): at com.android.vending.DownloadManagerBroadcastReceiver.handleDownloadCompletedAction(DownloadManagerBroadcastReceiver.java:119)
E/AndroidRuntime(27065): at com.android.vending.DownloadManagerBroadcastReceiver.handleIntent(DownloadManagerBroadcastReceiver.java:73)
E/AndroidRuntime(27065): at com.android.vending.util.ServiceBroadcastReceiver$1.run(ServiceBroadcastReceiver.java:45)
E/AndroidRuntime(27065): at com.android.vending.util.WakelockedRunnable.run(WakelockedRunnable.java:34)
E/AndroidRuntime(27065): at com.android.vending.util.WorkService$1.run(WorkService.java:80)
E/AndroidRuntime(27065): at android.os.Handler.handleCallback(Handler.java:587)
E/AndroidRuntime(27065): at android.os.Handler.dispatchMessage(Handler.java:92)
E/AndroidRuntime(27065): at android.os.Looper.loop(Looper.java:123)
E/AndroidRuntime(27065): at android.os.HandlerThread.run(HandlerThread.java:60)
W/ActivityManager( 3013): Force finishing activity com.android.vending/.AssetInfoActivity
E/ ( 3013): Dumpstate > /data/log/dumpstate_app_error
해결 방법은 아래와 같습니다.
우선 adb shell이 루트 권한으로 실행되어야 합니다. (루팅이 되어있거나 테그라크 커널을 설치하신 분)
마켓을 완전히 종료홥니다.
그런 다음 아래의 명령어를 입력합니다.
# pm uninstall com.android.vending
pm uninstall com.android.vending
Success
위에서 Success 대신에 Failure가 보인다면 마켓이 완전히 종료되지 않아서입니다.
이후에 마켓을 재실행하면 약관 동의 부분이 다시 보이게 되며 정상적인 마켓 이용이 가능해집니다.
댓글