Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Principal > FireMonkey
Registrarse FAQ Miembros Calendario Guía de estilo Buscar Temas de Hoy Marcar Foros Como Leídos

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 25-06-2019
espinete espinete is offline
Miembro
 
Registrado: mar 2009
Posts: 233
Poder: 16
espinete Va camino a la fama
Imprimir desde Android (mostrar directamente la lista de impresoras)

Hola!

Llevo tiempo intentando averiguar si esto es posible. Teniendo un documento (TXT, PDF o lo que sea), puedo usar Intent para abrirlo, compartirlo, enviarlo a otra aplicación compatible, etc.

Por ejemplo, este es el código que uso para abrir un PDF:

Código Delphi [-]
procedure OpenPDF(const AFileName: string);
var
  LIntent: JIntent;
  LAuthority: JString;
  LUri: Jnet_Uri;
begin
  LAuthority := StringToJString(JStringToString(TAndroidHelper.Context.getApplicationContext.getPackageName) + '.fileprovider');
  LUri := TJFileProvider.JavaClass.getUriForFile(TAndroidHelper.Context, LAuthority, TJFile.JavaClass.init(StringToJString(AFileName)));
  LIntent := TJIntent.JavaClass.init(TJIntent.JavaClass.ACTION_VIEW);
  LIntent.setDataAndType(LUri, StringToJString('application/pdf'));
  LIntent.setFlags(TJIntent.JavaClass.FLAG_GRANT_READ_URI_PERMISSION);
  TAndroidHelper.Activity.startActivity(LIntent);
end;

Con ACTION_VIEW o ACTION_SEND lo que hace es mostrar las apps compatibles con el formato que le queramos pasar (en este caso application/pdf).

La pregunta es... ¿cómo hacen otras apps para que cuando pulsas "Imprimir" aparezca directamente la lista de impresoras, en vez de la ventana de compartir?

La app de Adobe Reader, el cliente de email BlueMail y otras varias que he probado en mi móvil permiten esto.

¿Qué servicio, clase de java o flags hay que enviar en el Intent?
Responder Con Cita
  #2  
Antiguo 25-06-2019
Avatar de Casimiro Notevi
Casimiro Notevi Casimiro Notevi is offline
Moderador
 
Registrado: sep 2004
Ubicación: En algún lugar.
Posts: 32.021
Poder: 10
Casimiro Notevi Tiene un aura espectacularCasimiro Notevi Tiene un aura espectacular
Creo que te refieres a los dispositivos bluetooth conectados.
Responder Con Cita
  #3  
Antiguo 25-06-2019
espinete espinete is offline
Miembro
 
Registrado: mar 2009
Posts: 233
Poder: 16
espinete Va camino a la fama
No exactamente. Es la ventana de elegir impresora. Sólo aparecen impresoras, aunque haya más dispositivos bluetooth conectados. Voy a ver si puedo publicar un screenshot, pero si tienes Android puedes ver a qué me refiero con cualquier app que permita "imprimir"
Responder Con Cita
  #4  
Antiguo 26-06-2019
Avatar de Casimiro Notevi
Casimiro Notevi Casimiro Notevi is offline
Moderador
 
Registrado: sep 2004
Ubicación: En algún lugar.
Posts: 32.021
Poder: 10
Casimiro Notevi Tiene un aura espectacularCasimiro Notevi Tiene un aura espectacular
Entiendo, lo que te decía es si quieres listar las impresoras conectadas bluetooth, las conectadas por puerto serie, las conectadas por red (tcp), etc.
Responder Con Cita
  #5  
Antiguo 26-06-2019
espinete espinete is offline
Miembro
 
Registrado: mar 2009
Posts: 233
Poder: 16
espinete Va camino a la fama
Pues en principio las impresoras que ya he conectado/configurado en el móvil, independientemente del tipo de conexión. En mi móvil por ejemplo puedo ver todas mis impresoras (wifi o bluetooth), estando desactivadas las que en ese momento no tienen conexión.

No sé si esa ventana es la de Google Cloud Print o alguna similar.

Esta es la ventana a la que me refiero:

Screenshot_20190626-094119_Print Spooler.jpg

Screenshot_20190626-094130_Print Spooler.jpg
Responder Con Cita
Respuesta


Herramientas Buscar en Tema
Buscar en Tema:

Búsqueda Avanzada
Desplegado

Normas de Publicación
no Puedes crear nuevos temas
no Puedes responder a temas
no Puedes adjuntar archivos
no Puedes editar tus mensajes

El código vB está habilitado
Las caritas están habilitado
Código [IMG] está habilitado
Código HTML está deshabilitado
Saltar a Foro

Temas Similares
Tema Autor Foro Respuestas Último mensaje
Imprimir directamente lucas05 Varios 7 06-12-2011 23:43:15
Imprimir directamente a un puerto COM krlosrp Varios 1 20-08-2007 20:07:55
Imprimir directamente en LPT1 con VB.net cocomo .NET 1 28-05-2007 00:09:24
Imprimir directamente Alexander Impresión 5 07-07-2006 07:31:26
Imprimir directamente al puerto USB jhonarevalo Impresión 2 24-03-2004 19:52:19


La franja horaria es GMT +2. Ahora son las 22:21:40.


Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi
Copyright 1996-2007 Club Delphi