安装调试失败

在我的设备上安装 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
231491 次浏览

I had the same issue with wrong AVD settings. Probably, "Target Android 6.0" was wrong choice.

Next settings were changed to fix ":app:installDebug FAILED" issue: System Image: Marshmallow , API 23, ABI x86, Target Google API.

see the detail information about this here: RN Android Setup

I got the same problem and did some research. This problem happens a lot on Chinese android phones.

It was solved by change the gradle version to 1.2.3 in file android/build.gradle line 8

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

Since you are using Mi phone which has MIUI

try this

go to Developer options, scroll down to find 'Turn on MIUI optimization' & disable it. Your Phone will be rebooted

check now


If you are using any other android phone, which has a custom skin/UI on top of android OS, then try disabling the optimization provided by that UI and check.
(usually you can find that in 'Developer options')

  1. Go to android/build.gradle, change

    classpath 'com.android.tools.build:gradle:2.2.3' to

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

  2. Then, go to android/gradle/wrapper/gradle-wrapper.properties, change distributionURL to https://services.gradle.org/distributions/gradle-2.2-all.zip

  3. Run again.

If none of the above solutions works then try the following steps to cold boot the emulator

open AVD manager -> Edit device -> Show Advanced Settings -> Boot option -> select Cold Boot instead of Quick boot.

I had this problem and I removed the apk file from my android device/emulator and then run react-native run-android and run successfuly .

I also got troubles with app using gradle 2.14, though with gradle 4 it's ok. By using --deviceID flag app instals without any issue.

react-native run-android --deviceId=mydeviceid

On my android device, the problem was about the previous build versions of the application that I had installed on my phone before. the following steps solved my problem:

  1. removing any previous build of the application, including debugging version and signed apk version

  2. On windows: On the root directory of your project, run :

    cd android

    .\gradlew clean

    cd ..

    npm cache clean --force

On MacOS: On the root directory of your project, run :

 <code>cd android</code>
<code>./gradlew clean</code>
<code>cd .. </code>
  1. reboot your android device
  2. run react-native run-android

Previously, I had installed npm and then installed yarn, and that is when I started to have problems compiling, even when creating new projects with react-native init . Uninstalling yarn, I was able to create and compile.

I had this issue. Mine worked on the emulator well but it didn't work on the device and the error was

app:installDebug FAILED.

If you have a different app with the same name (or package name) on the device: Rename the app or delete it from your device.

In my case, I had the app downloaded from PlayStore and I was trying to debug the APK with the same name. I just uninstalled the app and debugged successfully.

In my case (with React Native), my Android phone was unrecognized by my PC where I was running the server, which can be seen by the message:

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

If that is the case, as highlighted in ADB Android Device Unauthorized, make sure that in Developer Options on your phone USB Debugging is set to true, and enter the following commands in terminal or cmd to restart the Android server.

adb kill-server
adb start-server

And adb devices should list your phone as device instead of unauthorized

On MIUI , inside developer option by default "Install via USB" is disabled.Enable it and than it allows installing app via usb.

Just lock and unlock the android solved my issue then

adb reverse tcp:8081 tcp:8081

This works for me

  1. Uninstall the app from your phone
  2. cd android
  3. gradlew clean
  4. cd ..
  5. react-native run-android

I got the same error but the issue was I did on the USB Debugging after unable this is working for me.

enter image description here

In my case, I did not have enough space on my device to install the app, so I cleared up some space and tried again

open avd manager click on the arrow next to the pencil icon and wipe data works for me...

In my case, I have set up a new app but I was getting errors, tried many possible ways and answers from github and stackoverflow. nothing worked

error enter image description here The solution for me was .. check if you already have an app with the same name is installed in android..

Delete old apps and run react-native run-android

Worked for me.

Just go to the Developer option in your phone and disable and again enable usb debugging. It will work.

In my case, I manually delete the app-debug.apk file and run it again.

  1. Delete the app from the device.
  2. Edit the file (YourAppName -> android -> app -> build.gradle) enter the line below on the defaultConfig field

multiDexEnabled true

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

As you add more modules to Android, there is an incredible demand placed on the Android build system, and the default memory settings will not work. To avoid OutOfMemory errors during Android builds, you should uncomment the alternate Gradle memory setting present in /android/gradle.properties:

# 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

For me, restarting my phone did the trick.

Step 1: Close Android Emulator.

Step 2: Open Android Virtual Device Manager and wipe data by the following image: enter image description here

Step 3: Open your terminal and type

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

Step 4: In terminal, run:

yarn run android

Note: If you are using yarn, just run:

yarn cache clean

In my case, It is problem of permissions or we can say that setting problem present inside developer options. I am using MI Note 10.To avoid this issue,permit some setting such as common one developer option and USB debugging as well as Install via USB,USB debugging(Security settings), Verify apps over USB.

Android device running out of memory, may be that is the reason.

my solution is delete the android/app/build folder

cd android and run ./gradlew clean

After that create a new virtual device that should work

I solved this issue by deleting the current device and just creating a new one.

For me I solved it by uninstalling the already existing app from my phone first (which I was working on the day before the day I got this issue) then building again, it happened to me a few times I think that's how I solved it always.

I solved this adding more memory to the device, I did that in this way:

  1. Open Android studio
  2. click More Actions and open Virtual Device Manager
  3. Click the pencil icon
  4. Click "Show advance settings"
  5. Increase memory in "Internal Storage option"
  6. Click "Finish"

I also faced this issue today, tried many methods online but none of them worked. Here is how I solved this issue:

I used Android Studio to run the app in emulator, it worked. After using npx react-native run-android to run (which failed), running using Android Studio directly also failed, and I got the error INSTALL_FAILED_INSUFFICIENT_STORAGE. This message was much more helpful than the error message from react-native. Then I assigned a bigger storage to my virtual Android phone by going to Device Manager > Device Name > Edit > Show Advanced Settings > Internal Storage. Wipe virtual device's data. Then using the react-native method can work.

1. Increase virtual device's internal storage in Android Studio
2. Wipe virtual device's data
3. Run