Join FlipAndroid.COM Telegram Group: https://t.me/joinchat/F_aqThGkhwcLzmI49vKAiw


Acceso a un proveedor de contenido personalizado desde una aplicación diferente

Hola, he creado una aplicación para Android que utiliza un proveedor de contenido personalizado llamado CustomCP, implementa todos los métodos y todo funciona bien al administrar datos dentro de la aplicación, pero cuando intento acceder a ella desde otra aplicación sigo recibiendo un error de "Error al Busque información sobre el proveedor de com.example.customcp.

He declarado a mi proveedor de contenido en el archivo de manifiesto de la primera aplicación como

  • Asistente de configuración de Android Studio - Crear dispositivo virtual de Android
  • GetLayoutInflater () en el fragmento
  • ¿Por qué no debería usar System.out.println () en android
  • Ionic correr Android parece funcionar, pero la aplicación no se inicia en el teléfono, ¿por qué?
  • ¿Cómo quitar sólo los espacios finales de una cadena en Java y mantener los espacios principales?
  • Datos de sincronización de Android entre usuarios
  • <provider android:name="com.example.CustomCP" android:authorities="com.example.customcp"/> 

    Trato de llamar al proveedor en la segunda actividad de inicio de la aplicación

     public class app2 extends Activity { @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.main); Uri kUri = Uri.parse("content://com.example.customcp/key"); Cursor c = managedQuery(kUri, null, null, null, null); } } 

    Así que la pregunta es simple, ¿es posible acceder a un proveedor de contenido personalizado desde múltiples aplicaciones?

  • Android: Problemas para crear apk con Ant Release
  • Cómo ocultar el teclado después de escribir EditText en android?
  • Avast informa que mi aplicación de Android es un troyano
  • Esperando que el dispositivo de destino se conecte en línea
  • ¿Cómo usar los eventos enviados por el servidor (SSE) en android?
  • Cómo mostrar el estado de la barra de progreso en porcentaje
  • 3 Solutions collect form web for “Acceso a un proveedor de contenido personalizado desde una aplicación diferente”

    Sí, es posible acceder a un proveedor de contenido personalizado desde otra aplicación. Usando su terminología llamaremos al proveedor de contenido CustomCP y la otra aplicación AppA. (AppA es el que quiere acceder al proveedor). Este enfoque ha demostrado su eficacia:

    1. Especifique el proveedor de contenido deseado (CustomCP) desde dentro de AppA utilizando un ContentProviderClient:

      Uri yourURI = Uri.parse("content://com.example.customcp/YourDatabase"); ContentProviderClient yourCR = getContentResolver().acquireContentProviderClient(yourURI);

    2. Acceda al proveedor de contenido como lo haría normalmente desde la aplicación A. Por ejemplo:

      yourCursor = yourCR.query(yourURI, null, null, null, null);

      Nota: debe incluir el código dentro de un bloque try / catch o incluir un "throws RemoteException" ya que el proveedor no está en App A.

    3. El Manifiesto de CustomCP debe especificar el proveedor, incluir los permisos permitidos (por ejemplo, leer y / o escribir) y el proveedor debe exportarse. He aquí un ejemplo:

       <provider android:name="your.package.contentprovider.YourProvider" android:authorities="YourAuthority" android:readPermission="android.permission.permRead" android:exported="true" > </provider> 

    En el archivo de manifiesto, asegúrese de que su

      "Proveedor android ..>" 

    Esta dentro de tu

      "Application .. / application>" 

    Espero que ayude

    Después de crear el proveedor de contenido, especifique el proveedor de contenido en el archivo de manifiesto. Puede mencionar proveedor de contenido que utiliza la etiqueta. Dentro de la etiqueta del proveedor no olvide mencionar el nombre y atributos de las autoridades. Esta declaración debe ser ..

     <provider android:name="pakgName.ProviderClassName" android:authorities="pakgName.ProviderClassName" android:multiprocess="true" > </provider> 

    Aquí lo que usted menciona en el atributo de las autoridades que debe coincidir cuando intenta obtener los datos del proveedor.

    FlipAndroid es un fan de Google para Android, Todo sobre Android Phones, Android Wear, Android Dev y Aplicaciones para Android Aplicaciones.