android studio 安装apk失败,AndroidStudio apk安装失败总结

本文总结了在Android Studio中遇到的安装apk失败问题,特别是INSTALL_FAILED_DUPLICATE_PERMISSION错误。该错误通常由于应用声明了重复的自定义权限导致。解决方案包括检查并调整重复权限,或者在build.gradle文件中配置debug签名,使其与release签名一致,确保在local.properties文件中正确设置签名的路径、别名、密码等信息。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

失败

1. INSTALL_FAILED_DUPLICATE_PERMISSION

1.1 具体信息

1.2 原因分析

1.3 解决方法

1. INSTALL_FAILED_DUPLICATE_PERMISSION

1.1 具体信息

04/28 13:57:35: Launching 'app' on Xiaomi MI 9.

Installation did not succeed.

The application could not be installed: INSTALL_FAILED_DUPLICATE_PERMISSION

Installation failed due to: 'null'

Retry

1.2 原因分析

DUPLICATE PERMISSION 翻译为中文为 重复权限 ,并且重复的权限一定不是Android

系统的权限,而是 自定义权限,因为Android系统的权限是可以重复申明的。

1.3 解决方法

找到重复权限,进行权限调整

找不到重复权限,试着把app的debug配置也设成签名包,将如下代码配置在build.gradle中的android节点下

/**

* release和debug都使用app.jks签名文件

*/

signingConfigs {

release {

//加载资源

Properties properties = new Properties()

InputStream inputStream = project.rootProject.file('local.properties').newDataInputStream()

properties.load(inputStream)

//读取文件

def sdkDir = properties.getProperty('key.file')

//读取字段

def key_keyAlias = properties.getProperty('keyAlias')

def key_keyPassword = properties.getProperty('keyPassword')

def key_storePassword = properties.getProperty('storePassword')

keyAlias key_keyAlias

keyPassword key_keyPassword

storeFile file(sdkDir)

storePassword key_storePassword

}

debug {//需要debug签名 否则debug模式微博分享提示签名不一致

//加载资源

Properties properties = new Properties()

InputStream inputStream = project.rootProject.file('local.properties').newDataInputStream()

properties.load(inputStream)

//读取文件

def sdkDir = properties.getProperty('key.file')

//读取字段

def key_keyAlias = properties.getProperty('keyAlias')

def key_keyPassword = properties.getProperty('keyPassword')

def key_storePassword = properties.getProperty('storePassword')

keyAlias key_keyAlias

keyPassword key_keyPassword

storeFile file(sdkDir)

storePassword key_storePassword

}

}

buildTypes {

release {

minifyEnabled false

proguardFiles getDefaultProguardFile('proguard-android-optimize.txt'), 'proguard-rules.pro'

signingConfig signingConfigs.release

}

debug {

minifyEnabled false

proguardFiles getDefaultProguardFile('proguard-android-optimize.txt'), 'proguard-rules.pro'

signingConfig signingConfigs.debug

}

}

然后将签名包的路径、密码、别名、别名密码配置在 local.properties 对应的key中

key.file=签名包的路径

keyAlias=别名

keyPassword=别名密码

storePassword=签名包密码

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值