- Presentación.
Debes conocer Google Print. Mediante esta utilidad de Google podemos imprimir un documento a distancia, es decir:
Tengo en casa mi ordenador y conectado a él, mi impresora. Los dos están encendido. Tengo conexión a Internet.
Pues bien, mediante Google Print, puedo enviar un documento a mi casa y automáticamente lo imprimira mi impresora.
Es decir, puedo imprimir en el ordenador de mi casa remotamente.
Supongamos, una vez más, que en casa tenemos nuestro ordenador encendido, nuestra impresora encendida e Internet, desde nuestro móvil podemos enviara un documento a través de Google Print a nuestra casa e imprimirlo.
_________________________________
- Vamos a probar Google Print.
Necesitamos:
- tener conectada una impresora a nuestro ordenador y que nuestro ordenador esté conectado a Internet.
- también es necesario una cuenta en Google y el navegador Chrome.
1.- Entramos en Google Print.
2.- Pulsamos el botón de Probar ahora.
3.- Nos pide que entremos con una cuenta de Google.
Ya estamos en nuestra sesión de Google. Si nos hemos perdido y no encontrarmos el Google Print, volvemos a entrar en Google Print.
4.- Pulsamos en el gestor de impresoras para añadir nuestra impresora: Manage printers
5.- Añadimos una impresora clásica
6.- Vamos al navegador Google Chrome.
- Haz clic en el menú de Chrome situado en la barra de herramientas del navegador.
- Selecciona Configuración .
- Haz clic abajo, en el enlace Mostrar opciones avanzadas .
- Desplázate hasta la sección "Google Cloud Print".
Al cabo de un rato, habrá encontrado la impresora que tengo conectada al ordenador. Canon MP140 series Printer
7.- Pulsamos en botón rojo donde pone IMPRIMIR
Subimos un archivo desde nuestro ordenador para imprimirlo.
Elegimos la impresora y pulsamos el botón de Imprimir
__________________________
En resumen, si estamos en cualquier ordenador conectado a Internet y tenemos una cuenta de Google y el navegador Chrome, podemos imprimir un archivo en el ordenador de nuestra casa, siempre que éste esté encendido, que tenga acceso a internet y que tenga una impresora encendida y conectada al ordenador.
_____________________________________________________________________________________________
Con los teléfonos móviles y tablets.
Utiliza Cloud Print para móviles con Android:
https://play.google.com/store/apps/details?id=com.pauloslf.cloudprint
Consulta también esta información:
http://www.google.com/cloudprint/learn/apps.html
_____________________________________________________________________________________________
Tutorial sin acabar....
Vamos al Basic4Android
Designer - Layout
|
|
Creamos mediante el Designer un layout.
Le llamamos Layout.
Tres button y un EditText y un Web
Marcamos las librería Dialogs y Net
Se trata de obtener un archivo mediante Dialogs (Button1) y luego subirlo por FTP (Button3)
Con el Button2 intentamos subirlo por PHP pero falla la localiación de Archivo.
Una vez el archivo en internet lo imprimimos con Google Print.
Cargamos la librería: Dialogs
|
Código del Basic4Android
|
'Activity module
Sub Process_Globals
'These global variables will be declared once when the application starts.
'These variables can be accessed from all modules.
End Sub
Sub Globals
'These global variables will be redeclared each time the activity is created.
'These variables can only be accessed from this module.
Dim btnFile As Button
Dim Bmp As Bitmap
Dim lbl1 As Label
End Sub
Sub Activity_Create(FirstTime As Boolean)
Activity.LoadLayout("Layout")
Bmp.Initialize(File.DirAssets, "android48.png")
End Sub
Sub Activity_Resume
End Sub
Sub Activity_Pause (UserClosed As Boolean)
End Sub
Sub btnFile_Click
Dim fd As FileDialog
fd.FastScroll = True
fd.FilePath = File.DirInternal ' also sets ChosenName to an emtpy string
'fd.ShowOnlyFolders = true
'fd.FileFilter = ".txt" ' for example or ".jpg,.png" for multiple file types
ret = fd.Show("B4A File Dialog", "Yes", "No", "Maybe", Bmp)
ToastMessageShow(ret & " : Path : " & fd.FilePath & CRLF & "File : " & fd.ChosenName, False)
End Sub |
Página web subirarchivo.htm
|
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
"http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<title>Documento sin título</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
</head>
<body>
<p align="left"><b><font color="#0000FF" size="4" face="Arial, Helvetica, sans-serif">Subir archivos:</font></b>
<form action="b4a_imprimir.php" method="post" enctype="multipart/form-data">
<div align="center">
<input name="archivo" type="file">
<button type="submit">Enviar</button> </div>
</form>
</body>
</html>
|
Página php subirarchivo.php
No funciona el dialog de archivo en php
|
<?php
$datos=$_POST;
$archivo=$_FILES['archivo']['name'];
$peso=$_FILES['archivo']['size'];
if ($peso < 10000000){
# $destino = "/var/www/BD/";<br>
$destino = "BD/";
$destino = $destino . basename( $_FILES['archivo']['name']);
if(move_uploaded_file($_FILES['archivo']['tmp_name'], $destino)) {
echo "El archivo: ". basename( $_FILES['archivo']['name']). " ha subido al servidor";
} else{
echo "Error en la subida del archivo";
}
}
?>
<p align="center"><a href="http://www.iesromerovargas.net">Volver a la página anterior.</a></p>
</html>
|
B4A Elegir archivo y ver página web + FTP
|
'Activity module
Sub Process_Globals
'These global variables will be declared once when the application starts.
'These variables can be accessed from all modules.
Dim FTP As FTP
End Sub
Sub Globals
'These global variables will be redeclared each time the activity is created.
'These variables can only be accessed from this module.
Dim btnFile As Button
Dim Bmp As Bitmap
Dim lbl1 As Label
Dim WebView1 As WebView
Dim Button1 As Button
Dim EditText1 As EditText
Dim label1 As Label
End Sub
Sub Activity_Create(FirstTime As Boolean)
Activity.LoadLayout("Layout")
Bmp.Initialize(File.DirAssets, "android48.png")
If FirstTime Then
FTP.Initialize("FTP", "iesromerovargas.com", 21, "usuario", "clave")
End If
End Sub
Sub Activity_Resume
End Sub
Sub Activity_Pause (UserClosed As Boolean)
End Sub
Sub btnFile_Click
Dim fd As FileDialog
fd.FastScroll = True
fd.FilePath = File.DirInternal ' also sets ChosenName to an emtpy string
'fd.ShowOnlyFolders = true
'fd.FileFilter = ".txt" ' for example or ".jpg,.png" for multiple file types
ret = fd.Show("B4A File Dialog", "Yes", "No", "Maybe", Bmp)
ToastMessageShow(ret & " : Path : " & fd.FilePath & CRLF & "File : " & fd.ChosenName, False)
lbl1.Text=fd.FilePath & fd.ChosenName
End Sub
Sub Button1_Click
WebView1.LoadUrl("http://192.168.1.3/b4a_imprimir.htm")
End Sub
Sub Button2_Click
FTP.UploadFile(File.DirAssets, "android48.png", True, "/biblioteca/android48.png")
End Sub
Sub Button3_Click
FTP.List("/")
End Sub
Sub FTP_UploadProgress (ServerPath As String, TotalUploaded As Long, Total As Long)
lbl1.Text="Completado"
Dim s As String
s = "Uploaded " & Round(TotalUploaded / 1000) & "KB"
If Total > 0 Then s = s & " out of " & Round(Total / 1000) & "KB"
Log(s)
End Sub
Sub FTP_UploadCompleted (ServerPath As String, Success As Boolean)
lbl1.Text="Completado2"
Log(ServerPath & ", Success=" & Success)
If Success = False Then Log(LastException.Message)
End Sub
Sub FTP_ListCompleted (ServerPath As String, Success As Boolean, Folders() As FTPEntry, Files() As FTPEntry)
Log(ServerPath)
If Success = False Then
Log(LastException)
Else
For i = 0 To Folders.Length - 1
Log(Folders(i).Name)
Next
For i = 0 To Files.Length - 1
Log(Files(i).Name & ", " & Files(i).Size & ", " & DateTime.Date(Files(i).Timestamp))
Next
End If
End Sub
|
________________________________