Instalar a Referrer Library v1.1 adiciona permissões

9

A atualização da biblioteca de referência de instalação da v1.0 para a v1.1 adicionou as seguintes permissões:

WRITE_EXTERNAL_STORAGE

READ_EXTERNAL_STORAGE

READ_PHONE_STATE

Essas permissões não estão presentes no manifest.xml da biblioteca de referências de instalação:

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

    <uses-permission android:name="com.google.android.finsky.permission.BIND_GET_INSTALL_REFERRER_SERVICE" />

    <application />

</manifest>

Fonte: https://mvnrepository.com/artifact/com.android.installreferrer/installreferrer/1.1

Por que essas permissões foram adicionadas ao manifesto mesclado?

sagis
fonte

Respostas:

5

Isso ocorre porque eles adicionaram uma dependência ao

com.google.android.gms:play-services-measurement:17.2.1

O que adiciona essas permissões.

Você pode encontrá-lo no arquivo: manifest-merger-blame-debug-report.txt que está em "yourApp / build / intermediates / manifest_merge_blame_file / debug

Provavelmente é um bug. No momento, acabei de voltar para a versão 1.0. Mas se você precisar desta versão, poderá adicionar

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

Para desativá-lo.
Saiba que se você usar qualquer API que precise dela dentro da biblioteca, isso poderá causar uma falha, por isso não recomendo.

Shirane85
fonte
Obrigado. Eu também fiz o downgrade para 1.0.
sagis 12/12/19
3

As versões 1.1 e 1.1.1 estão ausentes "minSdkVersion". Isso adicionaria automaticamente essas permissões. Veja problema semelhante aqui: Google Play Services 12.0.1 .

Solução

A versão 1.1.2 resolve esse problema.

Detalhes

Manifest.xml para v1.0 (de https://mvnrepository.com/artifact/com.android.installreferrer/installreferrer/1.0 )

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

    <uses-sdk
        android:minSdkVersion="8"
        android:targetSdkVersion="22" />

    <uses-permission android:name="com.google.android.finsky.permission.BIND_GET_INSTALL_REFERRER_SERVICE" />

    <application />

</manifest>

Manifest.xml para v1.1 (de https://mvnrepository.com/artifact/com.android.installreferrer/installreferrer/1.1 )

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

    <uses-permission android:name="com.google.android.finsky.permission.BIND_GET_INSTALL_REFERRER_SERVICE" />

    <application />

</manifest>
sagis
fonte