¿Hay alguna forma de desactivar Direct Share en Android 6?

11

Esto se ve así Ejemplo de recurso directo, tomado de http://stackoverflow.com/questions/30518321/on-android-m-how-to-configure-the-direct-share-capabilities-image-text-an

El problema es que rara vez envío algo a los contactos. El caso en el que estoy buscando alguna aplicación es mucho más frecuente, generalmente procesando la imagen, por ejemplo, compartir desde la cámara de Google a la cámara VSCO, o de la cámara VSCO a Instagram, Facebook, etc. Por lo tanto, la lista de aplicaciones debe mostrarse primero. Pero veo esta lista de contactos, es muy poco probable que la use. Incluso dudo que el contacto en la rara ocasión de compartir directamente esté en la lista.

Esta funcionalidad también ralentiza el diálogo, lleva bastante tiempo que se muestre.

Entonces, la pregunta es si hay alguna forma de desactivar esta funcionalidad. Simplemente no necesito esto.

Denis Cheremisov
fuente
Compruebe esta pregunta android.stackexchange.com/questions/128053/… , parece que la posibilidad de eliminar / editar el uso compartido directo aún no está disponible.
1
Las respuestas a la pregunta vinculada son ciertamente relevantes para esta pregunta, pero como esa pregunta se trata de eliminar contactos individuales de la lista, no creo que sea un duplicado.
Dan Hulme
¿Nada? ¿Ni siquiera un cmd de shell?
REJH
Hay una forma aún más fácil (si conoce xml) y no requiere xposed; use el Firewall de intención integrado de Android (ifw) y bloquee la intención de Compartir directamente. Requiere raíz. Lo publiqué en algún lugar de SO, lo buscaré y lo agregaré aquí también.
REJH
Acabo de agregar la respuesta (bueno, una descripción breve + un enlace a la respuesta relevante :))
REJH

Respuestas:

4

Si está rooteado pero no desea usar Xposed, puede usar el Intent Firewall nativo de Android para bloquear el uso compartido directo. Esto funciona en Android 6.0 hasta 8.1:

Como se respondió anteriormente aquí: Eliminar contactos (también conocido como "Direct Share") del panel Compartir en Marshmallow

Resulta que, para las personas enraizadas, ¡hay una manera de desactivar completamente Direct Share!

En mi búsqueda de una manera de evitar que esta estúpida característica me molestara, eché un vistazo a cómo los desarrolladores implementan la característica en las aplicaciones. Resulta que registran un servicio con un receptor de intención (léase: escucha de eventos) y cuando me di cuenta de eso, comencé a buscar una manera de bloquear la transmisión de ciertas intenciones a través del sistema. Bueno, Android realmente tiene eso incorporado. Se llama Intent Firewall . Rápidamente descubrí cómo crear una regla para impedir que las aplicaciones reciban el "Oye, ¿hay alguna aplicación que quiera molestar al usuario al poner un par de botones de Direct Share debajo de su pulgar cuando están a punto de tocar algo?" -evento.

Simplemente cree un archivo xml simple y colóquelo en él:

<rules>
  <service block="true" log="true">
    <intent-filter>
      <action name="android.service.chooser.ChooserTargetService" />
    </intent-filter>
  </service>
</rules>

Ahora debe ponerlo en el teléfono y copiarlo en el directorio Intent Firewall. En la mayoría de los dispositivos que serían

/data/system/ifw/

Simplemente utilicé Root Explorer para copiar el archivo allí (no se requiere chmod), ¡traté de compartir algo que causó que aparecieran los objetivos de Direct Share y BOOM! ¡Nada!

Recomiendo leer en segundo plano (ver enlaces arriba), especialmente sobre cómo funciona el Intent Firewall y cómo puede encontrar la carpeta.

¡Feliz no compartir!

REJH
fuente
Algunos autopromoción descarada: he creado (en realidad, actualizado) una aplicación que reemplaza el cuadro de diálogo Compartir Android. Supongo que Andmade Share y AppChooser también son buenas alternativas, pero he tratado de que se vea como el diálogo de compartir nativo. Pruébelo aquí: sharedr.rejh.nl
REJH
1

Esta pregunta ha estado en la lista sin respuesta, sorprendentemente, mientras que hay una solución disponible para usuarios rooteados con Xposed (probado en Marshmallow)

OP busca dos requisitos

  1. Eliminar contactos de Whatsapp, Gmail, Inbox, etc. que aparecen al comienzo de la lista

  2. Empujar las aplicaciones utilizadas con frecuencia para compartir directamente en la parte superior de la lista

Ambos pueden hacerse mediante el Módulo XShare CustomShare . También disponible en Play Store

Discusión de desarrolladores en XDA aquí

El módulo en Modo tiene dos opciones: Abrir y Compartir . Usando la opción de compartir podemos seleccionar hasta 9 aplicaciones (más requiere una versión de donación) para que no aparezcan en la lista. Las fotos a continuación muestran la diferencia después de bloquear Gmail, Inbox y WhatsApp en mi dispositivo (al bloquear WhatsApp, recibes un mensaje de advertencia de que no se puede usar para SMS pero en mis pruebas limitadas no tuvo ningún impacto)

ingrese la descripción de la imagen aquí Después de bloquear

Llegando al segundo requisito de subir las aplicaciones de uso frecuente (que puede ser un gran dolor, teniendo en cuenta que prácticamente todas las aplicaciones se registran como compartidas directamente). En la configuración del módulo Ordenar , desmarque Permitir que Android ordene los elementos y mueva el orden de las aplicaciones como desee. En el siguiente caso, Clipboard Pro, Chromer y Cam Scanner han recibido una visibilidad elevada

ingrese la descripción de la imagen aquí

beeshyams
fuente