116

在清单中未添加 android.permission.READ_PHONE_STATE。允许。

为什么在我上传新的 apk 版本时会出现错误,错误如下。

您的应用有一个版本代码为 1 的 apk,它请求以下权限:android.permission.READ_PHONE_STATE。在 APK 中使用这些权限的应用需要设置隐私政策。

我附上了我的 google play 商店帐户的屏幕截图。 在此处输入图像描述

我的清单文件。

<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
    package="com.my.package.name">

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

    <application
        android:name=".utils.PreferenceManager"
        android:allowBackup="true"
        android:icon="@mipmap/ic_launcher"
        android:label="@string/app_name"
        android:largeHeap="true"
        android:supportsRtl="true"
        android:theme="@style/AppTheme">
        <activity
            android:name=".SplashScreen"
            android:screenOrientation="portrait">
            <intent-filter>
                <action android:name="android.intent.action.MAIN" />

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

        <activity
            android:name=".MainActivity"
            android:screenOrientation="portrait" />

        <activity
            android:name=".CategoryListActivity"
            android:screenOrientation="portrait" />
        <activity
            android:name=".ImagesActivity"
            android:screenOrientation="portrait" />

    </application>

</manifest>
4

23 回答 23

126

您的应用的 manifest.xml 具有从您的设备访问信息的这些权限,但您在 Play 商店提交时没有隐私政策链接。所以你得到这个警告。

需要应用程序的隐私政策 如果您的应用程序处理个人或敏感用户数据

将隐私政策添加到应用的商品详情中有助于让您了解如何处理敏感的用户和设备数据。

更新 1

Google Play 管理中心的隐私政策设置已更改位置。

在 Google Play 控制台中,
选择商店状态应用内容
根据隐私政策

更新 2

选择最左下角的策略应用程序内容。
根据隐私政策

于 2016-12-24T06:17:57.177 回答
42

只需尝试将此行添加到您的清单文件中:

<uses-permission android:name="android.permission.READ_PHONE_STATE" tools:node="remove" />

并将属性添加xmlns:tools="http://schemas.android.com/tools"到您的<manifest>标签以定义命名空间工具

文档tools:node="remove"

从合并的清单中删除此元素。虽然看起来您应该只删除此元素,但当您在合并清单中发现不需要的元素时使用此元素是必要的,并且它是由您无法控制的较低优先级清单文件提供的(例如作为导入库)。

于 2016-12-26T17:59:43.650 回答
8

是第三方库。你可以找到罪魁祸首build/outputs/logs/manifest-merger-release-report.txt

于 2018-05-24T13:58:36.673 回答
6

这可能是因为任何第三方库都可能包含该权限,因此根据我在该领域的经验,您必须添加有关该特定信息的隐私政策,这意味着如果您要求在您的应用程序中获得帐户权限,那么您必须声明通过您的隐私政策文件,我们使用该数据,即电子邮件地址或其他任何原因,例如登录 google play 游戏。

这个也可以

<uses-permission android:name="android.permission.READ_PHONE_STATE" tools:node="remove" />

希望这将指导您针对此警告可以采取的措施为您的应用创建隐私政策并将其附在商品列表中。

于 2016-12-20T09:03:39.880 回答
6

您在项目中拥有的依赖项将添加自己的权限。请执行以下操作以查找“READ_PHONE_STATE”的来源。

  1. 重建你的安卓应用程序
  2. 在android studio中按“Ctrl+Shift+F”(基本上在您喜欢的编辑器中进行搜索)。
  3. 搜索“READ_PHONE_STATE”,您会在重新生成的清单文件(不是您最初创建的文件)中找到该条目。通过它的路径,您可以知道从哪个依赖项添加权限。 在此处输入图像描述
于 2017-02-07T08:48:37.193 回答
6

如果你使用React Native

这个问题在这里已经彻底解决了

https://facebook.github.io/react-native/docs/removing-default-permissions

于 2018-07-29T07:27:01.737 回答
5

您需要在清单文件中指定min和版本。 如果不是,将在导出您的 apk 文件时自动添加。target sdk
android.permission.READ_PHONE_STATE

<uses-sdk
        android:minSdkVersion="9"
        android:targetSdkVersion="19" />
于 2017-02-15T20:59:12.057 回答
3

12.0.0目前有些人因为使用AdMob lib 版本而面临同样的问题。

将其更新为12.0.1. 这应该解决它。你可以在这里阅读更多

于 2018-04-02T06:10:13.583 回答
3

您可能需要添加或更新您的隐私政策。您可以使用此模板轻松创建隐私政策

https://app-privacy-policy-generator.firebaseapp.com/

于 2020-04-15T14:32:31.373 回答
2

你应该放弃android.permission.READ_PHONE_STATE许可。将此添加到您的清单文件中:

<uses-permission
    android:name="android.permission.READ_PHONE_STATE"
    tools:node="remove" />
于 2018-03-24T22:17:30.483 回答
2

您需要在 Google Play Console 中为您的应用提供隐私政策,或删除需要隐私政策的权限。

去这里: https: //play.google.com/console/app/app-content/summary

或者为您的应用打开 Google Play 控制台,一直滚动到左侧导航菜单的底部,然后在“政策”标题下单击“应用内容”。

有关何时以及为何需要隐私政策的更多信息,请参阅此处的文档

于 2021-03-30T13:01:48.247 回答
2

如果您在设备 > android 6.0 上测试您的应用程序,您还必须明确要求用户授予权限。

如您所见,这里 READ_PHONE_STATE有一个危险的级别。

如果权限具有危险级别,则用户必须手动接受或不接受此权限。你别无选择,你必须这样做

要从您的活动中执行此操作,请执行以下代码:

如果用户使用 Android M 并且没有授予权限,它会要求它。

public static final int READ_PHONE_STATE_PERMISSION = 100;

  if (Build.VERSION.SDK_INT > Build.VERSION_CODES.M && checkSelfPermission(Manifest.permission.READ_PHONE_STATE)
                != PackageManager.PERMISSION_GRANTED) {
            requestPermissions(new String[]{Manifest.permission.READ_PHONE_STATE}, READ_PHONE_STATE_PERMISSION);
        }

然后覆盖onRequestPermissionsResult您的活动

@Override
    public void onRequestPermissionsResult(int requestCode, @NonNull String[] permissions, @NonNull int[] grantResults) {
        switch (requestCode){
            case READ_PHONE_STATE_PERMISSION: {
                if (grantResults[0] == PackageManager.PERMISSION_GRANTED){
                    //Permission granted do what you want from this point
                }else {
                    //Permission denied, manage this usecase
                }
            }
        }
    }

您应该阅读这篇文章以了解更多信息

于 2016-12-20T04:53:45.467 回答
2
  1. 可能您使用的是 9.6.0 版的 PlayServices。然后你应该更新它,这是图书馆的错误。更多信息在这里

或者

  1. 添加

    <uses-permission android:name="android.permission.READ_PHONE_STATE" tools:node="remove" />

到您的清单文件。

于 2017-03-14T17:00:27.480 回答
2

您是在应用中使用 AdSense 或其他广告,还是使用 Google Analytics?我认为如果您这样做,即使您的清单中没有 android.permission.READ_PHONE_STATE,这也是由广告库添加的。

有一些免费模板可以帮助您创建隐私政策。

这是我从谷歌收到的关于它的电子邮件:

您好 Google Play 开发者,我们的记录显示,您的应用程序 xxx,软件包名称为 xxx,目前违反了我们关于个人和敏感信息的用户数据政策。政策问题:当应用请求或处理敏感的用户或设备信息时,Google Play 要求开发者提供有效的隐私政策。您的应用请求敏感权限(例如摄像头、麦克风、帐户、联系人或电话)或用户数据,但不包含有效的隐私政策。需要采取的措施:在您应用的商品详情页面和您的应用中包含指向有效隐私政策的链接。您可以在我们的帮助中心找到更多信息。或者,您可以通过删除对敏感权限或用户数据的任何请求来选择退出此要求。如果您的目录中有其他应用程序,请确保它们符合我们的突出披露要求。请在 2017 年 3 月 15 日之前解决此问题,否则将采取行政措施来限制您的应用的可见性,包括从 Play 商店中删除。感谢您帮助我们为 Google Play 用户提供清晰透明的体验。此致 Google Play 团队

于 2017-02-03T10:19:15.910 回答
1

1.您需要在您的网站上创建隐私政策页面,并根据您要求的权限更新您的隐私政策。

2.更新新SDK删除不需要的权限并重新提交应用程序。

于 2017-03-14T13:16:08.377 回答
1

我发现这个免费网站将为您制定政策并托管它:

https://www.freeprivacypolicy.com/

然后将其添加到商店列表下的 Play 商店 - 在底部添加您从https://www.freeprivacypolicy.com/获得的政策的公共链接

于 2018-07-05T20:09:44.447 回答
0

我在将 apk 上传到 Google Play 时遇到了同样的问题并遇到了错误。我在我的应用程序中使用了广告,我的清单文件中甚至没有提到 READ_PHONE_STATE 权限。但我得到了这个错误。然后我在 build.gradle 文件中更改广告的依赖项。然后它解决了我的问题。他们在 12.0.1 中解决了这个问题。

compile 'com.google.android.gms:play-services-ads:12.0.1'
于 2018-04-11T11:10:19.073 回答
0

一步一步看steb你就会明白

public static String getVideoTitle(String youtubeVideoUrl) {
        Log.e(youtubeVideoUrl.toString() + " In GetVideoTitle Menu".toString() ,"hiii" );
        try {

            if (youtubeVideoUrl != null) {
                URL embededURL = new URL("https://www.youtube.com/oembed?url=" +
                        youtubeVideoUrl + "&format=json"
                );
                Log.e(youtubeVideoUrl.toString() + " In EmbedJson Try Function ".toString() ,"hiii" );
                Log.e(embededURL.toString() + " In EmbedJson Retrn value ".toString() ,"hiii" );
                Log.e(new JSONObject(IOUtils.toString(embededURL)).getString("provider_name").toString() + " In EmbedJson Retrn value ".toString() ,"hiii" );

                return new JSONObject(IOUtils.toString(embededURL)).getString("provider_name").toString();
            }
        } catch (Exception e) {
            Log.e(" In catch Function ".toString() ,"hiii" );

            e.printStackTrace();
        }
        return null;
    }
于 2018-08-19T06:50:01.840 回答
0

我通过这种方式解决了这个问题:谷歌播放控制台找到App内容->隐私政策 然后 隐私政策URL设置为 你可以提交你的页面。

于 2021-03-27T08:10:51.217 回答
0

2018年更新:

对于 AdMob 用户,这会导致 AdMob 版本为 12.0.0(当前为最新版本)。它错误地请求 READ_PHONE_STATE 权限,因此即使您的应用在清单中不需要 READ_PHONE_STATE 权限,您也无法在 Google Play 控制台中更新您的应用(它会告诉您为您的应用创建隐私政策页面,因为您的应用需要此权限)。

看到这个:https ://developers.google.com/android/guides/releases#march_20_2018_-_version_1200

此外,他们写道,他们将很快发布 12.0.1 的更新来修复此问题。

于 2018-03-27T18:19:05.873 回答
0

如果您仔细阅读该消息,您会发现您正在使用相机、麦克风、联系人、存储和电话等权限,并且您没有提供隐私政策。如果您这样做,您需要提供隐私政策。您可以在 google 上找到有关 android 隐私政策的更多信息

要添加隐私政策 In-Play 控制台,

  1. 查找并选择所有应用程序

  2. 选择您需要添加隐私政策的应用程序。

  3. 在页面末尾找到政策。

  4. 单击应用程序内容以编辑您的应用程序的列表。

  5. 找到标有隐私政策的字段放置您的隐私政策页面的 URL

  6. 单击保存,一切顺利。

注意:您需要有一个公共网页来托管您的隐私政策。Google Play 商店不会为您托管该政策。

于 2020-10-29T12:04:43.673 回答
0

如果您使用包device_id来获取唯一的设备 ID,那么这将在android.permission.READ_PHONE_STATE您不知情的情况下添加一个,最终将导致 Play Store 警告。

相反,您可以将device_info包用于相同目的,而无需额外的权限。检查这个SO 线程

于 2020-08-27T15:10:06.237 回答
-1

在 Google 测试“内部测试版本”上传应用程序 apk 文件后,我无法在 Google 上发布我的应用程序作为错误显示。附加屏幕截图请解决建议如何解决此错误。在 Mobiroller 应用生成器上生成的应用。即使在我看到 [错误消息之后:“您的 APK 或 Android App Bundle 正在使用需要隐私政策的权限:(android.permission.CAMERA)。” 1在我的应用程序的 Mobiroller 中添加了隐私政策。

看到错误消息:“您的 APK 或 Android App Bundle 正在使用需要隐私政策的权限:(android.permission.CAMERA)。”

于 2021-07-18T14:30:55.263 回答