将 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
由于您使用的是具有 MIUI 的小米手机
尝试这个
转到开发人员选项,向下滚动以找到“打开 MIUI 优化”并禁用它。您的手机将重新启动
现在检查
如果您使用的是任何其他在 android OS 之上具有自定义皮肤/UI 的 android 手机,请尝试禁用该 UI 提供的优化并检查。 (通常你可以在“开发者选项”中找到)
就我而言,我已经设置了一个新应用程序,但我遇到了错误,尝试了许多可能的方法和来自 github 和 stackoverflow 的答案。没有任何效果
https://i.stack.imgur.com/mpkLT.png
删除旧应用并运行 react-native run-android
为我工作。
在我的 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 并在设备上卸载应用程序。
我有这个问题。我的在模拟器上工作得很好,但在设备上没有工作,错误是
应用程序:安装调试失败。
如果您在设备上有其他同名(或软件包名称)的应用:重命名该应用或将其从您的设备中删除。
这对我有用
从手机中卸载应用程序 cd android gradlew clean cd .. react-native run-android
我遇到了同样的问题并做了一些研究。这个问题在中国安卓手机上经常发生。
通过在文件 android/build.gradle 第 8 行中将 gradle 版本更改为 1.2.3 解决了这个问题
classpath 'com.android.tools.build:gradle:1.2.3'
第 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
转到 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 再次运行。
如果上述解决方案均无效,请尝试以下步骤冷启动模拟器
打开 AVD 管理器 -> 编辑设备 -> 显示高级设置 -> 启动选项 -> 选择冷启动而不是快速启动。
在我的情况下(使用 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
我遇到了这个问题,我从我的 android 设备/模拟器中删除了 apk 文件,然后运行 react-native run-android 并成功运行。
我也遇到了使用 gradle 2.14 的应用程序的问题,尽管使用 gradle 4 没问题。通过使用 --deviceID 标志应用程序安装没有任何问题。
react-native run-android --deviceId=mydeviceid
就我而言,我从 PlayStore 下载了该应用程序,并尝试调试具有相同名称的 APK。我刚刚卸载了应用程序并成功调试。
react-native run-android
工作。
打开 avd 管理器单击铅笔图标旁边的箭头,然后擦除数据对我有用...
就我而言,我手动删除了 app-debug.apk
文件并再次运行它。
从设备中删除应用程序。编辑文件(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"
}
重建应用程序
对我来说,重启手机就可以了。
Android设备内存不足,可能就是这个原因。
cd android 并运行 ./gradlew clean
之后创建一个应该可以工作的新虚拟设备
在 MIUI 上,默认情况下,在开发人员选项中“通过 USB 安装”被禁用。启用它,然后它允许通过 USB 安装应用程序。
就我而言,我的设备上没有足够的空间来安装应用程序,所以我清理了一些空间并再次尝试
只需转到手机中的开发人员选项,然后禁用并再次启用 USB 调试。它会起作用的。
就我而言,这是权限问题,或者我们可以说开发人员选项中存在设置问题。我正在使用 MI Note 10。为避免此问题,允许进行一些设置,例如通用一个开发人员选项和 USB 调试以及通过 USB 安装、USB 调试(安全设置)、通过 USB 验证应用程序。
以前,我安装了 npm,然后安装了 yarn,这就是我开始遇到编译问题的时候,即使是在使用 react-native init 创建新项目时也是如此。卸载纱线,我能够创建和编译。
随着您向 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
我遇到了同样的错误,但问题是我在 USB 调试上做的,因为这对我不起作用。
https://i.stack.imgur.com/5fmDx.png
我通过删除当前设备并创建一个新设备解决了这个问题。
我解决了这个为设备增加更多内存的问题,我是这样做的:
打开 Android Studio 点击更多操作并打开虚拟设备管理器 点击铅笔图标 点击“显示高级设置” 在“内部存储选项”中增加内存 点击“完成”
我对错误的 AVD 设置有同样的问题。可能,“Target Android 6.0”是错误的选择。
更改了下一个设置以修复“:app:installDebug FAILED”问题:系统映像:Marshmallow,API 23,ABI x86,Target Google API。
在此处查看有关此内容的详细信息:RN Android Setup
只需锁定和解锁android就解决了我的问题
adb reverse tcp:8081 tcp:8081