1 votos

Oreo: ¿asociar una app a todos los archivos con una extensión determinada?

NOTA: En efecto, mi pregunta es similar a la anterior. Sin embargo, hay una ligera diferencia, que explico a continuación en mi sección ADDENDUM.

Pregunta original ...

Estoy creando muchos archivos de texto en mi dispositivo Android basado en Oreo con varias extensiones de archivo además de simplemente .txt . Por ejemplo, tengo archivos con .xyz extensiones, .abc y otros, y quiero que todos los archivos con estos sufijos particulares sean vistos como archivos de texto por mi aplicación de edición de texto elegida. De esta manera, cada vez que seleccione un archivo de este tipo, el sistema elegirá ese editor de texto para abrirlos.

No he encontrado ninguna manera de hacer esto, sobre todo teniendo en cuenta que no hay asociación de archivos por defecto para archivos de texto que se ofrece en Android. Pero incluso si tal asociación texto-archivo por defecto existiera, no sé cómo hacer que ad hoc sufijos de nombre de archivo que se asociarán a los archivos de texto.

Además, los intents parecen operar sobre tipos mime, y no sé cómo asociar estos sufijos extra con text/plain en Android.

Hay alguna manera en Android (Oreo) para que pueda lograr lo que quiero?

Gracias de antemano.

ADENDA: El post al que se hace referencia más arriba habla de cómo los tipos mime se gestionan de forma específica para cada aplicación en Android, y de que no existe una forma oficial de gestionar los tipos mime a nivel de todo el sistema.

Lo entiendo, pero pregunto algo ligeramente distinto. Supongamos que una aplicación ya está configurada en su manifiesto para responder a text-plain artículos. Mi pregunta es la siguiente: ¿dónde está en Android el .txt sufijo definido como correspondiente a text-plain y ¿hay alguna forma de añadir más sufijos (como .abc y .xyz como he descrito anteriormente) en todo el sistema para que también se asigne a text-plain ?

Tengo un dispositivo rooteado que hace uso de Xposed y Magisk por lo que aunque no haya oficial manera en Android para implementar este tipo de asignaciones, me pregunto si podría haber alguna no oficial Xposed o Magisk que lo permitan. No pude encontrar ninguno Xposed o Magisk módulos, pero quizá esté pasando algo por alto.

Además, ya que mi dispositivo está rooteado (y también soy capaz de cambiar mi configuración de selinux a permissive ), podría editar manualmente los archivos de configuración del sistema en cualquier parte del dispositivo para añadir más sufijos de nombre de archivo a los archivos text-plain suponiendo que esta asignación se gestione en algún tipo de archivo de configuración del sistema.

También dirijo Tasker y si ese archivo de configuración mime existe, podría asegurarme de que Tasker siempre copia una versión especial de ese archivo en su lugar durante el arranque. Además, ejecuto otras utitilidades que permiten ad hoc que se ejecutarán al inicio mediante init.d .

¿Alguna idea? ...

0 votos

Utiliza un gestor de archivos diferente (por ejemplo, Solid Explorer), te permite elegir entre diferentes aplicaciones para abrir ese tipo de extensión de archivo.

0 votos

Gracias, pero quiero asociar plain/text con estos elementos aunque se abran fuera de un gestor de archivos ... es decir a través de una aplicación arbitraria. ¿No es posible?

0voto

Avanst Puntos 513

La siguiente parece una respuesta prometedora...

El expediente /system/lib/content-types.properties contiene la siguiente información. Parece que puedo añadir abc=text/plain y xyz=text/plain a este archivo con el fin de obtener mi comportamiento deseado. Voy a probar esto e informar.

# If you want to support more recognized mimetypes in libcore.net.MimeUtils, add them here

docm=application/vnd.ms-word.document.macroenabled.12
xlsb=application/vnd.ms-excel.sheet.binary.macroenabled.12
xlsm=application/vnd.ms-excel.sheet.macroenabled.12
ppsm=application/vnd.ms-powerpoint.slideshow.macroenabled.12
ppsx=application/vnd.openxmlformats-officedocument.presentationml.slideshow
pptm=application/vnd.ms-powerpoint.presentation.macroenabled.12

asm=text/x-asm
cc=text/x-c
conf=text/plain
cpp=text/x-c
css=text/css
c=text/x-c
cxx=text/x-c
def=text/plain
dic=text/x-c
f77=text/x-fortran
f90=text/x-fortran
for=text/x-fortran
f=text/x-fortran
hh=text/x-c
hpp=text/x-c
h=text/x-c
ics=text/calendar
ifb=text/calendar
in=text/plain
jad=text/vnd.sun.j2me.app-descriptor
java=text/x-java-source
ksh=text/plain
list=text/plain
log=text/plain
pas=text/x-pascal
pl=text/plain
properties=|
prop=text/plain
p=text/x-pascal
py=text/x-python
rc=text/plain
sgml=text/sgml
sgm=text/sgml
s=text/x-asm
vcs=text/x-vcalendar

0 votos

Lamentablemente, cuando pongo entradas como abc=text/plain en este archivo, su existencia parece ser ignorada, incluso después de reiniciar el dispositivo. Así que ... volver a la mesa de dibujo ...

PreguntAndroid.com

PreguntAndroid es una comunidad de usuarios de Android en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros usuarios, hacer tus propias preguntas o resolver las de los demás.

Powered by:

X