zoukankan      html  css  js  c++  java
  • "INSTALL_FAILED_DUPLICATE_PERMISSION "错误解决

    我们在进行Android组件安全测试时,如果遇到声明了权限的组件,在编写PoC时,可能会遇到如下错误提示:

    INSTALL_FAILED_DUPLICATE_PERMISSION perm=com.myapp.permission.C2D_MESSAGE pkg=com.myapp

    假设申明权限的manifest文件如下:

    <uses-permission android:name="com.google.android.c2dm.permission.RECEIVE"/>
    <uses-permission android:name="com.yourpackage.name.permission.C2D_MESSAGE"/>
    
    <permission
        android:name="com.yourpackage.name.permission.C2D_MESSAGE"
        android:protectionLevel="normal"/>
    <permission
        android:name="com.yourpackage.name.permission.MAPS_RECEIVE"
        android:protectionLevel="normal"/>

    我们需要把它修改为:

    <uses-permission android:name="com.google.android.c2dm.permission.RECEIVE"/>
    <uses-permission android:name="${applicationId}.permission.C2D_MESSAGE"/>
    
    <permission
        android:name="${applicationId}.permission.C2D_MESSAGE"
        android:protectionLevel="normal"/>
    <permission
        android:name="${applicationId}.permission.MAPS_RECEIVE"
        android:protectionLevel="normal"/>

    然后在build.gradle文件中设置applicationId

    android {
        compileSdkVersion 28
        defaultConfig {
            applicationId "com.attack.provider"
            minSdkVersion 15
            targetSdkVersion 28
            versionCode 1
            versionName "1.0"
            testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner"
        }
        buildTypes {
            release {
                minifyEnabled false
                proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
            }
        }
    }
  • 相关阅读:
    JVM内存问题分析
    CAS
    普通内部类,匿名内部类和静态内部类
    文章简介
    conda更换下载源
    MySQL常见约束
    MySQL常见的数据类型
    DDL(数据定义语言)
    DML语言(数据操纵语言)
    进阶9:联合查询
  • 原文地址:https://www.cnblogs.com/goodhacker/p/10082727.html
Copyright © 2011-2022 走看看