1 votes

Une alternative à "l'ouverture de fichier" (pas la pile "DocumentsUi") pour WhatsApp ?

DocumentsUI, le "gestionnaire de fichiers" standard de l'AOSP, est assez bogué ici (j'utilise Lineage 15.1), notamment dans le contexte de multi-utilisateurs y profil professionnel (ce qui signifie qu'il ne montre pas les fichiers pour d'autres utilisateurs que l'utilisateur principal et n'est donc pas utilisable).

Pour une navigation "simple" dans les fichiers, j'ai donc substitué l'application DocumentsUI ( com.android.documentsui ) avec com.simplemobiletools.filemanager.pro qui fonctionne beaucoup mieux.

Mon problème, et le cœur de ma question, est que le glorieux gestionnaire WhatsApp "facebook", lorsqu'il tente d'attacher des fichiers, ouvre l'intention spécifique de l'utilisateur. com.android.documentsui et ne parvient même pas à ouvrir com.simplemobiletools.filemanager.pro même dans le cas où c'est le seul gestionnaire de fichiers encore installé. Par conséquent, je ne peux pas joindre de fichiers à d'autres utilisateurs dans Whatsapp, en raison du bogue de l'interface DocumentsUI et du fait que WhatsApp ne peut pas être utilisé par les utilisateurs. désireux/capable/assez bien conçu pour faire une intention générale "FileOpen", au lieu de se référer directement à com.android.documentsui

Je comprends que WhatsApp est particulièrement destiné aux personnes peu informées, qui ne se soucient pas beaucoup de la vie privée, il est donc clair que la WhatApp n'est pas conçue pour permettre/accommoder les utilisateurs éduqués et plus compétents qui pourraient souhaiter ne pas utiliser la norme. com.android.documentsui .

Une réponse à cette question consisterait à fournir un aperçu qui com.android.documentsui serait capable de bien s'intégrer à WhatsApp Messenger

0voto

Irfan Latif Points 16863

Peut-être que ce n'est pas exactement la réponse à votre question car je n'ai pas votre version d'Android et de WhatsApp à tester. Mais sur ma ROM Pie avec WhatsApp v2.19.53, je peux récupérer des pièces jointes avec n'importe quel gestionnaire de fichiers qui enregistre l'une de ses activités comme activité préférée pour certains utilisateurs. intention implicite action ; android.intent.action.OPEN_DOCUMENT dans notre cas. J'utilise MiXplorer, donc :

# /data/system/users/0/package-restrictions.xml

[...]
<preferred-activities>
    [...]
    <item name="com.mixplorer/.activities.BrowseActivity" match="600000" always="false" set="0">
        <filter>
            <action name="android.intent.action.OPEN_DOCUMENT" />
            <cat name="android.intent.category.OPENABLE" />
            <cat name="android.intent.category.DEFAULT" />
            <type name="*/*" />
        </filter>
    </item>
    [...]
    <item name="com.android.documentsui/.picker.PickActivity" match="600000" always="false" set="0">
        <filter>
            <action name="android.intent.action.OPEN_DOCUMENT" />
            <cat name="android.intent.category.OPENABLE" />
            <cat name="android.intent.category.DEFAULT" />
            <type name="*/*" />
        </filter>
    </item>
    [...]
</preferred-activities>
[...]

Lorsque je tape sur l'icône de la pièce jointe dans WhatsApp, cela ouvre la propre application de WhatsApp. DocumentPickerActivity d'où je peux prendre des fichiers :

ActivityManager: {cmp=com.whatsapp/.DocumentPickerActivity (has extras)}

Ou je peux choisir un autre gestionnaire de fichiers en appuyant sur Parcourir d'autres documents sur le dessus. De cette façon, le système Android résolveur interne passe par les configurations et ouvre les options disponibles pour moi :

ActivityManager: {act=android.intent.action.OPEN_DOCUMENT cat=[android.intent.category.OPENABLE] typ=*/* cmp=android/com.android.internal.app.ResolverActivity (has extras)}

Pour choisir une pièce jointe, je peux choisir l'application MiXplorer :

ActivityManager: {act=android.intent.action.OPEN_DOCUMENT cat=[android.intent.category.OPENABLE] typ=*/* cmp=com.mixplorer/.activities.BrowseActivity (has extras)}

Ou l'application Fichiers / DocumentsUI :

ActivityManager: {act=android.intent.action.OPEN_DOCUMENT cat=[android.intent.category.OPENABLE] typ=*/* cmp=com.android.documentsui/.picker.PickActivity (has extras)}

La première chose à vérifier est que l'application Fichiers / DocumentsUI n'est pas définie comme application par défaut ( always="true" ):

# /data/system/users/0/package-restrictions.xml

[...]
<preferred-activities>
    [...]
    <item name="com.android.documentsui/.picker.PickActivity" match="600000" always="true" set="2">
    [...]
</preferred-activities>
[...]

Si c'est le cas, vous devez réinitialiser ses valeurs par défaut ( Infos sur l'application > Ouvrir par défaut > Effacer les paramètres par défaut ).

Vous pouvez également essayer avec une autre application d'explorateur de fichiers et une autre version de WhatsApp pour vérifier si cela fonctionne. Je ne suis pas sûr qu'il y ait des changements dans l'implémentation de l'application com.Android.internal.app.ResolverActivity à travers les mises à jour AOSP, donc pensez à mettre à jour la version d'Android si possible.

RELATION : Pourquoi WhatsApp est soudainement incapable d'ouvrir les APK partagés par les utilisateurs ?

androidalle.com

AndroidAlle est une communauté de androiders où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres sysadmins, poser vos propres questions ou résoudre celles des autres.

Powered by:

X