一般这种情况,你都可以在清单文件顶部找到类似如下的代码:

他的作用是:在AndroidManife.xml 中添加android:sharedUser可以将不同的程序加入到同一个进程中,方便数据的共享。

但是有个前提是需要签名相同

而报这个错有可能是因为签名和系统签名不相同, android.uid.system是表示系统进程

解决方案

1.如果是自己定制的系统可以使用系统签名,如果是上传到应用市场的,每个应用市场都不相同,所以可能就用不了

2.如果不想和系统一个进程,就删掉这行代码

扩展

从as运行的时候有时候会出现: Couldn't terminate the existing process for com.xxx.xxx  或者 一运行就wait for devxxx

我这边也有两个解决方案:

1.如果暂时测试用不到和系统进程相关的事,就暂时把这行代码删掉

2.如果需要测试和系统进程相关的事,则每次运行之前先把应用卸载掉,然后在安装,手动可能比较麻烦,但是写到运行的任务中就比较方便了,加到任务中的方式如下:

先在app:build.gradle中加入如下代码: 就是使用adb卸载当前的app(如果执行不了的请自行配置adb环境变量)

Groovy:

task unInsApk() {doLast {Runtime.getRuntime().exec("adb uninstall $android.defaultConfig.applicationId").waitFor()}
}

kts:

tasks.register<Task>("unInsApk") {doLast {Runtime.getRuntime().exec("adb uninstall ${android.defaultConfig.applicationId}").waitFor()}
}

然后点上下箭头或拖动,将卸载app的task移动到执行安装apk之前,这样就可以先卸载在编译安装apk了

然后就可以好好的玩耍了,亲测可用

ps:如果下面一直提示wait to devxxx的话可以先clean project ,然后重启所有as,卸载在重新运行一般就可以了

发现如果手动编译并安装就不会出现wait to devxxx,所以我们也可以直接写一个task,每次运行都使用它,就可以一键部署apk了,代码如下(可能需要根据你的目录小改)

Groovy:

task buildAndInstallApk(dependsOn: assemble) {doLast {def apkDir = new File(getBuildDir(), "outputs/apk/release")def apkFile = nullfor (File file : apkDir.listFiles().sort()) {if (file.name.lastIndexOf(".apk") > 0) {apkFile = filebreak}}Runtime.getRuntime().exec("adb install -r -d -t $apkFile.absolutePath").waitFor()//如果需要启动某个页面的话,可以用上一行的代码执行以下命令:adb shell am start xxx,命令参考:https://blog.csdn.net/qq_33505109/article/details/79515747}
}

kts:

tasks.register("buildAndInstallApk") {doLast {val apkFile = File(buildDir, "outputs/apk/release").listFiles()?.sorted()?.find {it.name.endsWith(".apk")} ?: throw RuntimeException("找不到apk文件")Runtime.getRuntime().exec("adb install -r -d -t ${apkFile.absolutePath}").waitFor()//如果需要启动某个页面的话,可以用上一行的代码执行以下命令:adb shell am start xxx,命令参考:https://blog.csdn.net/qq_33505109/article/details/79515747}
}.dependsOn("assemble")

ps:如果有更好的方式请留言

解决:The application could not be installed: INSTALL_FAILED_SHARED_USER_INCOMPATIBLE相关推荐

  1. 解决Installation did not succeed. The application could not be installed. List of apks: [0]

    解决Installation did not succeed. The application could not be installed. List of apks: [0] 1.clean再编译 ...

  2. Android之运行app提示The application could not be installed: INSTALL_FAILED_TEST_ONLY

    1.问题 笔记本新安装的Android studio(版本3.5.2)运行最简单的程序,错误提示如下 The application could not be installed: INSTALL_F ...

  3. Session 'app': Installation did not succeed.The application could not be installed: INSTALL FAILED I

    在Android Studio中使用模拟器进行调试的时候,会出现错误信息无法进行模拟器调试 错误信息 Session 'app': Installation did not succeed.The a ...

  4. 应用安装失败“The application could not be installed: INSTALL_FAILED_USER_RESTRICTED”问题解决

    问题描述: 今天,出现了app无法安装的问题,报错信息如下: 03/04 09:02:05: Launching 'app' on Xiaomi Redmi K20 Pro. Installation ...

  5. The application could not be installed: INSTALL_FAILED_TEST_ONLY解决方案

    项目场景: 调试应用,安装apk失败 Installation did not succeed. The application could not be installed: INSTALL_FAI ...

  6. Android Studio 4报错-The application could not be installed: INSTALL_FAILED_OLDER_SDK

    Android Studio 4报错-The application could not be installed: INSTALL_FAILED_OLDER_SD 解决办法: 修改minSdkVer ...

  7. 【错误记录】Android 应用安装报错 ( The application could not be installed: INSTALL_FAILED_CONFLICTING_PROVIDER )

    文章目录 一. 报错信息 二. 解决方案 一. 报错信息 出错场景 : 需要安装两个相同的 APP 进行对比测试 ; 对工程进行了如下修改 : 应用标识 : 修改了 build.gradle 中的 a ...

  8. 成功解决tornado.application - ERROR - Exception in callback <bound method Nanny.memory_monitor of <Nanny

    成功解决tornado.application - ERROR - Exception in callback <bound method Nanny.memory_monitor of < ...

  9. 解决 This application requires Java Runtime Environment X

    转载自:解决 This application requires Java Runtime Environment XX - 一起简单 - 博客园 解决 This application requir ...

最新文章

  1. python 如何生成特定间隔数列?range()、numpy.arange()
  2. python设置路径_Python探索之修改Python搜索路径
  3. 项目启动,数据库连接错误:SQLNonTransientConnectionException: Could not create connection to database server
  4. PHP封装curd,CURD · TookPHP开发手册 · 看云
  5. kubernetes k8s一文入门
  6. 数据库常用的锁有哪些?
  7. 动态的给python添加进度条_python动态进度条的实现代码
  8. python声明匿名函数_举例讲解Python的lambda语句声明匿名函数的用法
  9. magento xml配置详解(1)
  10. cropbox php,jQuery用户头像裁剪插件cropbox.js使用详解
  11. 博时基金:DevOps重塑IT价值助力金融科技创新发展
  12. C语言程序设计(第四版)谭浩强 清华 【2000】
  13. 错误集--创建消息队列用户,用于controler和node节点连接rabbitmq的认证
  14. 值得注意的4个NPS注意事项
  15. 简述计算机数控系统的工作原理,计算机数控系统与802D系统编程基本原理
  16. linux系统支持网银吗,Linux系统能使用网银吗?
  17. [附源码]java毕业设计小超市进销存管理系统
  18. Java并发机制的底层实现原理--volatile
  19. 实现元素水平垂直居中的4种方法
  20. SSM毕设项目超市会员卡管理系统dq469(java+VUE+Mybatis+Maven+Mysql)

热门文章

  1. 错误解决 :Microsoft Visual C++ 14.0 is require Microsoft Visual C++ Builder 包丢失或者损坏
  2. tableau可视化函数使用案例(六十七)-如何用Tableau获取数据并对数据进行操作?
  3. tableau可视化数据分析60讲(十九)-tableau仪表板布局
  4. Python实现文本自动分类(朴素贝叶斯方法)
  5. Linux疑难杂症解决方案100篇(十四)-Linux scp 使用详解
  6. Python入门100题 | 第022题
  7. Anaconda中Jupyter notebook打开后闪退问题解决方法
  8. nginx大量TIME_WAIT的解决办法--转
  9. 从netty-example分析Netty组件续
  10. SpringMVC关于json、xml自动转换的原理研究[附带源码分析 --转