programing

Android : APK 설치 중 오류

procenter 2021. 1. 16. 10:43
반응형

Android : APK 설치 중 오류


에서 몇 가지 간단한 작업을 천천히 시도하고 Android Studio있습니다. 다음 앱은 오류없이 에뮬레이터에 설치됩니다. 그러나 실제 장치 Redmi 3S에 설치하려고 할 때이 오류가 발생했습니다.

Unknown failure (Failure - not installed for 0)
Error while Installing APKs

여기에서 비슷한 질문을했지만이 경우 디버깅이 활성화되지 않았거나 앱 설치에 액세스하지 않아 오류가 발생했습니다. 그러나 디버깅을 허용 하고 Studio에 다른 앱 을 설치하려고 시도했지만 정상적으로 작동했습니다 .

그래서 질문은 아마도 코드에 무엇이 잘못되었는지 일 것입니다.

MainActivity.java

package tlacitko.button;
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.view.View;
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStream;
import java.io.InputStreamReader;
import java.net.MalformedURLException;
import java.net.URL;

public class MainActivity extends AppCompatActivity {

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
    }

    public void sendMessage(View view) {
        new Thread(new Runnable() {
            public void run() {

                runOnUiThread(new Runnable() {
                    @Override
                    public void run() {
                        try{
                            URL url = new URL("http://147.32.186.51:8080");
                           // HttpURLConnection urlConnection = (HttpURLConnection) url.openConnection();
                            InputStream is = url.openStream();
                            BufferedReader br = new BufferedReader(new
                                    InputStreamReader(is));
                            String s = "";
                        }catch(MalformedURLException ex){

                        }catch(IOException e){
                        }
                    }
                });
            }
        }).start();
    }
}

그리고 xml 코드 :

activity_main.xml

    <TextView
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="Try to connect the server."
        app:layout_constraintBottom_toBottomOf="parent"
        app:layout_constraintLeft_toLeftOf="parent"
        app:layout_constraintRight_toRightOf="parent"
        app:layout_constraintTop_toTopOf="parent" />

    <Button
        android:id="@+id/button"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_marginLeft="16dp"
        android:layout_marginRight="7dp"
        android:layout_marginTop="16dp"
        android:onClick="sendMessage"
        android:text="Conncect"
        app:layout_constraintLeft_toRightOf="@+id/editText"
        app:layout_constraintRight_toRightOf="parent"
        app:layout_constraintTop_toTopOf="parent" />


</android.support.constraint.ConstraintLayout>

문제를 극복하려면 다음 단계를 따르십시오.

  1. 시스템에 연결된 모든 장치를 분리하고 시스템에서 실행중인 모든 에뮬레이터를 닫습니다.
  2. 설정에서 Instant Run 기능을 끕니다.
  3. 클린 빌드를 수행하십시오.
  4. 설정에서 즉시 실행 기능을 켭니다.
  5. 클린 빌드를 수행하십시오.
  6. 장치를 연결하고 에뮬레이터를 시작하고 온라인 상태인지 확인하십시오.
  7. 장치 / 에뮬레이터를 선택하여 프로젝트를 실행하십시오.

노트 :

1) 시스템에서 실행되는 Android Debug Bridge (adb)의 다른 인스턴스가 없어야합니다.

2) Genymotion을 사용하는 경우 Android Studio 설정에서 언급 한 Genymotion 설정에 언급 된 사용자 지정 SDK 경로를 사용하는지 확인하십시오.

이 단계로 문제를 해결할 수 있지만 Android 버전에서도 문제가 될 수 있습니다.


Android Studio에서 Instant Run을 끕니다. 아래 단계를 따르십시오.

  1. 파일 >> 설정 >> 빌드, 실행, 배포.

  2. Instant Run을 클릭 하고 " Enable Instant Run to hot swap code / resource changes on deploy "를 선택 해제합니다.

  3. " 적용 "및 " 확인 "을 클릭하십시오 .

응용 프로그램을 다시 실행 해보십시오. 지금 앱을 설치해야합니다. 언제든지 Instant Run을 다시 활성화 할 수 있습니다.

수정 (Android Studio 3.0)

Instant Run 비활성화 ( Android 문서 )

Instant Run을 비활성화하려면 :

  1. 설정 또는 기본 설정 대화 상자를 엽니 다 . (Mac의 경우 Android Studio- > Preferences )
  2. 이동을하는 , 실행, 배포 빌드 > 인스턴트 실행을 .
  3. Enable Instant Run 옆의 확인란을 선택 취소합니다 .

Redmi 및 Mi 장치의 경우 MIUI 최적화를 끄고 전화기를 재부팅하십시오.

설정> 추가 설정> 개발자 옵션> MIUI 최적화

여기에서 답변 확인


나를 위해 방금 앱을 정리 하면 모든 것이 잘 작동합니다.


나는 이제이 문제에 직면 해 이미 apk를 제거했으며 이제 Android Studio 3.0을 사용하여 Xiaomi MIX 2 (Android 7.1.1, API 25)로 apk를 실행하고 싶지만 실패했습니다.

$ adb shell pm install -t -r "/data/local/tmp/com.package"
Failure [INSTALL_FAILED_USER_RESTRICTED: Install canceled by user]

그리고 Android Studio는 "이 문제는 기존 버전의 apk가있는 경우 제거하고 다시 설치하여 해결할 수 있습니다."라고 말합니다. 하지만이 apk를 제거했습니다.

Android Studio 팝업 정보

그리고 "확인"버튼을 클릭했지만 실패했습니다.

$ adb shell pm uninstall com.package
Unknown failure (at android.os.Binder.execTransact(Binder.java:565))
Error while Installing APK

마지막으로이 문제를 해결하는 방법을 찾았습니다. "USB를 통해 앱 확인"을 설정하지 않습니다. 이제이 장치는 xiaomi 계정에 로그인 할 때까지이 장치를 켤 수없고 로그인되지 않은 새 장치이기 때문입니다.

1 단계 : "설정"으로 이동 → 시스템에서 "개발자 옵션"을 찾아 클릭합니다.

2 단계 : Debbuging 섹션에서 'Verify apps over USB' 를 사용 설정합니다.

3 단계 : Android Studio에서 "앱 실행"을 다시 시도하십시오!


위의 제안을 모두 시도하기 전에 기기에서 사용 가능한 충분한 메모리 공간을 확인하세요 . 이것은 또한이 문제의 원인이됩니다.

오류 : android.os.ParcelableException : java.io.IOException : 내부 용으로 만 요청되었지만 공간이 충분하지 않습니다.

해피 코딩 :)


즉시 실행되는 XiaomiAndroid 스튜디오 버전 2.3및 gradle 플러그인 버전의 기기 와의 호환성 일 수 있습니다 2.3.0.

adb multiple-install 분할 된 APK가 오류를 반환합니다.

즉시 실행을 끄거나 Settings-> Developer options에서 Turn on MIUI optimization즉시 실행을 원하는 경우 끌 수 있습니다.


장치 저장 공간이 가득 찼을 수 있습니다. 물리적 장치에서 테스트하는 경우. 그러나 에뮬레이터에서 테스트하는 경우 저장소 공간이 사용 가능한지 여부도 확인하십시오. 그렇지 않으면 Instant Run을 꺼야합니다.


나는 프로젝트를 청소 하고이 문제를 해결했습니다.

빌드-> 클린 프로젝트.


나는 같은 문제가 있었지만 내 문제는 장치의 공간 부족이었습니다.

장치에서 설정-> 장치 유지 관리-> 지금 최적화로 이동하십시오.

완료되면 다시 시도하십시오.


Instant Run 을 다시 확인하려면 다음 단계를 따르십시오 .

  1. 파일 >> 설정 >> 빌드, 실행, 배포.
  2. Instant Run을 클릭하고 "배포시 핫 스왑 코드 / 리소스 변경을 위해 Instant Run 활성화"를 선택 해제합니다.
  3. "적용"및 "확인"을 클릭하십시오.

그러나 때때로 재확인이 작동하지 않습니다.

그 때 WIN PC에서 배포를 실행하는 경우 AntiVirus 및 Windows Defender 를 일시적으로 비활성화 해야합니다.

다음 단계를 따르십시오.

  1. 15/30 분 동안 바이러스 백신 또는 Windows Defender 비활성화
  2. 클린 빌드를 수행하십시오.
  3. 프로젝트 재 구축
  4. 에뮬레이터 또는 장치에서 프로젝트 실행

노트 :

  • \ app \ build \ intermediates \ split-apk \ debug \ slices \ slice_5.apk 일부 맬웨어가 영향을받습니다.

새 장치에 앱을 설치할 때도 동일한 문제가 발생했습니다. 이 오류는 일반적으로 OS에서 앱 설치를 허용하지 않을 때 발생합니다. 어떤 소스에서든 휴대 전화에 앱을 설치할 권한이 없기 때문일 수 있습니다.

따라서 allow install apps via usb개발자 옵션을 확인하십시오 . 그래도 작동하지 않으면 모든 항목을 취소 usb debugging authorizations한 다음 설치를 시도하고 요청시 권한을 제공하십시오.

이것이 또한 절단되지 않으면 위의 답변 중 하나에 설명 된대로 즉시 실행을 비활성화하십시오.


장치에서 모든 응용 프로그램을 삭제할 수 있습니다.

Android Emulator를 사용하고 있습니다. 다음을 통해 앱을 삭제했습니다. 설정> 앱 및 알림> 앱 선택> 제거 .


Android Studio에서 Instant Run을 끕니다. 아래 단계를 따르십시오.

  • 이전 버전의 Android Studio ( Version < Android Studio 3.0) 파일 >> 설정 >> 빌드, 실행, 배포.

  • 클릭 Instant Run하고 모두 Unckeck Enable Instant Run to hot swap code/resource changes on deploy.

  • 를 클릭 Apply하고 OK.

  • 응용 프로그램을 다시 실행 해보십시오. 지금 앱을 설치해야합니다. Instant Run언제든지 다시 활성화 할 수 있습니다 .

  • 신규 ( Android Studio 3.0)의 경우 인스턴트 실행 비활성화 (기본값)

Instant Run을 비활성화하려면 :

  • 열기 Settings또는 Preferences dialog. (Mac의 경우 Android Studio-> 환경 설정)

  • 로 이동합니다 Build, Execution, Deployment > Instant Run.

  • Enable Instant Run 옆의 확인란을 선택 취소합니다.

  • 프로젝트를 정리하고 응용 프로그램을 다시 실행 해보십시오. install이제 앱 이어야 합니다. enable Instant Run언제든지 다시 할 수 있습니다 .


분리 divice을 시스템에서와에서 안드로이드 스튜디오 로 이동하여 파일 -> 무효화 캐시 및 / 다시 시작합니다 . 효과가있다....


간단하고 정확한 답변 ...

다음과 같이 Instant Run을 선택 취소합니다 ...

단계 : file >> Settings >> Build, Execution, Deployment >> Enable Instant Run to hot swap code / resource changes on deploy (기본 활성화 됨)를 선택 취소합니다. 여기에 이미지 설명 입력

2 단계 : 적용 및 확인 클릭 여기에 이미지 설명 입력

3 단계 : 프로젝트 실행 ...

ᄏ ᄏ ᄏ ᄏ ...

참조 URL : https://stackoverflow.com/questions/42781934/android-error-while-installing-apks

반응형