ADB 설치가 실패하고 INSTALL_FAILED_가 발생함테스트_전용
단말기에 apk를 설치하는 데 문제가 있습니다.
adb install <.apk>
위 명령을 사용하면 다음이 반환됩니다.
5413 KB/s (99747 bytes in 0.017s)
pkg: /data/local/tmp/AppClient.TestOnly.App3.apk
Failure [INSTALL_FAILED_TEST_ONLY]
이 문제의 원인이 무엇인지 아십니까?
그것은 확실히 장치를 인식합니다.apk에 문제가 있을 수 있습니까?
▁your다▁를 수정해야 할 것 같습니다.AndroidManifest.xml
android:testOnly="true"
android:testOnly="false"
또는 이 속성을 제거합니다.
속성을 유지하려는 경우android:testOnly
~하듯이true
사용할 수 있습니다.pm install
으로 합니다.-t
옵션, 하지만 당신은 필요할 수도 있습니다.push
먼저 장치에 대한 apk.
$ adb push bin/hello.apk /tmp/
5210 KB/s (825660 bytes in 0.154s)
$ adb shell pm install /tmp/hello.apk
pkg: /tmp/hello.apk
Failure [INSTALL_FAILED_TEST_ONLY]
$ adb shell pm install -t /tmp/hello.apk
pkg: /tmp/hello.apk
Success
저는 동일한 문제를 재현할 수 있었고 위와 같은 문제가 해결되었습니다.
APK가 장치 외부(데스크탑)에 있는 경우 아래 명령을 실행합니다.
$ adb install -t hello.apk
가 있었어요.Android Studio 3.0.0 Beta 7
그리고 더 이상 플레이 스토어에 게시할 수 없었습니다.
여기에 명시된 바와 같이: https://developer.android.com/studio/run/index.html
참고: Run(실행) 버튼은 testOnly="true"로 APK를 구축합니다. 즉, APK는 adb(Android Studio에서 사용하는)를 통해서만 설치할 수 있습니다.사람들이 adb 없이 설치할 수 있는 디버그 가능한 APK를 원한다면, 디버그 변형을 선택하고 빌드 > 빌드 APK를 클릭합니다.
릴리스 빌드에서도 마찬가지입니다.Android Studio 3
은 이합니다야해동으로 .Build > Build APK(s)
스토어에 제출할 수 있는 테스트할 수 없는 릴리스 팩이 있습니다.
더하다-t
아래 스크린샷과 같이 설치 플래그:
저의 경우 이 실수는 불안정한 그라들 버전이었습니다.안정적인 버전의 그라들(알파도, 베타도 아님)을 사용하십시오.그리고 그것은 나를 위해 고쳐졌습니다.
하루 종일 검색하고 검색한 후에, 유일하게 작동하는 것은 추가하는 것입니다.
android.injected.testOnly=false
gradle.properties 파일로
나는 Elisey의 말에 동의합니다.2.4 미리보기에서 프로젝트를 연 후 안드로이드 스튜디오 2.3에서 같은 프로젝트를 연 후 동일한 오류가 발생했습니다.
build.gradle에서 이 줄을 변경하여 문제를 해결했습니다.
classpath 'com.android.tools.build:gradle:2.4.0-alpha5'
로.
classpath 'com.android.tools.build:gradle:2.3.1'
이전 게시물 중 어느 것도 제 문제를 해결하지 못했습니다.저에게 일어나는 일은 다음과 같습니다.
저는 보통 안드로이드 스튜디오에서 "실행" 버튼을 클릭하여 앱을 로드합니다.이렇게 하면 안드로이드는 디버깅에는 좋지만 설치에는 적합하지 않은 앱을 만들 수 있습니다.다음을 사용하여 설치하려는 경우:
adb 설치 -r yourapk
다음과 같은 메시지가 표시됩니다.
실패 [INSTALL_FAULED_]테스트_만 해당]
이 경우 먼저 빌드를 정리한 다음 빌드 ->APK 빌드를 선택하여 apk를 다시 빌드해야 합니다.아래 이미지를 참조하십시오.
이 APK는 adb install 명령 또는 다른 방법을 통해 설치할 준비가 되었습니다.
이것이 도움이 되길 바랍니다.
데이빗
Android studio 3.0은 테스트 전용 APK를 생성합니다.
안드로이드 매니페스트 태그에 "안드로이드:testOnly" 속성을 추가하여 문제를 해결했습니다.
<application
.....
android:testOnly="false"
android:theme="@style/AppTheme">
Android studio 3.0 메뉴별 APK 생성:빌드-->APK 빌드.
추가 정보: https://commonsware.com/blog/2017/10/31/android-studio-3p0-flag-test-only.html
이 줄을 'gradle.properties'에 추가합니다.
android.injected.testOnly=false
를 테스트하고 , 만당를 apk테스싶다고면하그, 세요하추가냥트약이신을 .-t
명령줄 옵션.
명령 예제:
adb install -t .\app-debug.apk
제 경우는 APK를 업로드하는 것이었는데, 생산 인증서로 서명되었고 릴리스 변형이었지만 안드로이드 스튜디오의 실행 재생 버튼으로 생성되었습니다.Gradle 또는 Build APK 메뉴 옵션에서 APK를 생성한 후 문제가 해결되었습니다.
제 경우 안드로이드 스튜디오 4.0을 사용하여 아래와 같은 문제를 해결했습니다.
'gradle.properties' 파일에 추가합니다.
android.injected.testOnly=false
Android 3.6.2 이상
빌드 >> 빌드/번들 apk >> 빌드 apk
잘 작동합니다.
승인된 답변은 알겠습니다. 하지만 실제로 apk를 누른 다음 -t 플래그가 있는 adb 셸 직접 adb 설치에서 명령을 실행할 필요는 없습니다.
adb install -t "컴퓨터의 pk 경로"
참조용 스크린샷 첨부
이것은 나에게 도움이 됩니다.
adb install -t myapk.apk
이전 Gradle 버전으로 되돌리지 않고 이 문제를 해결하는 가장 쉬운 방법은 실행 구성(pm 설치용)에 '-t' 옵션을 추가하는 것입니다.
testOnly='false'는 아무런 영향을 미치지 않았습니다.이 오류는 debug APK를 '테스트 전용'으로 만드는 gradle 플러그인의 알파 버전으로 인해 발생합니다.-t 옵션을 사용하면 이러한 APK를 설치할 수 있습니다.실행 구성으로 설정하면 APK가 자동으로 정상적으로 설치됩니다.
저의 소견은 아래와 같습니다.Android Studio UI를 사용하여 컴파일하고 APK를 생성하면 다음과 같은 작업을 수행할 수 없습니다.
adb install <xxx.apk>
생됩니다가 됩니다.Failure [INSTALL_FAILED_TEST_ONLY]
저는 Gradle을 사용하여 컴파일해야 합니다../gradlew app:assembleRelease
그런 다음 생성된 apk만 설치할 수 있습니다.
이는 Android Studio UI 컴파일이 특정 장치에 대한 테스트 apk만 생성하는 반면./gradlew app:assembleRelease
명령은 모든 장치에 설치할 실제 apk 생성입니다(플레이스토어에 업로드).
누군가에게 도움이 될지 모르겠지만, 실수로 테스트 그래들 플러그인으로 프로젝트를 빌드하고 설치하려고 했을 때 이런 오류 메시지가 표시되었습니다.'gradle:2.4.0-alpha5'
) 안정적인 Android Studio 버전 (2.3
에 없는2.4 preview 5
이전에 다운로드하여 설치한 버전).
제가 실수를 깨달았을 때, 저는 미리보기 안드로이드 스튜디오 버전을 시작했고 그것은 문제없이 제 프로젝트를 구축하고 설치했습니다.
설명서에 언급된 대로:
실행을 클릭하면 Android Studio에서 이 속성을 자동으로 추가합니다.
그래서, 당신의 apk를 설치할 수 있는 것은adb install <path to apk file>
터미널에서 빌드를 조립해야 합니다../gradlew assembleDebug
및 adb와 함께 설치합니다.아니면 그냥 도망가../gradlew installDebug
장치에서 빌드 및 설치를 동시에 수행할 수 있습니다.
다음과 같이 Android Studio에서 .apk 배포판을 빌드합니다.
빌드 --> 빌드 Apk(s)(서명되지 않은 빌드) 빌드 --> 서명된 APK(서명된 빌드) 생성
이 옵션은 APK를 Android:testOnly="false" 옵션과 함께 구축합니다. 이 옵션을 사용하면 명령어를 통해 APK를 장치에 명시적으로 설치할 수 있습니다.
adb 당신의 BuilT.apk를 설치합니다.
제게 효과가 있었던 것은 공연하는 것입니다.Refresh all Gradle projects
에서Gradle
도구 모음을 클릭합니다.
Android Studio의 스크린샷은 PFB입니다.
- 선택한다.
Gradle
도구 모음을 클릭합니다. - 다음을 선택합니다.
Refresh
아이콘
이것으로 저는 그 문제를 해결했습니다.
Saurabh의 답변이 대부분의 다른 사람들에게 효과가 있을 것이라고 확신하지만, 저는 제 apk를 설치하기 위해 제가 취해야 할 추가적인 조치를 확인하고 싶었습니다.
다음과 같은 결과로 장치에 푸시를 시도했습니다.
? adb push AppClient.TestOnly.App3.apk \tmp\
failed to copy 'AppClient.TestOnly.App3.apk' to '\tmp\': Read-only file system
파일 시스템 RW 권한을 변경하기 위해 둘러본 후 다음 명령을 실행했습니다.
? adb shell
255|shell@android:/ $ su
shell@android:/ # mount -o remount,rw /
mount -o remount,rw /
내가 다시 밀려고 했을 때 이것을 받았습니다.
? adb push AppClient.TestOnly.App3.apk /tmp
failed to copy 'AppClient.TestOnly.App3.apk' to '/tmp': Permission denied
sdcard에 푸시할 수 있었습니다.
? adb push AppClient.TestOnly.App3.apk /sdcard/
3178 KB/s (99747 bytes in 0.030s)
그때 나는 Saurabh의 명령을 실행할 수 있었습니다.
shell@android:/ # pm install -t /sdcard/AppClient.TestOnly.App3.apk
pm install -t /sdcard/AppClient.TestOnly.App3.apk
pkg: /sdcard/AppClient.TestOnly.App3.apk
Success
저는 Gradle 작업 'clean'(:app 아래의 Gradle 창에서 보통 오른쪽에 있음)을 실행하고 프로젝트를 다시 실행했습니다.
저는 여러 개의 apk로 외부 프로젝트를 시도했습니다.
스튜디오의 명령은, 다음과 같이 보였습니다.
adb install-multiple -r ....
솔루션 -
- 콘솔 선택
- 에 대한 명령.
-t
영구적이지 않은 솔루션을 찾고 있는 경우 추가android.injected.testOnly=false
gradle.properties 파일로 이동하면 명령줄을 사용해도 상관없습니다. 설치 전에 다음 두 가지 명령을 사용하면 됩니다.
rm -v **/build/**/AndroidManifest.xml
gradle build
Windows 사용자의 경우: 모든 빌드 디렉토리에서 모든 AndroidManifest.xml을 삭제합니다.하지만 src 디렉토리에서가 아니기 때문에.DEL /S
좋은 생각이 아닙니다.
저도 같은 문제를 받았는데 도움이 되지 않습니다.마지막으로 Android가 일반 설치를 제거할 때 제거되지 않은 안전 폴더(또는 전화 브랜드에 따라 보안 폴더)에 설치가 남아 있습니다.제거하면 이 문제가 해결됩니다.이것이 다른 사람들에게 도움이 되기를 바랍니다!
먼저 불안정한 버전을 제거합니다.
adb uninstall
문제가 있는 패키지 이름
그런 다음 apk를 다시 설치합니다.
언급URL : https://stackoverflow.com/questions/25274296/adb-install-fails-with-install-failed-test-only
'programing' 카테고리의 다른 글
Swift: UICollection을 새로 고치는 방법장치 회전 후 레이아웃 보기 (0) | 2023.08.29 |
---|---|
PHP 및 InnoDB 엔진을 사용하는 mysqli_rollback()의 문제 (0) | 2023.08.29 |
CSS @font-face는 Firefox와 함께 작동하지 않지만 Chrome 및 IE와 함께 작동합니다. (0) | 2023.08.29 |
<%=%> 식이 서버 프로세서의 속성 값으로 컴파일 오류를 일으키는 이유는 무엇입니까? (0) | 2023.08.29 |
저장 프로시저가 있는지 확인하는 방법은 무엇입니까? (0) | 2023.08.29 |