Permiso de Android para limitar INSTALL_REFERRER para reproducir la tienda
Estoy configurando el seguimiento de campañas utilizando analíticas personalizadas (no google analytics) y configurando un receptor para eso. Mi receptor parece estar funcionando, pero cuando lo instalo me sale una advertencia de pelusa de android:
ExportedReceiver: Receiver does not require permission
Parece que cualquier aplicación android antigua podría llamar a mi aplicación con la intención com.android.vending.INSTALL_REFERRER
que no quiero. Solo debería ser Google Play Store (o cualquier otra aplicación del sistema android que instalara mi aplicación en la tienda de reproducción) enviando esa intención a mi aplicación.
- ¿Qué filtros de intención debe cubrir mi aplicación para aparecer en el selector cuando solicita una imagen de una aplicación externa?
- Android: setResult no funciona
- Pausar la reproducción de medios de forma fiable en todo el sistema en Android
- Permitir que el usuario seleccione cámara o galería para la imagen
- Cómo llamar a la calculadora de Android en mi aplicación para todos los teléfonos
Así que he intentado averiguar cómo configurar un permiso que limita las aplicaciones válidas a la tienda de reproducción, pero no puedo averiguar la forma correcta de configurar el permiso de acuerdo con la documentación:
Https://developer.android.com/guide/topics/manifest/permission-element.html
¿Podría alguien ayudarme a configurar un permiso que limita las aplicaciones mi aplicación va a aceptar esta intención de la tienda de juego? Aquí está mi configuración actual del receptor:
<receiver android:name=".referrals.MyCampaignTrackingReceiver" android:enabled="true" android:exported="true"> <intent-filter> <action android:name="com.android.vending.INSTALL_REFERRER"/> </intent-filter> </receiver>
Traté de establecer un permiso para el receptor en el nivel normal
, pero que impidió que la aplicación de recibir la intención de la tienda.
- ¿Debe comprobar la aplicación si el dispositivo tiene funcionalidad de llamada cuando se utiliza la intención de ACTION_DIAL?
- Androide. Abrir un contacto a través de intención utilizando contact_id o contact_name
- Android TV no está iniciando LAUNCH_LEANBACK Actividad
- No puedo abrir la aplicación Market de mi aplicación
- FLAG_ACTIVITY_NEW_TASK aclaración necesaria
- Longitud máxima del método PutExtra de Intención? (Cierre de la fuerza)
- ¿Cómo puedo enviar datos utilizando el acabado?
- Android, ¿Cómo leer el código QR en mi aplicación?
INSTALL_REFERRER permiso de difusión no es una gran preocupación. Suponiendo que usted sabe que necesita manejar esta transmisión sólo una vez, justo después de la instalación, y toma medidas para manejarla sólo una vez, un atacante tendrá que saber cuando su aplicación se ha instalado y de alguna manera enviar esta difusión antes de la aplicación playstore, que parece improbable.
android:permission
establecer el atributo android:permission
en su receptor. Para que se vea algo como esto:
<receiver android:name=".referrals.MyCampaignTrackingReceiver" android:enabled="true" android:exported="true" android:permission="android.permission.CLEAR_APP_CACHE"> <intent-filter> <action android:name="com.android.vending.INSTALL_REFERRER"/> </intent-filter> </receiver>
El uso de "android.permission.CLEAR_APP_CACHE"
aquí es arbitrario; puedes usar cualquier permiso que PLAY Store tenga y no sea posible para que aplicaciones de terceros tengan (porque el nivel de protección de CLEAR_APP_CACHE
es las aplicaciones del sistema o de la system|signature
sistema firmadas con El mismo certificado que la solicitud que declaró este permiso, en este caso la plataforma). Por ejemplo, al mirar a través del manifiesto de Play Store, "com.android.vending.permission.C2D_MESSAGE"
podría ser otro buen candidato.
Espero que esto ayude.
- ¿Cuál es el impacto de tener varias herramientas de generación de informes de fallos en la aplicación para Android
- Los objetos inyectados se convirtieron en nulos después de actualizar a Roboguice 3