Manejo del almacenamiento de disco completo en Android

Esta pregunta ha evolucionado un poco desde el inicial, aquí hay una breve información:

Rellené el almacenamiento en disco del emulador y lo hice absolutamente inútil: el proceso android.process.acore muestra el diálogo "… ha detenido inesperadamente" en un bucle, por lo que no se puede hacer nada en el sistema. Ni siquiera puedo apagarlo con el botón de encendido a la derecha (se ha intentado apagar durante 10 minutos ahora, logcat está lleno de excepciones). Genial es un emulador, me pregunto qué pasaría si fuera mi dispositivo real ..

Tal vez alguien puede elaborar sobre las razones de este comportamiento – ¿debería ser así?

Aquí está la pregunta inicial, por favor refiérase también a mis ediciones:

Tengo curiosidad por manejar una situación aleatoria tal como quedarse sin almacenamiento en disco en un dispositivo Android.

Miré los ejemplos en developer.android.com y veo que ni siquiera se molestan en hacer el manejo de excepciones.

Puedo ver que cuando se trata de clases SQLite, hay un par de excepciones, como SQLiteOutOfMemoryException , pero no puedo encontrar ninguna información cuando y cómo manejar estos escenarios.

¿Alguien tiene experiencia con:

  • A prueba de balas de una aplicación para una situación tan nerviosa
  • Maneras de probar esto en un emulador
  • Comentarios de los usuarios frustrados (tal vez escuchado de cualquier frustración con el ejemplo de aplicaciones o aplicaciones de núcleo, incluso ..?)

Gracias de antemano por su tiempo chicos.

[ Editar ]

También me encuentro con esta mordedura en Android Tracker tema:

Http://code.google.com/p/android/issues/detail?id=1653

Es algo misterioso … y parece que es un fantasma desde 2008.

[ Editar2 ]

Alrite, con el consejo de los comentarios: Acabo de hacer una prueba usando:

dd if=/dev/urandom of=file 

Con los parámetros bs y el recuento elegido para adaptarse al espacio restante,

Y llenó la / partición de datos.

Cómo me sorprende que Google Maps acaba de estrellarse en el SQLiteFullException. En realidad todas las aplicaciones de bloqueo – incluso teléfono.

¿Es cierto que nadie maneja esas excepciones? ¿Está bien que esas aplicaciones sólo se matan con el ".. ha parado inesperadamente"?

Este es el error, "el almacenamiento del teléfono está lleno! Eliminar algunos archivos de espacio libre." Tengo al menos 7 gigas de espacio libre. La memoria interna del teléfono está llena. No es tu tarjeta de memoria. Son completamente independientes.

Prueba a desinstalar algunas aplicaciones que ya no necesitas. También intenta borrar la caché en algunas de tus aplicaciones.

La forma en que manejar esto es con el manejo de errores en todas las operaciones de archivos para que la aplicación no sólo se bloquea, y hago un archivo stat ( https://stackoverflow.com/a/5083482/1317564 ) en el directorio que está siendo utilizado por El usuario para asegurarse de que hay suficiente espacio libre. Si no, les muestro un gran mensaje de error grande. 😉 Por lo general, el teléfono en sí va a hacer un montón de quejarse también, por lo que debe notar el problema tarde o temprano.

  • ¿Está bien usar la clase estática de "ayudante de base de datos"?
  • Android - Base de datos SQLite en tarjeta SD
  • ¿Cómo crear una vista sql (CREATE VIEW) en sqlite (android) y consulta?
  • El comodín no funciona en SQLite
  • Compruebe si un registro existe o no, si existe, actualícelo y cree otro en PhoneGap?
  • Ormlite leer Fecha como 'yyyy-MM-dd'
  • Android SQLite COMO comodín de escape
  • Android: copia la base de datos de la carpeta de activos, pero sólo obtiene un archivo vacío
  • Multiple OrderBy en el método SQLiteDatabase.Query
  • Prueba de base de datos SQLite en Robolectric
  • Persistencia de entidades bidireccionales con Green-DAO
  • FlipAndroid es un fan de Google para Android, Todo sobre Android Phones, Android Wear, Android Dev y Aplicaciones para Android Aplicaciones.