相关疑难解决方法(0)

Android studio在真实设备上运行应用程序后会添加不需要的权限

在设备应用程序上运行应用程序后,需要在清单文件中未提及的不需要的位置权限 当我从我的朋友Android工作室运行相同的代码而不是运行正常而没有额外的权限需要.

清单文件

<uses-sdk
    android:minSdkVersion="14"
android:targetSdkVersion="21" />
    <uses-permission android:name="android.permission.ACCESS_WIFI_STATE" />
    <uses-permission android:name="android.permission.INTERNET" />
    <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"/>
    <uses-permission android:name="android.permission.VIBRATE" />
    <uses-permission android:name="android.permission.CALL_PHONE" />
    <uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE" />
    <uses-permission android:name="android.permission.USE_CREDENTIALS" />
    <uses-permission android:name="android.permission.GET_ACCOUNTS" />
    <uses-permission android:name="com.android.vending.BILLING" />
    <uses-permission android:name="com.samsung.android.providers.context.permission.WRITE_USE_APP_FEATURE_SURVEY"/>

    <uses-feature
        android:name="android.hardware.telephony"
        android:required="false" />

    <uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
Run Code Online (Sandbox Code Playgroud)

在此输入图像描述

Build.gradle

    apply plugin: 'com.android.application'

    android {
        compileSdkVersion 21
        buildToolsVersion "21.1.2"

        defaultConfig {
            applicationId "xxxxxxx"
        }
        dexOptions {

            javaMaxHeapSize "4g"
        }

        packagingOptions {
            exclude 'META-INF/LICENSE.txt'
            exclude 'META-INF/NOTICE.txt'
            exclude 'META-INF/LICENSE'
            exclude 'META-INF/NOTICE'
        }

        lintOptions{
            abortOnError false
        }
    }
    repositories { …
Run Code Online (Sandbox Code Playgroud)

android android-manifest android-permissions build.gradle android-gradle-plugin

21
推荐指数
2
解决办法
6317
查看次数

如果我只在Google Play商店中发布,我是否需要android.permission.WAKE_LOCK用于Google Play服务?

我正在尝试整合Google Analytics for Android.根据此处文档,它要求添加android.permission.WAKE_LOCK(提供下面的注释说明).我不清楚它.如果我仅在Google Play商店中发布该应用,我是否还需要此功能?

如果不是绝对必要,我真的不想要求用户获得额外的许可.

<!-- Optional permission for reliable local dispatching on non-Google Play devices -->
<uses-permission android:name="android.permission.WAKE_LOCK" />
Run Code Online (Sandbox Code Playgroud)

特别是,我不明白这个说明在这里的含义是什么:

可选地,可以请求WAKE_LOCK权限以改进非Google Play设备上的调度.

android google-analytics android-manifest android-permissions google-analytics-firebase

14
推荐指数
2
解决办法
8027
查看次数

上传apk中的权限多于清单文件中的权限

我想更新我的应用程序,但上传后我注意到我的清单中没有提到额外的权限:

android.permission.ACCESS_NETWORK_STATE
android.permission.GET_ACCOUNTS
android.permission.INTERNET
android.permission.READ_EXTERNAL_STORAGE
android.permission.USE_CREDENTIALS
android.permission.WRITE_EXTERNAL_STORAGE
com.google.android.c2dm.permission.RECEIVE
Run Code Online (Sandbox Code Playgroud)

我的清单看起来像这样

<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="com.stepscience.yahtzee" >

<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />

<application
    android:allowBackup="true"
    android:icon="@mipmap/ic_launcher"
    android:label="@string/app_name"
    android:theme="@style/Theme.App" >
    <meta-data
        android:name="com.google.android.gms.games.APP_ID"
        android:value="@string/app_id" />

    <activity
        android:name=".StartActivity"
        android:label="@string/app_name"
        android:screenOrientation="portrait" >
        <intent-filter>
            <action android:name="android.intent.action.MAIN" />

            <category android:name="android.intent.category.LAUNCHER" />
        </intent-filter>
    </activity>

    <meta-data
        android:name="com.google.android.gms.version"
        android:value="@integer/google_play_services_version" />
    <activity
        android:name="com.google.android.gms.ads.AdActivity"
        android:configChanges="keyboard|keyboardHidden|orientation|screenLayout|uiMode|screenSize|smallestScreenSize"
        android:theme="@android:style/Theme.Translucent" />


</application>
Run Code Online (Sandbox Code Playgroud)

我只使用Internet和网络访问权限.其他权限来自哪里?在应用程序中,我还使用了一些谷歌播放服务,如多人游戏和排行榜.我之前对该版本所做的唯一更改是一些版本更新(gradle,play-services,appcompat)和一些xml修改.

permissions android android-manifest google-play

8
推荐指数
1
解决办法
1453
查看次数