应用程序不会在设备上运行:DELETE_FAILED_INTERNAL_ERROR?

Posted

技术标签:

【中文标题】应用程序不会在设备上运行:DELETE_FAILED_INTERNAL_ERROR?【英文标题】:Application will not run on device: DELETE_FAILED_INTERNAL_ERROR? 【发布时间】:2015-07-12 16:09:47 【问题描述】:

问题

我对我的 gradle 文件进行了一些更改,每当我尝试运行我的应用程序时,在被告知必须卸载应用程序路径然后重新安装才能运行应用程序后,我一直收到错误 DELETE_FAILED_INTERNAL_ERROR。我批准卸载,然后DELETE_FAILED_INTERNAL_ERROR 被抛出,执行完全停止。

这是我的 gradle 文件:

apply plugin: 'com.android.application'

android 
    compileSdkVersion 21
    buildToolsVersion "21.1.2"

    defaultConfig 
        applicationId "benyamephrem.tilt"
        minSdkVersion 14
        targetSdkVersion 21
        versionCode 19
        versionName "3"
    
    buildTypes 
        release 
            minifyEnabled true
            proguardFiles getDefaultProguardFile('proguard-android-optimize.txt'), 'proguard-rules.pro'
        
    


dependencies 
    compile fileTree(dir: 'libs', include: ['*.jar'])
    compile 'com.android.support:appcompat-v7:21.0.3'
    compile 'com.google.android.gms:play-services:7.0.0'
    compile 'com.nineoldandroids:library:2.4.0'
    compile 'com.daimajia.easing:library:1.0.0@aar'
    compile 'com.daimajia.androidanimations:library:1.0.8@aar'

这是 ADB Logcat:

Installing benyamephrem.tilt
DEVICE SHELL COMMAND: pm install -r "/data/local/tmp/benyamephrem.tilt"
pkg: /data/local/tmp/benyamephrem.tilt
Failure [INSTALL_FAILED_DEXOPT]


DEVICE SHELL COMMAND: pm uninstall benyamephrem.tilt
DELETE_FAILED_INTERNAL_ERROR

我已经安装了 gradle 所需的所有 sdk 和构建组件。我还从设备上卸载了所有使用我的包名的应用程序,但该应用程序仍然无法运行。

问题

什么是DELETE_FAILED_INTERNAL_ERROR,为什么应用程序无法运行?

【问题讨论】:

你能添加你的 adb logcat 吗? @HarshDattani 我已经发布了。 您是否正在尝试使用 genymotion 或任何其他此类模拟器。如果是,请尝试删除模拟器并重新创建相同 根据***.com/questions/38450717/…,尝试禁用“即时运行”。为我工作! 【参考方案1】:

尝试在 Android Studio 中清理项目,然后重新构建它。要清理项目,请点击 Build > Clean Project

我遇到了同样的问题并找到了这个解决方案here。

【讨论】:

【参考方案2】:

从命令提示符打开您的项目文件夹并输入:gradlew clean 完成后它将开始下载重新启动您的 android studio 并运行您的程序。

【讨论】:

【参考方案3】:

我遵循了所有方法,但有效的是

1.打开命令提示符。

2.将目录更改为项目文件夹。

3.写命令

gradle clean

现在尝试构建!

【讨论】:

【参考方案4】:

就我而言,我的 manifest.xml 中有一个未知的包名

例如,我忘记将“YOURPACKAGENAME”字符串更改为我的应用程序包名称

android:protectionLevel="signature" />
    <uses-permission android:name="YOURPACKAGENAME.permission.C2D_MESSAGE" />

【讨论】:

【参考方案5】:

解决方案 1: 清理项目:构建 > 清理项目。

解决方案 2:禁用改为运行

Windows 的步骤:文件 > 设置 > 构建、执行、部署 > 即时运行 > 取消选中:启用即时运行

Mac 的步骤:Android Studio > Preferences > Build, Execution, Deployment > Instant Run > 取消选中:启用 Instant Run

解决方案 3:对于 Redmi 用户,

转到设置 -> 权限 -> 通过 USB 安装:如果已列出,请取消选中您的应用。

转到设置 -> 其他设置 -> 隐私:检查未知来源选项。

转到设置 -> 附加设置 -> 开发人员选项:选中通过 USB 安装选项。

进入设置->附加设置->开发者选项:启用视图属性检查

最后,进入设置->附加设置->开发者选项:关闭MIUI优化。

注意 - 需要登录 MI 帐户才能启用通过 USB 安装选项。

参考:http://en.miui.com/thread-410773-1-1.html

【讨论】:

【参考方案6】:

我有同样的问题..

问题是我没有足够的空间,我卸载了一些应用程序并且工作正常。

【讨论】:

【参考方案7】:

如果清理不起作用, 确保您的 minSdkVersion 不等于目标 sdk 版本,并且您正在测试的设备等于或高于 minSdkVersion。

为我修复了它,例如在 build.gradle 中:

minSdkVersion 21
targetSdkVersion 23

【讨论】:

【参考方案8】:

我几乎在新的 Android Studio 2.2 Preview 6 版本中的每个 Run 命令 之后都会收到此错误。为了更快地修复它而不是使用 Clean Project,我正在使用 Make project。但是这个快速修复并不能防止错误在一段时间后再次出现。

【讨论】:

【参考方案9】:

对于 Mac 上的 Android Studio:

导航栏:

Android Studio > 首选项 > 构建、执行、部署 > 即时运行 > 取消选中:启用即时运行

对于 Windows 上的 Android Studio:

文件 > 设置 > 构建、执行、部署 > 即时运行 > 取消选中:启用即时运行

【讨论】:

以上是关于应用程序不会在设备上运行:DELETE_FAILED_INTERNAL_ERROR?的主要内容,如果未能解决你的问题,请参考以下文章

Flutter 应用程序在 android studio 模拟器上完美运行,但不会超过物理设备上的加载屏幕

React 本机应用程序不会在 android 设备上加载

应用程序在 Xcode 上连接设备时显示警报视图,否则不会

站点背景图像在 PC 上完美运行,但它们不会出现在移动设备上

UIScrollView 在不同的设备上运行时不会滚动或部分滚动 swift

在设备上安装配置文件不会执行 xcode 6