domingo, 22 de julio de 2012

Samsung Galaxy S3: Memory problems


I'm not sure yet on what is the cause or what will be the solution but I came to a headeach on a problem I'm having with my Samsung Galaxy S 3. The problem is this one, although I have plenty of memory on the device I can not install more applications because it tells me that there is no storage space available.

I'll paste a few screenshots of both the computer and the device itself and I will make a public plea for help because I've been looking at forums, mainly in English, and have not found a possible solution. I think, is an assumption, that the problem is in how Ice Cream Sandwich handles device's internal memory. As you know, the SGS3 brings more than considerable internal memory, with 0.98 MB RAM and 11.2 GB of internal storage it should be more than enought and should have no problem unless the system bad manages memory itself. I think, I say, I BELIEVE, that Android ICS is screwing and is the  ultimately responsible for the mismanagement and let me explain why with a few screenshots:


This first screenshot is Airdroid interface (recommended program to manage your phone from your PC and move images, videos, and contacts in both directions. I have marked in red something that shocks me, it has detected as internal memory and a as SD card the same amount of data. See? so, Link2SD has the same wrong detection:



Link2SD did not detect the second storage card (just format it, just has not caught by this because the system if the catches). In Settings / Storage see this:

It's where I wanted to go, the system recognices the SD card but for whatever reason the other applications use or recognize the internal memory as external storage and do not recognize the real external storage. I would say, without the possibility or the time required to debug the system, that something is going wrong in the management of external storage and communication between the system and applications .

What do I do now? Do I have to uninstall some application before installing other applications? Any recommendations? I deleted caches, I deleted the folder Android/data, I have stopped applications and services and I still get the message that there is not enough storage space every time I try to install a new app.

I will continue looking for answers and solutions and when found I will update this post.

Thank you.

SGS3: problemas de memoria

No se todavía cuál es la causa ni cuál va a ser la solución pero me trae de cabeza un problema que estoy teniendo con mi Samsung Galaxy S 3. El problema es el siguiente, aunque tengo memoria de sobra en el dispositivo no soy capaz de instalar más aplicaciones porque me dice que no queda espacio de almacenamiento disponible.

Voy a pegar unas cuantas capturas de pantalla, tanto del ordenador como del propio dispositivo y voy a hacer una petición pública de ayuda porque he estado mirando foros, principalmente en inglés, y no he encontrado una posible solución. Creo, es una suposición, que el problema está en cómo gestiona Android Ice Cream Sandwich la memoria interna del dispositivo. Como sabéis, el SGS3 trae una memoria interna más que considerable, con una RAM de 0.98 MB y 11,2 GB de almacenamiento interno no debería tener nadie ningún problema a no ser que el propio sistema gestione mal la memoria. Creo, digo, CREO, que Android ICS la está cagando y es el responsable último de esa mala gestión y os voy a explicar por qué con unas cuantas capturas de pantalla:


Esta primera captura de pantalla es de la interfaz de Airdroid (programa recomendado para gestionar el teléfono desde tu pc y mover, imágenes videos, contractos y demás en ambas direcciones. He marcado en rojo algo que choca y es que detecta como memoria interna y como tarjeta SD la misma cantidad de datos. ¿Lo ves? Sucede lo mismo con Link2SD:


A Link2SD le sucede lo mismo y no ha detectado la segunda tarjeta de almacenamiento (acabo de formatearla, igual no la ha cogido por eso porque el sistema si que la pilla). En Ajustes/Almacenamiento vemos ésto:


Es a donde yo quería ir, el sistema si que está cogiendo la tarjeta SD pero por el motivo que sea el resto de aplicaciones utilizan o reconocen a la memoria interna como almacenamiento externo y no reconocen el verdadero almacenamiento externo. Diría, sin tener la posibilidad ni el tiempo necesario para depurar el sistema, que algo está fallando en la comunicación entre el sistema y las aplicaciones en cuanto a la gestión de almacenamiento externo. 

¿Qué hago ahora? ¿Tengo que desinstalar aplicaciones para poder instalar otras? ¿Alguna recomendación? He borrado cachés, he borrado la carpeta Android/data, he parado servicios y aplicaciones y aún así recibo el mensaje de que no hay suficiente espacio de almacenamiento cada vez que intento instalar una nueva app.

Espero respuestas pero evidentemente seguiré buscando una solución y cuando la encuentre actualizaré esta entrada. 

Gracias.

miércoles, 18 de julio de 2012

Samsung Galaxy S3 - Actualizar Firmware

Guía simple para actualizar el firmware de tu SGS3 mediante Kyes.

BACKUP DEL SGS3

Para hacerlo descarga Samsung Kies desde aquí:
http://www.samsung.com/es/support/usefulsoftware/KIES/JSP

Una vez instalado y ejecutado conecta tu SGS3...


 Desbloquea el móvil:


Te avisa de que hay una actualización del firmware, de momento "Cancelar" porque primero vamos a hacer un backup por si acaso (mas vale un porsiaca que cien penseques):


Pincha en la pestaña de  "Copia de seguridad / Recuperar" y selecciona todo. Pulsa en "Copia de seguridad" :


Comienza el proceso de copia de seguridad:


Proceso completado:


ACTUALIZACIÓN DEL FIRMWARE

Para actualizar el firmware, pulsa en "Actualizar":


Lee, acepto, yo continuo sin guardar (teléfono y datos, información para Samsung). Pulsa en "Iniciar actualización":


Comienza un proceso lento, primero Kyes prepara el móvil:


Y después empieza a descargar la actualización, éste es el proceso más lento de todos:


Y por fin, después de media hora se reinica el móvil (dos veces) y en el Kyes vemos ésta ventana:


Ya está, ya tenemos el firmware actualizado.

lunes, 9 de julio de 2012

Aprovechando el código fuente de Android


La documentación de Android a veces se queda corta pero podemos utilizar el códgo fuente de Android y de todos sus proyectos para rellenar esos agujeros en la documentación oficial.

El código fuente de Android y todos sus proyectos son administrados por el sistema de control de código fuente de Git. Git (http://git-scm.com/) es un sistema de control de código fuente Open Source diseñado para manejar proyectos grandes y pequeños, con rapidez y comodidad.

El código fuente de Android se publica en http://source.android.com. El código se hizo abrió al público en octubre de 2008 con el objetivo de hacer una plataforma móvil totalmente personalizable. Ver filosofía y objetivos (en inglés).

Buscando las fuentes de Android en Internet podemos encontrarlas en:

http://android.git.kernel.org
http://source.android.com/source/index.html

Había más sitios donde encontrar código fuente online pero han sido cerrados para dar mas impulso al uso de Git.

Usar Git para descargar Fuentes Android es bien fácil, independientemente de la plataforma que utilices (Linux, Mac, Windows...) primero tienes que instalar Git y luego descargar el código que busques, no voy a entrar en detalles porque ya hay cientos de tutoriales pero si que voy a poner aquí algún video y algún enlace interesante.


Resumen de Paquetes Java en Android

Android contiene más de 50 paquetes y más de 1000 clases, y sigue creciendo con cada nueva versión. Una forma de obtener una visión general de la plataforma Android es ver la estructura de los paquetes de Java. Como Android se desvía de la distribución estándar de Java es importante saber lo que es compatible y lo que no. He aquí una breve descripción de los paquetes más importantes que se incluyen en el SDK de Android:

android.app: implementa el modelo de aplicaciones Android. Las clases principales son Application, Activity, Fragment, pero también encontrarás aquí los controles, cuadros de diálogo, alertas y notificaciones.

android.app.admin: ofrece la posibilidad de controlar el dispositivo remotamente por, por ejemplo, administradores de la red de una empresa.

android.accounts: proporciona clases para gestionar las cuentas del usuario (Google, Facebook, WhatsApp, etc. ). Las clases principales son Accountmanager y Account.

android.animation: Contiene todas las nuevas clases de animación por propiedades.

android.app.backup: proporciona los hooks para las aplicaciones de copia de seguridad y restaurción de cuando ante un cambio de dispositivo.

android.appwidget: proporciona la funcionalidad para los widgets de la pantalla principal.

android.bluetooth: proporciona una serie de clases para trabajar con la funcionalidad Bluetooth.

android.content: implementa los conceptos de los proveedores de contenido, que abstraen el acceso a datos de su almacenamiento. También incluye los Intents y los Android Uniform Resource Identifiers (URIs).

android.content.pm: implementa la gestión de paquetes. Un gestor de paquetes sabe acerca de los permisos, los paquetes, servicios, proveedores de contenido componentes y aplicaciones instaladas.

android.content.res: proporciona acceso a los recursos, tanto estructurados como no estructurados. Las clases principales son AssetManager (para los recursos no estructurados) y Resources.

android.database: permite implementar una base de datos. La interfaz principal es Cursor.

android.database.sqlite: implementa las interfaces del paquete anterior con SQLite como base de datos física. Las clases de primaria son SQLiteCursor, SQLiteDatabase, SQLiteQuery, SQLiteQueryBuilder y SQLiteStatement.

android.drm: enfocado a la gestión de derechos digitales.

android.gesture: clases e interfaces necesarias para trabajar con gestos definidos por el usuario. Las clases principales son Gesture, GestureLibrary, GestureOverlayView, GestureStore, GestureStroke y GesturePoint.

android.graphics: gestión de gráficos, contiene las clases Bitmap, Canvas, Camera, Color, Matrix, Movie, Paint, Path, Rasterizer, Shader, SweepGradient, y TypeFace entre otras.

android.graphics.drawable: implementa los protocolos de pintado, da soporte a las imágenes de fondo, y permite la animación de los objetos que se pueden dibujar.

android.graphics.drawable.shapes: implementa formas, incluyendo ArcShape, OvalShape, RectShape PathShape, y RoundRectShape.

android.hardware: implementa las parte "física" relacionada con la cámara y otros dispositivos y sensores.

android.hardware.usb: permite comunicación con los dispositivos conectados por USB.

android.location: permite la gestión de direcciones y localizaciones.

android.media: contiene las clase MediaPlayer para reproducir audio y vídeo, MediaRecorder para grabar audio y vídeo, Tone para reproducir fragmentos cortos de sonido, AudioManager responsable de los controles de volumen  y FaceDetector  para detectar las caras de la gente en un mapa de bits .

android.media.audiofx: proporciona efectos de audio.

android.media.effect: proporciona efectos de vídeo.

android.mtp: posibilita la interacción entre las cámaras y los dispositivos de audio.

android.net: implementa sockets a nivel de red. Las clases principales incluyen Uri, ConnectivityManager, LocalSocket y LocalServerSocket. Android soporta HTTPS a nivel del navegador y también a nivel de red, el navegador también es compatible con JavaScript.

android.net.rtp: protocolos de streaming.

android.net.sip: soporte para VOIP.

android.net.wifi: conectividad Wi-Fi. Las clases principales incluyen WifiManager, que es el responsable de gestionar la lista de las redes configuradas y de la red Wi-Fi activa y WifiConfiguration.

android.nfc: para interactuar con dispositivos cercanos y para permitir el "comercio sin contacto".

android.opengl: contiene utilidades para OpenGL ES 1.0 y 2.0.

android.os: representa los servicios del sistema operativo accesibles a través de Java. Algunas clases importantes son BatteryManager, Binder, FileObserver, Handler, Looper y PowerManager. Binder es una clase que permite la comunicación entre procesos. FileObserver vigila cambios en archivos.

android.preference: permite mantener una configuración de preferencias en las aplicaciones. Las clases principales son PreferenceActivity, PreferenceScreen,  CheckBoxPreference y SharedPreferences.

android.provider: conjunto de proveedores de contenido predefinidos (contactos, media stored, explorador y configuración).

android.sax: Simple API para XML (SAX).

android.speech: soporte para la conversión de texto a voz. La clase principal es TextToSpeech.

android.telephony: permite multiples operaciones relacionadas con la telefonía propiamente hablando. 

android.telephony.gsm: permite obtener la ubicación del teléfono y el envío de SMS entre otras cosas.

android.telephony.cdma: soporte para la telefonía CDMA.

android.test, android.test.mock, android.test.suitebuilder: para apoyar a escribir las pruebas unitarias durante el desarrollo de aplicaciones Android.

android.text: clases de procesamiento de texto.

android.utils: librería de utilidades

android.view: clases enfocadas a la interfaz de usuario.

android.webkit: contiene las clases que representan el navegador web.

android.widget: controles de la interfaz de usuario para widgets

com.google.android.maps: necesario para trabajar con Google Maps.

Esta es una pequeña muestra pero puedes ver todos los paquetes con detalle en el listado oficial de paquetes.

Breve historia de Android hasta Ice Cream Sandwich

Los teléfonos móviles utilizan una gran variedad de sistemas operativos como Microsoft Windows Phone, Linux Mobile, Symbian OS, iPhone OS (basado en Mac OS X), Moblin (de Intel), entre otros. No se puede considerar niguno de estos sistemas como un estándar ya que las API's disponibles y los IDE's para el desarrollo de aplicaciones móviles son demasiado restrictivos y parecen quedarse atrás en comparación con los frameworks de escritorio. Sin embargo, la plataforma Android es completamente abierta, el código fuente es Open Source, es decir, es libre y de fácil acceso desde multitud de sitios en Internet. El sitio oficial es http://www.android.com.

Google adquirió la empresa Android Inc. recien formada en 2005 para iniciar el desarrollo de la plataforma Android. Los actores clave en Android Inc. fueron Andy Rubin, Rich Miner, Nick Sears y Chris White.

El 5 de noviembre de 2007 nació la Open Handset Alliance, un consorcio de varias compañías fabricantes de dispositivos móviles. El primer SDK de Android salió en noviembre de 2007. En septiembre de 2008, T-Mobile anunció la disponibilidad de T-Mobile G1, el primer teléfono inteligente que utilizaba Android. Desde entonces, hemos visto los SDK 2.0, 3.0 y 4.0, que han ido saliendo más o menos cada año. Los dispositivos que utilizaban Android fueron pocos pero ahora ocupan una gran cuota de mercado.

Uno de los principales objetivos arquitectónicos era permitir que las aplicaciones pudieran interactuar unas con otras y poder reutilizar componentes. Esta reutilización no sólo se aplica a los servicios, sino también a los datos y la interfaz de usuario (UI).

En las versiones 1.0 y 1.1 (2008) Android no era compatible con los teclados virtuales a los que ahora estamos tan acostumbrados, se corrigió este problema al liberar el SDK 1.5 en abril de 2009, junto con un número de otras características avanzadas.

En septiembre de 2009 salió versión 1.6 del sistema operativo Android y un mes después salió Android 2.0, lo que supuso una avalancha de dispositivos Android en las Navidades de 2009. Esta versión introdujo la capacidad de búsqueda por voz entre otras cosas.

En Android 2.3, se introdujeron muchas mejoras como la capacidad de utilizar la cámara en condiciones de poca luz, la posibilidad de poner el móvil en modo AP Wi-Fi, mejoras significativas de rendimiento, mejora de Bluetooth, la posibilidad de instalar aplicaciones en la tarjeta SD, OpenGL ES 2.0 para gráficos 3D, mejoras en la copia de seguridad, mejoras en la usabilidad de búsqueda, mejoras en la sensibilidad de los sensres, etc.

Android 3.0 se centra en las Tablets, basadas ​​en procesadores de doble y mucho más poderosas que los dispositivos móviles que había en la actualidad. Las principales características de esta versión incluyen soporte para utilizar una pantalla más grande, pantalla de inicio y widgets mejorados y más controles de interfaz de usuario disponibles. También se mejoró el OpenGL con renderScript para complementar aún más ES 2.0. Supuso un gran avance para las tabletas.

Durante la versión 3.0, pensada para tables, la rama 2.x de Android continuó siendo utilizada por teléfonos mientras. La verisión 4.0 Android supone una fusión de estas ramas en una sola consiguiendo dar soporte a tablets y dispositivos móviles. Para los usuarios de teléfonos móviles, la única diferencia es que, en la interfaz de usuario, la experiencia desarrollada para tablets se trajo a las pantallas cada vez mejores de los teléfonos.

ASPECTOS CLAVE PARA EL USUARIO DE ANDROID 4.X

• Se ha añadido la nueva fuente Roboto para proporcionar nitidez en pantallas de alta densidad.
• Se ha añadido una mejor manera de organizar las aplicaciones en carpetas en las páginas de inicio.
• Se ha añadido la capacidad de arrastrar aplicaciones y carpetas a la barra de favoritos que siempre está presente en la parte inferior del dispositivo en Home.
• Se han optimizado las notificaciones según el tipo de dispositivo. Para dispositivos pequeños aparecen en la parte superior y para dispositivos de mayor tamaño aparecen en la barra de sistema.
• Los widgets de tamaño variable, de desplazamiento.
• Se han añadido una variedad de formas de desbloquear la pantalla.
• Se ha mejorado el corrector ortográfico.
• Se ha mejorado la entrada de voz con una opción para hablar continuamente.
• Se ha mejorado la aplicación de Contactos con un perfil personal muy similar a las redes sociales.
• Se han añadido importantes mejoras en la aplicación de la cámara: enfoque continuo, retardo del obturador, detección de rostros, además de un editor de fotos y la posibilidad de introducir algunos efectos tontos y una forma rápida de compartir capturas de pantalla.
• El rendimiento del navegador es dos veces más rápido.
• Ha mejorado la aplicación de correo electrónico.

NOVEDADES PARA LOS DESARROLLADORES:

• Refresco de las animaciones basado en las propiedades de los objetos, incluidos los puntos de vista.
• Soporte para una serie de estándares móviles: Advanced Audio Distribution Profile (A2DP), que otorga la capacidad de utilizar altavoces externos, Real-time Transport Protocol RTP: para flujo de audio / vídeo sobre IP, protocolo de transferencia multimedia (MTP), Picture Transfer Protocol (PTP), para conectar a los ordenadores y descargar las fotos y los multimedia, y Bluetooth Headset Profile (HSP).
• Gestión de derechos digitales (DRM).
• Almacenamiento cifrado y contraseñas.
• API social mejorada.
• Mejora del calendario.
• Correo por voz


Distribución por versiones en la actualidad:

viernes, 6 de julio de 2012

Generadores Magnéticos: energía limpia gratuita

Como decía en la anterior entrada, he tenido mucho tiempo libre y he estado buscando información sobre teorías unificadoras de la física, energías limpias, generadores magnéticos, etc. Voy a hacer aquí una recopilación de los mejores videos de motores magnéticos que hay actualmente en Internet.

Motores tipo Perendev:
Funcionamiento
Esquema magnético detallado
Perendev magnetic motor - SolidWorks model
Rotor experimental casero
Uno algo mejor
Uno mejor, auto alimentado

Basados en los diseños de Howard Johnson:
Quanta Magnet Motor Generator Hybrid_Part 1
Quanta Magnet Motor Generator Hybrid_Part 2

Searl:
John Searl Story - SEG Theory of Operation
Searl Effect Generator - 3D Representation
SEG voltage controlled demonstration

Varios:
Permanent Magnetic Motor from Argentina.
Magnetic Generator To Power Your Home
WORKING MAGNET MOTOR
FREE ENERGY Home Generator
The "Ossie motor" self-running, self-charging in closed loop
Free Energy Demonstration - Delayed Lenz Effect
Free energy motor test 5
Easy to make free energy, perpetual motion machine using monopole magnet.
Electric DIY scooter/bike: silent, clean and cheap.
Free Electricity from Permanent Magnets
Muammer Yildiz - Magnet Motor Demo-3 ( FREE ENERGY )
Generators rather than Magnet Motors may be the way to go
How to Build a Magnetic Motor For Free Energy


Buscaré diseños y gente que los comercialice...