即使应用程序似乎没有安装,也会失败
当试图将我的应用程序部署到Android设备时,出现以下错误:
Deployment failed because of an internal error: Failure [INSTALL_FAILED_UPDATE_INCOMPATIBLE]
我知道这个问题,但该应用程序未安装。 在尝试部署期间,它已被Visual Studio删除/部分删除。
在过去,我通过从谷歌播放商店下载的应用程序,然后从设置 – >应用程序pipe理器中解决这个问题。 但是,现在我正在尝试安装它时收到错误“不兼容的更新”。
我试图使用Titanium备份和其他一些东西,但没有运气去除它。
编辑1
我意识到(从@Motz),我没有提到,明显的解决scheme不起作用。 即,该应用程序不会出现在设置 – >应用程序
我已经看过几次了 通常,这是由于我的手机上有一个签名的发行版本,然后尝试部署debugging版本。 它陷入了一个无法完全卸载的无效状态。
解决scheme适用于我的是打开命令提示符并键入:
adb uninstall my.package.id
这通常会完成卸载,以便我继续开发。
祝你好运!
不需要做adb uninstall
,只需进入settings->apps
,然后从那里卸载。 你会看到你的应用程序变灰。
这个问题通常与发布vsdebugging版本有关,例如@Kiliman在这里指出。
卸载应用程序就足以避免这个问题。
INSTALL_FAILED_UPDATE_INCOMPATIBLE
但有时甚至是卸载消息再次提出,它发生在Android OS 5.0 +,所以这是解决scheme:
转到Settings
> Apps
,你会发现你的应用程序的消息:
“未为此用户安装”
,我们必须手动卸载所有用户的选项:
“为所有用户卸载”
您必须确保应用程序已卸载。
在你的手机,尝试去settings/applications
并显示所有安装的应用程序的列表,然后确保为所有用户卸载应用程序(在我的情况下,我已经卸载了应用程序,但仍然为其他人)。
我通常在Android 5.0+版本的设备上面对这个问题。 由于它在同一设备上具有多用户configuration文件帐户。 每个应用程序将作为所有用户的单独实例进行安装。 确保卸载所有的用户如下图所示。
我意外地连接了两个设备。
删除一个设备后, INSTALL_FAILED_UPDATE_INCOMPATIBLE
错误消失。
您可以添加一个参数来运行,请参阅:
Run --> Parameters
在字段参数中add -cleaninstall
现在只要运行,他们总是会在安装之前做一个彻底的清理。
在我的情况下,我得到了这个时,切换的Android的最小目标版本,当我改回原来的(当我创build项目时)。 因此,卸载工作。 但是,当我改变我的Android版本到最新,我再次得到它。 为了解决这个问题,我去了Android项目的属性和Android清单部分,我添加了一个包名称,如com.dotnetdreamer.net。 如果你已经有一个包名,那么你可以简单地将它重命名为别的。
从电话中删除所有应用程序文件
要自动删除手机上的应用程序,您可以使用以下步骤。 以一种快速而干净的方式删除您的应用程序和应用程序数据可能非常有用。
用这个代码创build一个文本文件并保存为Uninstall.sh。 转到该脚本的文件夹(你把它放在哪里),并执行:sh Uninstall.sh YOURNAMESPACE
现在你的名字空间文件夹(包括保存的应用程序文件和数据库)将被删除。
echo "Going to platform tools $HOME/Library/Android/sdk/platform-tools" cd $HOME/Library/Android/sdk/platform-tools echo "uninstalling app with packagae name $1" ./adb uninstall $1
删除所有的应用程序文件从PC
使用此代码创build一个文本文件并将其保存为DeleteBinObj.sh。
find . -iname "bin" -o -iname "obj" | xargs rm -rf
转到您放置此脚本的项目文件夹,并在terminal中执行:sh DeleteBinObj.sh
如果这有助于某人,我部署我的应用程序谷歌播放,当我卸载它,并试图在我的设备上运行debugging(新版本)我得到这个失败的更新消息。
我无法看到我的设备中的应用程序 (它已被卸载),所以我:
从谷歌播放安装第一个版本
打开设置/应用程序/ 应用程序名称
清除数据
清除caching
卸载应用程序
现在您可以再次将debugging版本部署到设备:)
如果您使用的是三星设备,并且有机会将您的应用程序标记为Samsung Knox,那么您需要从My Knox应用程序中将其卸载。
从通用应用程序卸载不会从Knox应用程序卸载它。 它必须明确地完成!
从Android设备上卸载APK(你正在工作的应用程序),然后再次运行。
一个简单的方法是重命名你的软件包名称并重新运行