Ir al contenido principal

Entradas

Android: Telam desde tu teléfono.

Ahora podrás disfrutar de las últimas noticias de nuestra agencia nacional de medios desde tu Android, ya la pueden descargar desde el Play Store. Link: https://play.google.com/store/apps/details?id=com.matiascamiletti.telam

Android - Agregar soporte MultiWindow a tu aplicación

Hoy les dejo unas lineas para que su aplicacion sea compatible con la funcionalidad de MultiWindow de algunos dispositivos Samsung. Solo hay que agregar una lineas dentro del AndroidManifest.xml <?xml version="1.0" encoding="utf-8"?> <manifest xmlns:android="http://schemas.android.com/apk/res/android"     xmlns:tools="http://schemas.android.com/tools"     package="com.matiascamiletti.example.multiwindow">     <uses-permission android:name="android.permission.INTERNET" />     <uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />       <application         android:name=".MainApplication"         android:icon="@drawable/ic_launcher"         android:label="@string/app_name"         android:theme="@style/AppTheme" >         <activity             ...

iOS - Notificaciones locales en determinado tiempo.

Ahora les voy a compartir unas lineas de codigo para poder crear alertas/notificaciones locales desde una aplicacion en iOS: // Creamos el objecto de la notificación UILocalNotification *notification = [[UILocalNotification alloc] init] ; // Fecha/Tiempo en el que se lanzara la notificación notification.fireDate = [NSDate dateWithTimeIntervalSinceNow:60]; // TimeZone notification.timeZone = [NSTimeZone localTimeZone]; // Mensaje de la notificación notification.alertBody = [NSString stringWithFormat: @"Mensaje interesante!"]; // Puedes pasar adicionalmente un Diccionario con valores. notification.userInfo= [NSDictionary dictionaryWithObject:[NSString stringWithFormat:@"Some info"] forKey:@"information"]; // Posibilidad de repetir la notificacion // notification.repeatInterval= NSCalendarUnitDay; // Sonido de la notificacion notification.soundName = UILocalNotificationDefaultSou...

Reproducir un MP3 en iOS

Hoy les dejo unas lineas de codigo para reproducir un MP3 en cualquier aplicación para iOS. 1- Debemos agregar el framework: "AVFoundation" 2- En nuestro archivo .h #import <AVFoundation/AVFoundation.h> @interface MMScenesViewController : UIViewController { AVAudioPlayer *player; } 3- Vamos a preparar el Mp3 y reproducirlo después que la vista se muestre: - (void)viewDidLoad { [super viewDidLoad]; // Do any additional setup after loading the view from its nib. self.title = @"Musica"; // Creamos el Player con el archivo mp3 player = [[AVAudioPlayer alloc] initWithContentsOfURL:[NSURL fileURLWithPath: [[NSBundle mainBundle] pathForResource:@"menu" ofType:@"mp3"]] error:nil]; // Hacemos que la cancion se repita infinitamente. [player setNumberOfLoops:-1]; [player prepareToPlay]; } -(void)viewWillAppear:(BOOL)animated { ...

Instalar eGIT en Eclipse

Ahora les dejo un tutorial para poder usar GIT desde Eclipse. 1- Abrimos Eclipse 2- Hacemos clic en el menu: Help -> Install New Software 3- Hacer clic en el Boton Add, y agregar los Siguientes datos      * Name: eGit      * Location: http://download.eclipse.org/egit/updates 4- Seleccionamos: Eclipse Git Team Provider 5- Aceptan los términos y condiciones. 6- Comenzara a descargar los archivos necesarios y al finalizar les va a pedir reiniciar el Eclipse. Una vez abierto el Eclipse ya pueden usar GIT. Espero que les haya servido. Hasta luego.

Formatear numero para mostrar en una fecha (iOS)

Buenos días, hoy les traigo algo sencillo, aveces necesitamos mostrar un numero con una cantidad de cifras especifica, por ejemplo cuando se quiere mostrar una fecha. No es lo mismo mostrar 1/8/89 que 01/08/89, les dejo unas lineas para poder formatearlo: NSNumberFormatter *f = [[NSNumberFormatter alloc] init]; f.numberStyle = NSNumberFormatterNoStyle; [f setFormatWidth:2]; // cantidad de cifras [f setPaddingCharacter:@"0"]; NSLog(@"Numero: %@", [f stringFromNumber:[NSNumber numberWithInt:2]]); Esto les mostrara "Numero: 02". Espero que les sea de utilidad. Hasta luego.

Incluir Flurry en un proyecto iOS

Buen día gente, hoy les dejo unos pasos para poder agregar Flurry sin problema, el motivo de este post es porque al intentar incluirlo no me compilaba la aplicación, así que acá tienen la solución: 1- Descargar Flurry 2- Agregar la libreria al proyecto (Flurry.h, libFlurry.a) 3- Ir al target, "Link Binary With Libraries" y agregar los siguientes frameworks:     * SystemConfiguration.framework     * Security.framework     * libFlurry.a 4- Dirigirse al AppDelegate e importar la libreria: #import "Flurry.h" 5- Agregar llamada a Flurry con el Unique ID del proyecto. - (BOOL) application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions { [Flurry setCrashReportingEnabled:YES]; [Flurry startSession:@"YOUR_API_KEY"]; //your code } Listo con esto ya debería funcionar correctamente.

Xcode: Desactivar ARC a archivos específicos.

Buen día, a veces tenes que agregar librerías, archivos o clases que tenias de anteriores proyectos y te encontras con que se crearon sin utilizar ARC (Automatic Reference Count) no te preocupes de una manera muy sencilla podrás incluirlos sin tener que convertirlo. 1- Abris tu proyecto 2- Incluis los archivos 3- Haces clic en tu proyecto y después en el target. 4- Te dirigis a la pestaña "Build Phases" y expandi "Compile Sources" 5- Selecciones el archivo que no tiene ARC y le das doble clic en la columna "Compiler flags" te va a abrir un globo donde tendras que escribir: -fno-objc-arc Listo con esto ya pueden compilar sin que les tire error.

Bienvenidos!

Buenas noches, les doy la bienvenida a mi Blog. Primero voy a presentarme, ya mi nombre lo sabrán pero bueno quería contarle un poco, tengo 23 años y ya hace bastante que estoy en el mundo de la tecnología, unos 10 años aproximadamente metido con la programación de software, dando mis primeros pasos con el lenguaje PHP a partir de ahí empece un camino sin fin, con muchos sitios desarrollados tanto parte programación y maquetación, llegamos a la actualidad donde todo se esta portando a la movilidad, donde yo no quería perderme pertenecer a este cambio. Así hoy en día me dedico al desarrollo de software para plataformas móviles: iOS, Android, Blackberry, Windows Phone, Symbian y alguna otra mas. Mi idea del blog es ir subiendo tutoriales, ideas y mucho código que pueda ayudar a todos mis colegas. Les agradezco mucho si me agregan a sus favoritos ;) Saludos...

Interceptar las teclas que se presionan!

Buenas amigos. Primero quiero pedirles disculpas, que hace mucho no posteo nada, pero por algunos trabajos no tuve demasiado tiempo. Hoy veremos como saber que teclas se presionan cuando tenemos en pantalla nuestro propio Canvas. 1 - Creamos nuestro MIDlet: public class ClaseSeisMidlet extends MIDlet {     Display pantalla;     boolean inicio = false;     protected void startApp() {         if(!inicio){             pantalla = Display.getDisplay(this);             inicio = true;         }     }     protected void pauseApp() {     }     protected void destroyApp(boolean unconditional) {            } } 2 - Creamos la clase MiCanvas: public class MiCanvas extends Canvas { protected void paint(Graphics g) { } } 3 - En este Canva...

Anotador de Truco (J2ME)

Buenas gente. Hoy les traigo otra aplicación desarrollada en J2ME (Java ME), que es compatible con casi todos los celulares del mercado. Descripcion : Seguramente si estan aqui es porque mas de una vez se juntaron entre amigos y se pusieron a jugar al tan famoso juego de cartas, el Truco. Y como nunca hay a mano algo para anotar agarraron el celular y empezaron a anotar ahi. Por este motivo les desarrolle esta aplicacion muy util, un simple contador, que te resolvera ese problema de no tener donde anotar. Visitar web de Anotador de Truco! Saludos... Maty.

Dibujando en Canvas 2

Hola. Hoy seguiremos mostrando cuales son las demás primitivas gráficas para dibujar. 1 - Ya tenemos nuestra clase que hereda de Canvas y por supuesto nuestro MIDlet: import java.io.IOException; import javax.microedition.lcdui.Canvas; import javax.microedition.lcdui.Graphics; import javax.microedition.lcdui.Image; public class Dibujando extends Canvas {     Image imagen;     public Dibujando() {         try {             imagen = Image.createImage("/book.png");         } catch (IOException ex) {         }     }     protected void paint(Graphics g) {            } } 2 - Como pueden ver en nuestro código hemos creado una imagen para después poder pintarla en pantalla: Creamos una atributo de tipo Image donde se almacenara la imagen en memoria. Dentr...

Dibujando en Canvas

Buenas gente, hoy les mostrare como empezar a dibujar en canvas. 1 - Creamos una clase Canvas y la extendemos de Canvas: import javax.microedition.lcdui.Canvas; import javax.microedition.lcdui.Graphics; public class Dibujando extends Canvas {     protected void paint(Graphics g) {            } } Como ya hemos mostrado la clase Canvas obliga a crear el método paint. 2 - Ya podemos ponernos a dibujar: // Dibujamos un Cuadrado g.fillRect(10, 10, 100, 100); // Dibujamos un Rectangulo g.fillRect(120, 120, 200, 50); Con el método fillRect dibujamos rectángulos, recibe como parámetros: * int x : Punto del ancho de la pantalla donde empezara a dibujar el rectángulo. * int y: Punto del alto de la pantalla donde empezara a dibujar el rectángulo. * int width: Tamaño de ancho del rectángulo. * int height: Tamaño de alto del rectángulo. // Dibujamos un Cuadrado con bordes redondeados g.fillRoundRect(1...

Juego para Java ME(J2ME): Ta-Te-Ti

Buenas, aquí les presento mi primer juego Mobile. Si un Ta-Te-Ti. ¿Ustedes se preguntaran porque un juego tan simple como este?, la respuesta es muy simple, he descargado varios juegos de Ta-Te-Ti y todos tenían pésimos gráficos, entonces cree el mio un poco mas lindo. Esta es la primer versión y solo dispone la versión de jugar Humano Vs Humano. En la siguiente versión se incluirá el Juego Vs Computer, con varios niveles de dificultad. Recomendado para resolución: 240 x 320. Descargar Ta-Te-Ti v1.0.0 Acepto cualquier sugerencia y opiniones para mejorar el juego. Imágenes:

Escuchar los cambios en un Formulario

Hola, ayer un usuario le surgió la duda de como modificar un TextField desde la opción que se elija de un ChoiceGroup y aquí les dejo un pequeño tuto que muestra como realizar cambios a partir de cambios que sufra el formulario, como por ejemplo: el usuario elije una opción de un ChoiceGroup, el usuario escribe en un TextField y cualquier otro cambio que el usuario produzca sobre el formulario. 1- Creamos nuestro MIDlet y creamos un Formulario: public class InicioMidlet extends MIDlet {     Display pantalla;     Form formulario;     boolean inicio = false;     public void startApp() {         if(!inicio){             pantalla = Display.getDisplay(this);             inicio = true;             formulario = new Form("Mi Formulario");        ...

Degradado para Java Me

Hola gente. Aquí les traigo una clase para puedan dibujar degradados en Java ME. Puedes descargarla haciendo clic  aquí . Igual mas abajo les dejo el código. Con esta clase podrán crear degradados en Canvas, la clase Degradado dispone de un método estático llamado pintar. que recibe como parámetros: * Graphics g : El objeto que se necesita para dibujar * int Color 1 : El color inicial del degradado * int Color 2 : El color final del degradado * int x : Punto desde donde comenzara el degradado * int y : Punto desde donde comenzara el degradado * int ancho : El total del ancho del degradado * int alto : El Alto del degradado * int orientación : La orientación del degradado, puede ser Degradado.HORIZONTAL o Degradado.VERTICAL les dejo unos ejemplos: // Ejemplo 1 - Toda la pantalla de Blanco a Negro Degradado.pintar(g, 0xFFFFFF, 0x000000, 0, 0, getWidth(), getHeight(), Degradado.HORIZONTAL); // Ejemplo 2 - Toda la pantall...

Hola Mundo en Canvas

Buenas, después de varios días sin actualizar, disculpen fueron días de parciales y no tuve mucho tiempo para poder escribirles... Hoy les mostrare como iniciar su proyecto a bajo nivel, la forma de crear todo por nosotros mismos. 1 - Primero creamos un proyecto, y creamos un MIDlet vació. 2 - Creamos una Nueva clase de java: public class CanvasHolaMundo { } 3 - Hacemos que nuestra clase herede (extends) de Canvas: public class CanvasHolaMundo extends Canvas { } Deberán importar la librería: "import javax.microedition.lcdui.Canvas;", como logran ver solo anteponiendo la palabra "extends" y el nombre de la clase ya se logra hacer una herencia. 4 - Al heredar de Canvas esta clase nos obliga a crear un método: public class CanvasHolaMundo extends Canvas {     protected void paint(Graphics g) {            } } Este método paint recibe el objeto Graphics que nos permiti...

Introducción a LWUIT

Buenas, hoy les presentare una libreria para Java ME, que mejora notablemente la interfaz de usuario: Lightweight UI Toolkit Library, mejor dicho LWUIT. Primero para poder utilizar esta librería tendremos que descargarla. Hacer clic aqui para descargar . Una vez descargada y descomprimida, en cualquier lugar. Procedemos a crear un proyecto nuevo en nuestro NetBeans. y Ingresamos a las propiedades haciendo clic derecho sobre el proyecto: Ingresamos a Librerías y Recursos, y hacemos clic en Agregar Jar/Zip: Y buscamos en donde descomprimimos el archivo: LWUIT.jar Hacemos clic en aceptar y ya tendremos disponible la librería para trabajar en nuestro proyecto. Les dejo un pequeño código de muestra para que se fijen si les funciona todo bien: import com.sun.lwuit.Command; import com.sun.lwuit.Display; import com.sun.lwuit.Form; import com.sun.lwuit.Label; import com.sun.lwuit.animations.CommonTransitions; import com.sun.lwuit.layouts.BorderLa...

Leyendo los datos del Form

Buenas, hoy continuaremos nuestro ejemplo: Trabajando con la Clase Form . Ahora le agregamos alguna funcionalidad a nuestro formulario y mostraremos como obtener los datos que el usuario ingrese. 1 - Primero crearemos un atributo de Tipo: Command private Command guardar; 2 - Creamos nuestro Comando guardar: guardar = new Command("Guardar", Command.OK, 0); La clase Command recibe por parámetros:  * Titulo : El nombre del comando  * Tipo: El tipo de Comando podrás elegir entre: Command.BACK Command.CANCEL Command.EXIT Command.HELP Command.ITEM Command.OK Command.SCREEN Command.STOP Según tu comando deberás elegir el que mas corresponda con la acción de tu comando. 3 - Ahora tendremos que agregar nuestro comando al formulario, pero primero deberemos implementar la interface de CommandListener a nuestro MIDlet para que pueda recibir los comandos que agreguemos: public class ClaseTresMidlet extends MIDlet implements CommandListener Al im...