25-agosto-2013
admin

Obtener el número de teléfono desde la aplicación

Se puede obtener el número de teléfono donde se está ejecutando la aplicación android. Para ello se puede hacer lo siguiente:

1 – Se deben añadir permisos al archivo manifest.xml:

< uses-permission 
       android:name="android.permission.READ_PHONE_STATE" / >

2 – Se utiliza la función getLine1Number():

private String getPhoneNumber(){
  TelephonyManager mTelephonyManager;
  mTelephonyManager = (TelephonyManager) 
                      getSystemService(Context.TELEPHONY_SERVICE); 
  return mTelephonyManager.getLine1Number();
}

Nota: El método getLine1Number() devuelve el número sólo si está configurado así en la SIM, en otro caso no nos sirve.
(Se puede comprobar en el propio móvil en Ajustes del sistema -> Acerca del teléfono -> Estado -> Mi número de teléfono)

13-agosto-2013
admin

Lector RSS realizado con AJAX

Función javascript que realiza petición ajax a una página php que será la que recupere el contenido del RSS:

function showRSS(str){
   if (str.length==0) {
      document.getElementById("rssOutput").innerHTML="";
      return;
  }
  if (window.XMLHttpRequest) {// code for IE7+, Firefox, Chrome, Opera, Safari
      xmlhttp=new XMLHttpRequest();
  } else {// code for IE6, IE5
      xmlhttp=new ActiveXObject("Microsoft.XMLHTTP");
  }

  xmlhttp.onreadystatechange=function() {
      if (xmlhttp.readyState==4 && xmlhttp.status==200) {
         document.getElementById("rssOutput").innerHTML=xmlhttp.responseText;
      }
  }
  xmlhttp.open("GET","getrss.php?q="+str,true);
  xmlhttp.send();
}

Contenido de la página php,

//get the q parameter from URL
$q=$_GET["q"];

//find out which feed was selected
if($q=="Google"){
  $xml=("http://news.google.com/news?ned=us&topic=h&output=rss");
} elseif($q=="MSNBC") {
  $xml=("http://rss.msnbc.msn.com/id/3032091/device/rss/rss.xml");
}

$xmlDoc = new DOMDocument();
$xmlDoc->load($xml);

$channel=$xmlDoc->getElementsByTagName('channel')->item(0);
$channel_title = $channel->getElementsByTagName('title')
->item(0)->childNodes->item(0)->nodeValue;
$channel_link = $channel->getElementsByTagName('link')
->item(0)->childNodes->item(0)->nodeValue;
$channel_desc = $channel->getElementsByTagName('description')
->item(0)->childNodes->item(0)->nodeValue;

echo("< p>< a href='" . $channel_link
  . "'>" . $channel_title . " < /a>");
echo($channel_desc . "< /p>");

$x=$xmlDoc->getElementsByTagName('item');
for ($i=0; $i<=2; $i++) {
  $item_title=$x->item($i)->getElementsByTagName('title')
  ->item(0)->childNodes->item(0)->nodeValue;
  $item_link=$x->item($i)->getElementsByTagName('link')
  ->item(0)->childNodes->item(0)->nodeValue;
  $item_desc=$x->item($i)->getElementsByTagName('description')
  ->item(0)->childNodes->item(0)->nodeValue;

  echo ("< p>< a href='" . $item_link
  . "'>" . $item_title . "< /a>");
  echo ($item_desc . "< /p>");
}

FUENTE con el ejemplo

13-agosto-2013
admin

Librerías javascript para crear presentaciones

Ahora, además de Microsoft Powerpoint, Keynote u otras aplicaciones conocidas también podemos crear presentaciones con html. Para ello podemos encontrar numerosas librerías javascript pensadas para crear presentaciones por medio de HTML y Javascript.

Te permiten realizar transiciones, pantalla completa o accesos con el teclado entre muchas otras cosas. La principal ventaja que tiene es que al estar realizadas vía web simplemente tendremos que acceder a la URL donde subamos la presentación y no tenemos que asegurarnos de que el ordenador en cuestión tenga instalado el software necesario.
También son ideales para presentar y explicar un servicio a nuevos visitantes de una forma original.

Algunos de ellos son:

Deck.js: se trata de una bonita biblioteca JavaScript para crear presentaciones HTML.
Mientras que los usuarios avanzados pueden crear presentaciones totalmente personalizadas, hay plantillas y temas para los usuarios novatos que permiten crear una presentación de diapositivas estándar sin ningún esfuerzo.

Fathom.js: Este es un plugin de jQuery que nos permite crear las diapositivas en HTML, con estilos CSS y controlar la lógica de presentación con JavaScript. La navegación se puede manejar con el teclado, el ratón o el desplazamiento. Permite la definición de un video para sincronizar con la presentación de diapositivas.

Html5slides: está desarrollada por Google. Cuenta con 2 temas incorporados y soporta 3 diseños diferentes (normal, faux-widescreen, pantalla ancha).

Dzslides: consiste en un solo archivo HTML5 CSS3 que hace de plantilla para construir las presentaciones. Además, dispone de 2 funcionalidades: incrustar el resultado en otras páginas y mostrar diapositivas con un panel de control.

Slippy: es una librería de presentaciones HTML realizada con jQuery. Además de navegar por las diapositivas con las siguientes teclas prev-que permite a los usuarios ir directamente a la diapositiva que desee con las teclas numéricas.

S5: Un popular motor de presentación basada en estándares que tiene todas las características que podemos pedir, incluyendo: auto-escalado de texto, representación incremental, URL única para cada diapositiva, indicador de progreso y mucho más…

11-agosto-2013
admin

Usar fuentes tipográficas para iconos con css (Icon-Fonts)

Ahora en lugar de utilizar los iconos basados en imágenes de toda la vida, se pueden usar los llamados icon-fonts. Estos iconos se sacan de fuentes tipográficas (esto quiere decir que los iconos no son imagenes, si no letras).

Si bien, puedes crearte tu propia fuente de iconos personalizada utilizando para ello algun programa tipo p.e. IcoMoon, existen ya numerosas fuentes ya creadas en la red. El uso de estas fuentes es muy sencillo, para poder utilizarlas basta con incluir las fuentes y los ficheros css.

Sitios web donde puedes descargarte icon-fonts:

Cikonss: Contiene alrededor de 40 icon-fonts.
Font Awesome: En su versión 3,2 ya contiene 361 icon-fonts.
Recopilatorio de otras webs con icon-fonts

11-agosto-2013
admin

CSS Media Types

CSS Media Types nos permite establecer propiedades CSS personalizadas según el medio donde se esté mostrando nuestra página web.

Como ejemplo, en Twitter Bootstrap lo utilizan de la siguiente manera:

/* Large desktop */
@media (min-width: 1200px) { ... }

/* Portrait tablet to landscape and desktop */
@media (min-width: 768px) and (max-width: 979px) { ... }

/* Landscape phone to portrait tablet */
@media (max-width: 767px) { ... }

/* Landscape phones and down */
@media (max-width: 480px) { ... }

Lista con todos los Media Types:
all – Se utiliza para todos los dispositivos
aural – Se utiliza para la voz y los sintetizadores de sonido
braille – Se utiliza para los dispositivos táctiles braille
embossed – Se utiliza para impresoras braille paginados
handheld – Se utiliza para los dispositivos pequeños o de mano
print – Se utiliza para imprimir en impresoras
projection – Se utiliza para las presentaciones proyectadas, como diapositivas
screen – Se utiliza para las pantallas de ordenador
tty – Se utiliza para los medios de comunicación mediante una cuadrícula de caracteres de ancho fijo, como teletipos y terminales
tv – Se utiliza para los dispositivos de tipo televisión

Ejemplo de uso:

@media screen
  {
  p.test {font-family:verdana,sans-serif;font-size:14px;}
  }
@media print
  {
  p.test {font-family:times,serif;font-size:10px;}
  }
@media screen,print
  {
  p.test {font-weight:bold;}
  }

Aparte, tenemos el atributo media en el tag link que nos permite establecer hojas de estilos dinámicas según el dispositivo. Ver Aquí.

11-agosto-2013
admin

Git

Git es un software de control de versiones diseñado por Linus Torvalds, pensando en la eficiencia y la confiabilidad del mantenimiento de versiones de aplicaciones cuando estas tienen un gran número de archivos de código fuente.
– Se trata de un sistema distribuido que permite a todo el mundo tener una copia de todo el repositorio. Y aún así ocupa poco más que lo que ocupa una copia de trabajo en otros sistemas.
– Es muy rápido ya que las operaciones se realizan en local.
– Si queremos ahorrarnos la instalación de un srevidor GIT propio se puede recurrir a GitHub. Que nos permite utilizar lo de forma gratuita (la versión gratuita tiene algunas limitaciones pero va bastante bien).

Algunos enlaces de interés:
– Libro con toda la documentación de GIT en español.
– Guía rápida de comandos para GIT.

25-julio-2013
admin

Usar Grocery CRUD (extensión de CodeIgniter)

Grocery CRUD es una utilidad open source (licencia GPL v3 y MIT). Permite junto con el framework Codeigniter crear en unos minutos interfaces que lleven a cabo las funciones básicas en bases de datos (Create/Read/Update/Delete CRUD).

Esta librería contiene todo lo necesario para añadir, mostrar y editar datos. Incluye además validación de datos tanto en servidor como en cliente. Con este generador de CRUD, no es necesario copiar todo el código CSS, JavaScript, tablas, formularios, funciones, modelos, bibliotecas a nuestro sistema de backoffice.

Su uso es tan fácil como:
– En primer lugar se debe instalar Codeigniter que se puede descargar aquí.
– Una vez instalado Codeigniter se debe proceder a la instalación de Grocery CRUD que encontraremos aquí.

Algunos enlaces de interés.
Guía de usuario de CodeIgniter
Ejemplos de uso de Grocery CRUD
Manual para principiantes
Solución al Error Undefined property: Main::$grocery_crud

20-julio-2013
admin

Instalar distribuciones linux en una Raspherry PI con NOOBS «New Out Of Box Software»

NOOBS (New Out Of Box Software) es una aplicación que facilita mucho la instalación de diversas distribuciones Linux en la Raspberry PI. Además, no precisa del acceso a Internet durante la instalación. Solamente hay que descargar NOOBS y descomprimirlo en una tarjeta SD de al menos 4 GB de capacidad. Al hacerlo se nos dará la opción de instalar alguna de estas soluciones: Raspbian, Arch Linux, RaspBMC, Pidora u OpenELEC.

Esta instalación permite tanto iniciar nuestro Raspberry Pi de forma normal con esa nueva distribución como volver a arrancar NOOBS mediante la pulsación de la tecla Shift durante el proceso de arranque. Esta segunda opción permitirá cambiar a otro sistema operativo si lo deseamos, pero también da acceso a la edición rápida del fichero config.txt para la distribución instalada en la que se establecen parámetros que afectan por ejemplo a la resolución de pantalla y el overscan aplicado para ajustar los bordes de la interfaz a los de la pantalla o televisor.

Puedes descargátelo de la página oficial de la Raspberry PI. En la propia página de descarga hay una guia de instalación muy sencilla de seguir.
Por otro lado, el código fuente de NOOBS está disponible en github por si se desea personalizarlo.

16-julio-2013
admin

Extraer el texto de una imagen mediante OCR

OCR = Optical character recognition o Reconocimiento Óptico de Caracteres
Mediante una herramienta OCR se puede digitalizar cualquier tipo de texto a partir de una imagen, es decir, nos permite convertir una imagen a texto editable.

De esta forma se puede sacar el texto existente en archivos de tipo imagen (JPG, JPEG, BMP, TIFF, GIF, …) y convertirlo en formatos que luego podremos editar, como pueden ser: Word, Text, Excel, PDF, Html,…

Ahora hay muchos software que realizan esta tarea pero si no quieres instalar nada en tu máquina puedes realizar estas tareas de manera online

Hay páginas que permiten realizar este proceso de forma online. Por orden:
http://www.onlineocr.net
http://www.free-ocr.com

Entre las herramientas que existen se pueden destacar las expuestas aquí:
http://www.freeocr.net/

6-julio-2013
admin

Transacciones con Entity Framework

Un ejemplo de uso podría ser:

using (ModelContextContainer context= new ModelContextContainer()) {
      context.Connection.Open();
      DbTransaction tx = context.Connection.BeginTransaction();
      
      //Operacion 1
      //.......

      context.SaveChanges();

      //Operacion 2
      //.......

      context.SaveChanges();


      tx.Commit();//aqui se salvan todas las operaciones
      context.Connection.Close();
}

Más información: Administrar conexiones y transacciones (Entity Framework)

Páginas:«1...19202122232425...30»

Categorias

Linkedin