ChatGPT解决这个技术问题 Extra ChatGPT

react-native :app:installDebug 失败

将 APK 调试安装到我的设备失败。

jianglinghuadeMacBook-Pro:hello jianglinghua$ react-native run-android
JS server already running.
Building and installing the app on the device (cd android && ./gradlew installDebug...
WARNING [Project: :app] Current NDK support is deprecated.  Alternative will be provided in the future.
:app:preBuild UP-TO-DATE
......
:app:assembleDebug UP-TO-DATE
:app:installDebug
Installing APK 'app-debug.apk' on 'MI NOTE LTE - 6.0.1'
Unable to install /Users/jianglinghua/Desktop/hello/android/app/build/outputs/apk/app-debug.apk
com.android.ddmlib.InstallException: Failed to establish session
    at com.android.ddmlib.Device.installPackages(Device.java:894)
    ........
    at org.gradle.wrapper.GradleWrapperMain.main(GradleWrapperMain.java:61)
:app:installDebug FAILED

FAILURE: Build failed with an exception.

* What went wrong:
Execution failed for task ':app:installDebug'.
> com.android.builder.testing.api.DeviceException: com.android.ddmlib.InstallException: Failed to establish session

* Try:
Run with --stacktrace option to get the stack trace. Run with --info or --debug option to get more log output.

BUILD FAILED

Total time: 13.945 secs

无法在设备上安装应用程序,请阅读上面的错误以了解详细信息。确保您有一个正在运行的 Android 模拟器或连接了一个设备并已设置您的 Android 开发环境:https://facebook.github.io/react-native/docs/android-setup.html

我看着我的设备

jianglinghuadeMacBook-Pro:hello jianglinghua$ adb devices
List of devices attached
98333978    device
你在运行项目之前运行了 Yarn。如果是的话,如果有任何错误,请告诉我。
重启电脑后我忘记重新插入手机了,也许你们中的一些人也忘记了这一点。

a
anmolakhilesh

由于您使用的是具有 MIUI 的小米手机

尝试这个

转到开发人员选项,向下滚动以找到“打开 MIUI 优化”并禁用它。您的手机将重新启动

现在检查

如果您使用的是任何其他在 android OS 之上具有自定义皮肤/UI 的 android 手机,请尝试禁用该 UI 提供的优化并检查。 (通常你可以在“开发者选项”中找到)


A
AmerllicA

就我而言,我已经设置了一个新应用程序,但我遇到了错误,尝试了许多可能的方法和来自 github 和 stackoverflow 的答案。没有任何效果

https://i.stack.imgur.com/mpkLT.png

删除旧应用并运行 react-native run-android

为我工作。


这个错误也是为我造成的,我不知道它的原因。我读了你的回答。我注意到在过去,我的手机上安装了该应用程序的一个版本。我删除了它并运行命令再次运行应用程序。应用程序在设备上正常运行
删除旧应用程序并运行命令对我有用,但为什么会这样。我以前用过macbook air,所以没有这样的问题
@shailPatel 我明白了,这意味着这是由于 react-native 中的构建包设置。可能需要在这个问题上探索 react-native repo。如果它被列为问题,可能会有更多细节。
这个解决方案也对我有用
A
Aashish Kumar

在我的 android 设备上,问题在于我之前安装在手机上的应用程序的先前构建版本。以下步骤解决了我的问题:

删除应用程序的任何先前版本,包括调试版本和签名的 apk 版本在 Windows 上:在项目的根目录上,运行: cd android .\gradlew clean cd .. npm cache clean --force

在 MacOS 上:在项目的根目录中,运行:

 <code>cd android</code>
 <code>./gradlew clean</code>
 <code>cd .. </code>

重启你的安卓设备运行 react-native run-android


npm cache clean --force 是我需要与 gradlew clean 一起执行的额外步骤,即删除 apk 并在设备上卸载应用程序。
这对我有用,因为我已经为我的应用创建了一个签名的 apk。再次感谢
@John:npm cache clean --force 这段代码拯救我的一天
D
Dale K

我有这个问题。我的在模拟器上工作得很好,但在设备上没有工作,错误是

应用程序:安装调试失败。

如果您在设备上有其他同名(或软件包名称)的应用:重命名该应用或将其从您的设备中删除。


H
Hammad Hassan

这对我有用

从手机中卸载应用程序 cd android gradlew clean cd .. react-native run-android


就我而言,当我已经在设备上安装了应用程序时,就会出现问题。因此,卸载旧应用程序很重要。
D
Dubbo

我遇到了同样的问题并做了一些研究。这个问题在中国安卓手机上经常发生。

通过在文件 android/build.gradle 第 8 行中将 gradle 版本更改为 1.2.3 解决了这个问题

classpath 'com.android.tools.build:gradle:1.2.3'

它对我不起作用,至少需要 2.2,我安装了 2.14.1,我使用的是 Micromax Q348,它在 adb devices 下找到,运行 5.1。
s
shaedrich

第 1 步:关闭 Android 模拟器。

https://i.stack.imgur.com/H1AwN.png

第 3 步:打开终端并输入

cd android
.\gradlew clean
cd ..
npm cache clean --force

第 4 步:在终端中,运行:

yarn run android

注意:如果您使用的是纱线,只需运行:

yarn cache clean

谢谢,它对我有用。擦除数据后。
A
Ayush Chaurasia

转到 android/build.gradle,将 classpath 'com.android.tools.build:gradle:2.2.3' 更改为 classpath 'com.android.tools.build:gradle:1.2.3' 然后,转到 android/gradle/ wrapper/gradle-wrapper.properties,将distributionURL改为https://services.gradle.org/distributions/gradle-2.2-all.zip 再次运行。


C
CodeZombie

如果上述解决方案均无效,请尝试以下步骤冷启动模拟器

打开 AVD 管理器 -> 编辑设备 -> 显示高级设置 -> 启动选项 -> 选择冷启动而不是快速启动。


L
Larry

在我的情况下(使用 React Native),我运行服务器的 PC 无法识别我的 Android 手机,这可以通过以下消息看到:

* What went wrong:
Execution failed for task ':app:installDebug'.
> com.android.builder.testing.api.DeviceException: No online devices found.

如果是这种情况,如 ADB Android Device Unauthorized 中突出显示的那样,请确保您手机上的开发者选项中的 USB 调试 设置为 true,然后在终端或 cmd 中输入以下命令以重新启动 Android 服务器.

adb kill-server
adb start-server

adb devices 应将您的手机列为 device 而不是 unauthorized


这对我有用。不需要关闭模拟器,只需输入这两个命令即可解决问题
H
Hamed Damirchi

我遇到了这个问题,我从我的 android 设备/模拟器中删除了 apk 文件,然后运行 react-native run-android 并成功运行。


这也对我有用。打开应用程序列表(在我的情况下从底部向上滑动),按住应用程序,单击应用程序信息并最终卸载。
也为我工作,但我可以想象它不会对每个人都有效。只需从设备中卸载然后再试一次。令人难以置信的简单和快速这样做值得首先尝试。
它对我有用,我认为您在重命名应用程序包时必须这样做
N
Nerius Jok

我也遇到了使用 gradle 2.14 的应用程序的问题,尽管使用 gradle 4 没问题。通过使用 --deviceID 标志应用程序安装没有任何问题。

react-native run-android --deviceId=mydeviceid

你是怎么得到你的设备ID的
终端中的 adb 设备
A
AmerllicA

就我而言,我从 PlayStore 下载了该应用程序,并尝试调试具有相同名称的 APK。我刚刚卸载了应用程序并成功调试。


我还在手机上安装了该应用程序的发布版本。卸载它并运行 react-native run-android 工作。
U
Umair Raees

打开 avd 管理器单击铅笔图标旁边的箭头,然后擦除数据对我有用...


如果仍然无法解决,您可以创建新的虚拟设备,因为它对我有用。
是的,创建一个新的虚拟作品,谢谢@RoshanBagde
A
Abraham Anak Agung

就我而言,我手动删除了 app-debug.apk 文件并再次运行它。


M
Moh .S

从设备中删除应用程序。编辑文件(YourAppName -> android -> app -> build.gradle)在 defaultConfig 字段中输入以下行

multiDexEnabled 真

defaultConfig {
    multiDexEnabled true //this is the line you need to enter
    applicationId "xxxxxx"
    minSdkVersion xxxxx
    targetSdkVersion xxxxx
    versionCode xx
    versionName "xx"
}

重建应用程序


S
Sunwoo Yang

对我来说,重启手机就可以了。


V
Vigneshwaran Chandrasekaran

Android设备内存不足,可能就是这个原因。


是的,如果上述方法都不起作用,请尝试释放您的内存
s
shankar upadhyay

cd android 并运行 ./gradlew clean

之后创建一个应该可以工作的新虚拟设备


S
Sharthak

在 MIUI 上,默认情况下,在开发人员选项中“通过 USB 安装”被禁用。启用它,然后它允许通过 USB 安装应用程序。


s
sumukha hegde

就我而言,我的设备上没有足够的空间来安装应用程序,所以我清理了一些空间并再次尝试


是的,为我工作了两次
A
Amit Kumar Trivedi

只需转到手机中的开发人员选项,然后禁用并再次启用 USB 调试。它会起作用的。


R
Rutuja Kherde

就我而言,这是权限问题,或者我们可以说开发人员选项中存在设置问题。我正在使用 MI Note 10。为避免此问题,允许进行一些设置,例如通用一个开发人员选项和 USB 调试以及通过 USB 安装、USB 调试(安全设置)、通过 USB 验证应用程序。


J
JxDarkAngel

以前,我安装了 npm,然后安装了 yarn,这就是我开始遇到编译问题的时候,即使是在使用 react-native init 创建新项目时也是如此。卸载纱线,我能够创建和编译。


J
Justin.Mathew

随着您向 Android 中添加更多模块,对 Android 构建系统的需求令人难以置信,并且默认内存设置将不起作用。为避免在 Android 构建期间出现 OutOfMemory 错误,您应该取消注释 /android/gradle.properties 中存在的备用 Gradle 内存设置:

# Specifies the JVM arguments used for the daemon process.
# The setting is particularly useful for tweaking memory settings.
# Default value: -Xmx10248m -XX:MaxPermSize=256m
org.gradle.jvmargs=-Xmx2048m -XX:MaxPermSize=512m -XX:+HeapDumpOnOutOfMemoryError -Dfile.encoding=UTF-8

R
Ruli

我遇到了同样的错误,但问题是我在 USB 调试上做的,因为这对我不起作用。

https://i.stack.imgur.com/5fmDx.png


H
Hadrien Jaubert

我通过删除当前设备并创建一个新设备解决了这个问题。


O
Oscar Velandia

我解决了这个为设备增加更多内存的问题,我是这样做的:

打开 Android Studio 点击更多操作并打开虚拟设备管理器 点击铅笔图标 点击“显示高级设置” 在“内部存储选项”中增加内存 点击“完成”


m
mikowiec

我对错误的 AVD 设置有同样的问题。可能,“Target Android 6.0”是错误的选择。

更改了下一个设置以修复“:app:installDebug FAILED”问题:系统映像:Marshmallow,API 23,ABI x86,Target Google API。

在此处查看有关此内容的详细信息:RN Android Setup


Z
Zeeshan Ansari

只需锁定和解锁android就解决了我的问题

adb reverse tcp:8081 tcp:8081

关注公众号,不定期副业成功案例分享
关注公众号

不定期副业成功案例分享

领先一步获取最新的外包任务吗?

立即订阅