Android Studio 自动添加一些权限?

标签 android android-studio android-permissions

我有一个奇怪的问题。我在 Android Studio 上构建了我的应用程序。没有问题,但有件事引起了我的注意。

即使我没有添加WAKE_LOCK权限或相关代码,构建的apk也包含WAKE_LOCK权限。我查了manifest, gradle, java, xml...没有跟WAKE_LOCK相关的代码。

我想 Android Studio 会自动添加该权限,但这怎么可能,为什么?

我还有一个附加问题。我没有使用任何 WAKE_LOCK 代码,但它仍然有效吗?应用会让设备保持唤醒状态吗?

list :

<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
<uses-permission android:name="android.permission.RECEIVE_BOOT_COMPLETED" />
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
<uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE" />
<uses-permission android:name="com.android.vending.BILLING" />

Gradle :

apply plugin: 'com.android.application'

android {
    compileSdkVersion 24
    buildToolsVersion "24.0.1"

    defaultConfig {
        applicationId "com.xyz.abc"
        minSdkVersion 10
        targetSdkVersion 24
        versionCode 27
        versionName "2.3"
    }
    buildTypes {
        release {
            minifyEnabled true
        }
    }
    lintOptions {
        disable "ResourceType"
    }
}

dependencies {
    compile 'com.android.support:appcompat-v7:24.1.1'
    compile 'com.google.android.gms:play-services-ads:9.2.1'
    compile 'com.google.android.gms:play-services-analytics:9.2.1'
    compile 'com.android.support:cardview-v7:24.1.1'
    compile 'com.android.support:recyclerview-v7:24.1.1'
    compile 'com.android.support:percent:24.1.1'
    compile 'jp.co.recruit_mp:android-RMP-Appirater:1.1.1'
}

编辑:我检查了我的另一个应用程序,Android Studio 也向该应用程序添加了 WAKE_LOCK 权限。同样,我没有使用有关 WAKE_LOCK 的任何内容。

最佳答案

你可以勾选一个

YourProject/build/outputs/logs/manifest-merger-XXX-report.txt 

查看合并权限的位置。在你的情况下,我相信它是

com.google.android.gms:play-services-analytics:9.2.1

Documentation for Google Analytics声明此权限是可选的。 所以可能会尝试按照 this answer 中的建议将其删除

关于Android Studio 自动添加一些权限?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38689895/

相关文章:

android - 每个支持 GCM 的应用程序都应该有 "android.permission.WAKE_LOCK"

android - 使用 SDK 30 在 Android Web View 中上传相机图像时获取 null Intent.getDataString()

java - Android JNI - 字符串作为随机数返回

更新到北极狐后,Android XML 预览不清楚

android.permission.WRITE_MEDIA_STORAGE 错误

android - 调用需要 API 级别 23(当前最小值为 14) : android. app.Activity#requestPermissions,checkSelfPermission

android - SQLite 和填充 ListView ,android

java - 在 java 中使用方法避免 != null

android - listView 上的复选框阻止事件点击,kotlin

java - 新手Android错误: java. lang.NoClassDefFoundError : android. content.ClipboardManager