Archivo personalizado de Android Share

Creé mi propia extensión de archivo (.oli) Si el usuario hace clic en un archivo con esta extensión, mi aplicación se inicia y carga los datos incluidos. Esto funciona como se esperaba. El problema es que me gustaría darle al usuario de mi aplicación la oportunidad de compartir un archivo (Ejemplo: filename.oli).

Implementé esto hasta ahora:

public void shareFile(){
        File file = getShareableFile(); //Creates a .oli-file
        Intent shareIntent = new Intent(Intent.ACTION_SEND);
        Uri uri = Uri.fromFile(file);
        shareIntent.setType("*/*"); //Maybe the problem
        shareIntent.putExtra(Intent.EXTRA_STREAM, uri);
        shareIntent.putExtra(android.content.Intent.EXTRA_SUBJECT, name);
        startActivity(Intent.createChooser(shareIntent, getString(R.string.shareDatei)));
}

El problema es que la lista de aplicaciones que piensan que podrían manejar compartir mi archivo es muy grande debido a shareIntent.setType ("/"); Aquí hay dos casos que suceden si comparte con diferentes aplicaciones:

Si elijo una aplicación de correo electrónico como Gmail para compartir mi archivo, funciona como debería. El correo electrónico incluye el archivo como filename.oli. Cuando hago clic en él, mi aplicación comienza.

Pero si elijo, por ejemplo, la aplicación Quickmemo, recibo un mensaje de que este archivo no se puede compartir.

Entonces, en general, solo quiero mostrar aplicaciones en la lista de selección que pueden manejar para compartir mi archivo con la extensión .oli. ¿Cómo puedo hacer eso? ¡Gracias por adelantado!

Respuestas a la pregunta(1)

Su respuesta a la pregunta