[android] 업데이트 된 APK를 수동으로 설치하면 ‘서명이 이전에 설치 한 버전과 일치하지 않습니다’와 함께 실패합니다.

친구들과 공유 할 수있는 어리석은 앱을 만들었습니다. 앱 스토어에 올릴 필요가 없습니다.

나는 첫 번째 apk(서명)를 구축하고 웹 서버에 업로드했으며 모두 잘 작동했습니다.

작은 문제가 발생하여 문제를 수정하고 다시 빌드하고 동일한 키 저장소로 서명 한 다음 다시 업로드했습니다. 이제 새 .NET에서 설치할 수없는 것 같습니다 apk. 디버거가 알려줍니다.

signatures do not match the previously installed version

그래서 앱 서랍을 열고 “제거”버튼으로 드래그하여 이전 버전을 제거했습니다. “설정-> 앱”을 열면 더 이상 보이지 않습니다. 내 기기에서 앱 흔적이 보이지 않습니다.

그러나 여전히 위의 오류 메시지가 나타납니다.

그것은 가능 일부 정보는 여전히 장치 어딘가에에 남아? 확인할 수있는 방법이 있습니까?



답변

예 이전 애플리케이션이 100 % 제거되지 않았거나 데이터가 제거되지 않은 경우 가능합니다.

시험:

adb uninstall "com.yourapp.yourapp"

“com.yourapp.yourapp”을 대체 할 내용을 정확히 모르는 경우 Android 스튜디오를 열고 기기에 연결된 상태에서 앱을 실행 한 다음 디버그 창을 확인하세요.

그것은 말한다 :

 Waiting for device.
 Target device: samsung-sm_t531-xxxxxxxxx
 Uploading file
 local path: C:\Users\myapp\app\build\outputs\apk\myapp.apk
 remote path: /data/local/tmp/com.myapp.myapp
 Installing com.myapp.myapp
 DEVICE SHELL COMMAND: pm install -r "/data/local/tmp/com.myapp.myapp"
 pkg: /data/local/tmp/com.myapp.myapp
 Success

이 경우 com.myapp.myapp은 설치 제거에 사용해야하는 패키지의 이름입니다.


답변

나는 같은 문제가 있었고 adb uninstall해결책이 효과가 없었습니다.

효과가 있었던 것은

  • 기기에서 설정-> 앱으로 이동합니다.
  • 앱을 선택하고 메뉴에서 “모든 사용자에 대해 제거”를 선택합니다.

이전에 앱을 제거한 경우에도 여전히 목록에 있습니다.


답변

나에게 앱이 배포 될 예정이라면 adb해결책은 안된다. 친구에게 안드로이드 sdk를 설치해달라고 요청할 수 없다!

여기로 이동하는 방법 은 태그 (루트 요소) 에서 속성 을 편집하고 AndroidManifest.xml증가시키는 android:versionCode것입니다 <manifest>.

이것은 설치된 응용 프로그램을 업데이트합니다


답변

연결된 테스트를 수행하는 동안이 메시지가 표시되는 경우 adb를 통해 제거 할 때 .test 를 포함해야합니다. 앱을 통한 제거-> 설정 테스트 패키지를 제거 하지 않기 때문입니다.

adb uninstall your.broken.package.test

다음을 통해 제거하는 경우

adb uninstall your.broken.package

테스트 패키지는 그대로 유지됩니다. 이것은 gradle 명령 줄을 사용하는 동안 내가 발견 한 것 뿐이며 Android 스튜디오 내 에서이 문제를 발견하지 못했습니다.


답변

휴대폰이나 에뮬레이터에서 이전 앱을 제거하고 다시 실행 해보십시오.


답변

인증서에 서명하는 동안 릴리스를 설치하는 동안 오류가 발생했습니다.

: app Gradle 작업 uninstallRelease로 수정 한 다음 다시 installRelease


답변

이 질문에 대한 Unity 사용자의 경우 가장 좋은 답변은 실제로 @Ehsan의 답변입니다.

adb uninstall "com.yourapp.yourapp"

Android 기기에 이미 이전 버전을 설치 한 다음 Development BuildUnity> Build Settings에서 선택 하여 APK가 다른 서명을 사용하도록했습니다. Android GUI를 통해 설치하는 경우 실제로 모든 항목이 제거되지 않으므로 ADB를 사용해야합니다.