Android: Guardar el objeto android.net.Uri en la base de datos
Lo que estoy tratando de hacer es obtener el tono de llamada seleccionado del usuario, establecer una alarma AlarmManager para reproducir ese tono cuando la alarma se apaga. Pero tengo que guardar el tono de llamada en la base de datos para que pueda restablecer todas las alarmas después de reiniciar el teléfono.
Mi pregunta es cuál es la mejor manera de guardar el ringtone Uri a la base de datos para recuperar más tarde?
- ¿El método notifyChange de ContentResolver notifica también el detalle de Uri?
- Una respuesta final sobre cómo obtener datos Exif de URI
- Pantalla de chat de Skype desde la intención
- Cómo obtener HTML5 video URI en HTML5VFullScreen $ SurfaceVideoView en Android 4.0?
- ¿Cómo getCropAndSetWallpaperIntent (Uri imageUri) para trabajar?
He intentado lo siguiente:
1) guardar el título de tono de timbre en el DB y luego recuperarlo y anexarlo a una ruta de tono predeterminada. Pero el problema, es que el tono de llamada podría cargarse desde una ubicación diferente 2) Almacenar el esquema de uri, esquema spefici parte y fragmento y luego llamar a Uri.fromParts para crear el Uri. 3) crear un array inputStream, byte [] desde el Uri y guardarlo como un blob y luego leerlo de nuevo y arrojar el resultado a Uri
Ninguno de estos trabajos.
Su ayuda es muy apreciada.
- Identificador de fragmento (#) en Uri no funciona correctamente
- El atributo pathPrefix de Deeplink de Android se está omitiendo
- Android onNewIntent Uri es siempre nulo
- Problemas de URIMatcher de Android
- ¿Cómo puedo verificar que la imagen URI es válida en Android?
- Obtener nombre de archivo y ruta de URI de mediastore
- Pausa de envío al marcador
- ¿Qué hay de malo en esta URL URI? IllegalArgumentException, Caracteres no válidos
Guarde el URI como cadena en la base de datos y luego carguelo más tarde.
// This will get the uri in a string format String s = mUri.toString();
Cuando recupera la cadena de la base de datos, reconstruya el URI de esta manera:
// This will decode the string into a URI Uri mUri = Uri.parse(s);
Espero que ayude. ¡Buena suerte!
- Cómo colocar textview con x, y posición
- ¿Qué es diferente entre @ + id / android: list y @ id / android: list?