¿Solución alternativa para que Android 4.4 no pueda escribir en tarjetas SD?

Ayer actualicé mi Samsung Galaxy S4 a Android 4.4 KitKat y tuve la mala sorpresa de que ya no puede escribir en mi tarjeta SD... Sé que este problema está ampliamente documentado en todas partes, pero ¿ya se ha encontrado alguna solución? (Aparte de quitar la tarjeta físicamente del teléfono y abrirla en mi PC) Además, debido a la bandera KNOX no puedo cambiar a 4.3...

(PD: rooteado o no, no hace ninguna diferencia)

¿Es el lanzamiento oficial o una ROM personalizada?
@RossC, es un cambio de regla en Kitkat independientemente de la ROM. OP: La única solución posible es esta, si necesita acceso de escritura, debe proporcionar el permiso o usar el marco de acceso de almacenamiento que viene con KitKat para hacerlo.
RossC: El mío es el I9505XXUFNB8 oficial (Alemania), pero @t0mm13b es correcto, sucede independientemente de la ROM, es una "característica" de KitKat. Además, estoy buscando una solución alternativa para las aplicaciones existentes, no una que escribiría yo mismo...
@ t0mm13b ah, eso no es lo ideal. Sabía que el cambio estaba bien, pero tenía la impresión (obviamente equivocada) de que Samsung parchearía esto para que funcionara en su propio dispositivo con ROM oficial, ya que todavía 'admiten' tarjetas EXT-SD. En un dispositivo rooteado, ALGUNOS han tenido éxito con el montaje de carpetas, pero otros han bloqueado su dispositivo. Pruebe XDA y vea qué hay allí, se está trabajando pero no veo una respuesta definitiva.
@t0mm13b: ¿Hay alguna forma, como usuario (rooteado), de otorgar permisos adicionales a las aplicaciones que no los solicitan? Estoy pensando en FolderMount, reproductores de música, editores de fotos, etc.
Casi bloqueé mi dispositivo también con FolderMount... Me pidió que parcheara el sistema de archivos, dejé que lo hiciera, luego ya nada funcionó en el teléfono (ambas tarjetas SD desaparecieron...) - Reinstalé el KitKat oficial y reinicié , todo está bien de nuevo
Mi ROM KitKat en el S4 puede escribir y leer la tarjeta SD. No puedo mover aplicaciones (que ya no están), pero las imágenes y los medios están bien. Es una ROM personalizada de Google Edition (afortunadamente no tengo touchwiz). Ah, está parcheado y, lamentablemente, Samsung seguirá las pautas de Google sobre tarjetas SD: phonearena.com/news/…
¿Se ha quejado con los autores de las aplicaciones con las que tiene problemas? Depende de ellos establecer sus permisos correctamente.
En resumen, la verdadera solución es cambiar una línea en el manifiesto dentro de la fuente de kitkat y volver a compilar la rom y actualizarla. Google es claro en alejarse de las tarjetas SD, la capacidad de la memoria flash está aumentando y es barata de integrar en la placa del dispositivo y, además, utiliza los servicios en la nube para el almacenamiento. Es un gran inconveniente, tal vez alguien con Xposed framework podría eludirlo.... pita...
@DanHulme quejarse con el autor de la aplicación no es la solución. Es un cambio drástico por parte de Google...
@ t0mm13b Se anunció con años de anticipación y los autores de la aplicación podían agregar el permiso antes de que fuera necesario. No es como el MediaScannercambio, que se presentó como un hecho consumado . De todos modos, este no es el lugar apropiado para discutir la política de compatibilidad de Google.
¿Fuente para el "anuncio con años de anticipación" de los cambios en Kitkat en relación con la SDCard?
No estoy de acuerdo con usted @DanHulme, esos documentos, api 16 estaba allí hace aproximadamente un año, "no se anunció con años de anticipación" y, además, los documentos se actualizaron recientemente para reflejar API 19.
Sigue siendo un movimiento tonto. ¿Por qué deberíamos vernos obligados a almacenar todas nuestras descargas en la memoria interna? El objetivo (más o menos) de tener una ranura SD es que podamos volcar un montón de medios en una tarjeta e intercambiar una colección por otra. Supongo que Google quiere que todos usemos "memoria en la nube", que no tiene valor cuando está fuera de la red.
Sin embargo, veo su razonamiento, y no es necesariamente por una razón "mala" (como en: quieren que pasemos a la nube). Actualmente, todas las aplicaciones que tienen acceso a los medios tienen acceso a toda la tarjeta SD, por lo que, potencialmente, a los datos de otras aplicaciones. Eso es un problema de seguridad. Solo necesito asegurarme de no guardar nada confidencial en la tarjeta SD.

Respuestas (3)

¡Encontré una respuesta a mi propia pregunta! También podría compartir cómo lo hice (HAZLO BAJO TU PROPIO RIESGO, funcionó bien para mí). Necesita raíz obviamente.

  1. Usando un administrador de archivos habilitado para root, navegue hasta/system/etc/permissions
  2. Edite platform.xml y busque el permiso WRITE_EXTERNAL_STORAGE.
  3. Agregue una definición de grupo adicional para este permiso...<group gid="media_rw" />
  4. Guarde los cambios en el archivo.
  5. Reanudar.

Los créditos van a mateenf del foro de desarrolladores de XDA

Utilicé esta solución para editar etiquetas de mi tarjeta SD externa en mi LG G3 (LG-D851) rooteado. El reproductor de audio es PowerAmp.

  1. Descargue e instale el instalador Xposed desde Google Playstore: Instrucciones: https://www.youtube.com/watch?v=nj_fgrpgDRU (GadgetHacks)
  2. En Xposed Installer, haga clic en "Descargar". (Es posible que deba presionar el símbolo de actualización para cargar módulos).
  3. Haga clic en y descargue "KitKat SD Card Full Access" del repositorio. Asegúrese de tener marcada la casilla Descargar desde fuentes desconocidas (configuración > seguridad > fuentes desconocidas).
  4. Una vez que el módulo se haya descargado e instalado, reinicie su teléfono y etiquete hasta el contenido de su corazón.
No es necesario un módulo Xposed, ahora hay muchas aplicaciones en Play Store para hacer eso (todas requieren root, obviamente). Busque "SD Fix" en Play Store, los encontrará.
Ahora me dices... jajaja. ¡Buen aspecto!
Estas aplicaciones no existían en el momento en que hice la pregunta :)

¡Encontré una solución mucho mejor! Con uTorrent no pude escribir a

"/storage/extSdCard/"

Pero puedo escribir a:

"/storage/extSdCard/Android/Data/com.utorrent.client"

Así que busque una carpeta en la tarjeta SD a la que su aplicación tenga acceso proporcionada por Android.