domingo, 26 de marzo de 2017

ANDROID MANIFEST

Situado en la raíz de nuestras aplicaciones como AndroidManifest.xml, es un archivo de configuración donde podemos aplicar las configuraciones básicas de nuestra app. Su configuración puede realizarse a través de una interfaz gráfica, pero es recomendable conocer la sintaxis ya que en muchas ocasiones será más fácil y rápido hacerlo desde el propio xml. El android manifest esta situado en la raíz de cada aplicación, en el siguiente enlace puedes conocer mejor la estructura de las aplicaciones android.

Todas las aplicaciones deben tener un archivo AndroidManifest.xml (con ese nombre exacto) en el directorio raíz. El archivo de manifiesto proporciona información esencial sobre tu aplicación al sistema Android, información que el sistema debe tener para poder ejecutar el código de la app.
Resultado de imagen para android manifest
Entre otras cosas, el archivo de manifiesto hace lo siguiente:

  • Nombra el paquete de Java para la aplicación. El nombre del paquete sirve como un identificador único para la aplicación.
  • Describe los componentes de la aplicación, como las actividades, los servicios, los receptores de mensajes y los proveedores de contenido que la integran. También nombra las clases que implementa cada uno de los componentes y publica sus capacidades, como los mensajes Intent con los que pueden funcionar. Estas declaraciones notifican al sistema Android los componentes y las condiciones para el lanzamiento.
  • Determina los procesos que alojan a los componentes de la aplicación.
  • Declara los permisos debe tener la aplicación para acceder a las partes protegidas de una API e interactuar con otras aplicaciones. También declara los permisos que otros deben tener para interactuar con los componentes de la aplicación.
  • Enumera las clases Instrumentation que proporcionan un perfil y otra información mientras la aplicación se ejecuta. Estas declaraciones están en el manifiesto solo mientras la aplicación se desarrolla y se quitan antes de la publicación de esta.
  • Declara el nivel mínimo de Android API que requiere la aplicación.
  • Enumera las bibliotecas con las que debe estar vinculada la aplicación.


POR QUE LOS NOMBRES DE POSTRES EN LAS VERSIONES DE ANDROID

Todas las empresas tienen nombres código para sus desarrollos, ya sean de hardware o software. Microsoft nombraba a las versiones beta de Windows por ciudades, por ejemplo Windows 95 era “Chicago”. Apple durante muchos años seleccionaba felinos para dar nombre a sus sistemas OS X (Pantera, Leopardo, Leopardo de las nieves, Tigre, etc).

Google sin embargo escogió los dulces. Durante muchos años el buscador no dio un significado a por qué los Android se llaman así, quedando en el misterio este dato, pero recientemente la compañía publicó en su sitio oficial el significado de sus azucarados desarrollos:
Resultado de imagen para POSTRES DE ANDROID

“Android es el sistema operativo que da vida a más de mil millones de smartphones y tablets. Como estos dispositivos hacen nuestras vidas tan dulces cada versión de Android es nombrada por un postre.”

VERSIONES DE ANDROID

URI Y URL

Resultado de imagen para uri y url
Definiciones de cada elemento:

URL: Uniform Resource Locator, o Localizador Uniforme de Recursos. Son unas cadenas de texto que se usan para nombrar recursos en Internet para su localización.
Ejemplo: http://es.wikipedia.org:80/wiki/Special:Search?search=tren&go=Go

URN: Uniform Resource Name, o Nombre Uniforme de Recursos. Son unas cadenas de texto que se usan para nombrar recursos en Internet para su identificación.
Ejemplo: urn:isbn:0451450523

URI: Uniform Resource Identifier, o Identificador Uniforme de Recursos.



¿Qué es un URL?

Los URLs (Uniform Resource Locator) son identificadores que permiten acceder a recursos (páginas) web. En la misma forma en que los humanos utilizamos direcciones para identificar y encontrar ubicaciones, los URLs le sirven al navegador (y otros sistemas) para encontrar una página o recurso Web en el vasto mundo del Internet.

¿Cuál es la diferencia entre URL y URI?

Aunque se acostumbra llamar URLs a todas las direcciones Web, URI es un identificador más completo y por eso es recomendado su uso en lugar de la expresión URL.

Un URI (Uniform Resource Identifier) se diferencia de un URL en que permite incluir en la dirección una subdirección, determinada por el “fragmento”. Esto se comprende mejor analizando la estructura de un URI.

OPEN HANDSET ALLIANCE

La Open Handset Alliance (OHA) es una alianza comercial de 84 compañías que se dedica a desarrollar estándares abiertos para dispositivos móviles. Algunos de sus miembros son Google, HTC, Dell, Intel, Motorola, Qualcomm, Texas Instruments, Samsung, LG, T-Mobile, Nvidia y Wind River Systems.La OHA se fundó el 5 de noviembre de 2007, liderada por Google con otros 34 miembros entre los que se incluían fabricantes de dispositivos móviles, desarrolladores de aplicaciones, algunos operadores de comunicaciones y fabricantes de chips.


Miembros de la Open Handset Alliance

Los miembros de la OHA son empresas líder en tecnología software y hardware móvil, también empresas prestadoras de servicio de telefonía móvil, además de empresas de comercialización.
Resultado de imagen para open handset alliance
Operadores Móviles
Bouygues Telecom www.bouyguestelecom.fr. Francia.
China Mobile Communications Corporation www.chinamobile.com
China Telecommunications Corporation en.chinatelecom.com.cn
China United Network Communications www.chinaunicom.com
KDDI CORPORATION www.kddi.com. Japón.
NTT DOCOMO, INC. www.nttdocomo.com
SOFTBANK MOBILE Corp. mb.softbank.jp/mb/en. Japón.
Sprint Nextel www2.sprint.com/mr/aboutsprint.do
T-Mobile www.t-mobile.net
Telecom Italia www.telecomitalia.it
Telefónica www.telefonica.es
Vodafone www.vodafone.com
Fabricantes de Teléfonos Celulares
Acer Inc. www.acer-group.com
Alcatel mobile phones www.alcatel-mobilephones.com
ASUSTeK Computer Inc. www.asus.com
CCI www.compalcomm.com
Dell www.dell.com
Foxconn International Holdings Limited www.fih-foxconn.com
Garmin International, Inc. www.garmin.com
Haier Telecom (Qingdao) Co., Ltd. mobile.haier.com
HTC Corporation www.htc.com
Huawei Technologies www.huawei.com
Kyocera www.kyocera.com
Lenovo Mobile Communication Technology Ltd.
www.lenovomobile.com
LG Electronics, Inc. www.lge.com
Motorola, Inc. www.motorola.com
NEC Corporation www.nec.com
Samsung Electronics www.samsung.com
Sharp Corporation sharp-world.com
Sony Ericsson www.sonyericsson.com
Toshiba Corporation www.toshiba.com
ZTE Corporation www.zte.com.cn
Fabricantes de Semi-conductores
AKM Semiconductor Inc www.akm.com
Audience www.audience.com
ARM www.arm.com
Atheros Communications www.atheros.com
Broadcom Corporation www.broadcom.com
CSR Plc. www.csr.com
Cypress Semiconductor Corporation www.cypress.com
Freescale Semiconductor www.freescale.com
Gemalto www.gemalto.com
Intel Corporation www.intel.com/products/mid
Marvell Semiconductor, Inc. www.marvell.com
MediaTek, Inc. www.mediatek.com
MIPS Technologies, Inc. www.mips.com
NVIDIA Corporation www.nvidia.com/page/handheld
Qualcomm Inc. www.qualcomm.com
Renesas Electronics Corporation www.renesas.com
ST-Ericsson www.stericsson.com
Synaptics, Inc. www.synaptics.com
Texas Instruments Incorporated www.ti.com/wirelessresources
Via Telecom www.via-telecom.com

Empresas de Software
ACCESS CO., LTD. www.access-company.com
Ascender Corp. www.ascendercorp.com/oha.html
Cooliris, Inc. www.cooliris.com
eBay Inc. www.ebay.com
Google Inc. www.google.com
LivingImage LTD. www.livingimage.jp
Myriad www.myriadgroup.com
MOTOYA Co., Ltd. www.motoya.com
Nuance Communications, Inc. www.nuance.com
NXP Software www.software.nxp.com
OMRON SOFTWARE Co, Ltd. www.omronsoft.co.jp
PacketVideo (PV) www.pv.com
SkyPop www.skypop.com
SONiVOX www.sonivoxrocks.com
SVOX www.svox.com
VisualOn Inc. www.visualon.com

Empresas de Comercializacion.
Aplix Corporation www.aplixcorp.com
Borqs www.borqs.com
L&T Infotech www.lntinfotech.com
Noser Engineering Inc. www.noser.com/oha
Sasken Communication Technologies Limited www.sasken.com
SQLStar International Inc. www.sqlstar.com
TAT - The Astonishing Tribe AB www.tat.se
Teleca AB www.teleca.com
Wind River www.windriver.com/oha
Wipro Technologies www.wipro.com/services/pes
3 And

ECLIPSE



Eclipse es una plataforma de software compuesto por un conjunto de herramientas de programación de código abierto multiplataforma para desarrollar lo que el proyecto llama "Aplicaciones de Cliente Enriquecido", opuesto a las aplicaciones "Cliente-liviano" basadas en navegadores. Esta plataforma, típicamente ha sido usada para desarrollar entornos de desarrollo integrados (del inglés IDE), como el IDE de Java llamado Java Development Toolkit (JDT) y el compilador (ECJ) que se entrega como parte de Eclipse (y que son usados también para desarrollar el mismo Eclipse). Sin embargo, también se puede usar para otros tipos de aplicaciones cliente, como BitTorrent o Azureus.
Resultado de imagen para eclipse software logo

Eclipse es también una comunidad de usuarios, extendiendo constantemente las áreas de aplicación cubiertas. Un ejemplo es el recientemente creado Eclipse Modeling Project, cubriendo casi todas las áreas de Model Driven Engineering.

Eclipse fue liberado originalmente bajo la Common Public License, pero después fue re-licenciado bajo la Eclipse Public License. La Free Software Foundation ha dicho que ambas licencias son licencias de software libre, pero son incompatibles con Licencia pública general de GNU (GNU GPL).
Eclipse fue desarrollado originalmente por IBM como el sucesor de su familia de herramientas para VisualAge. Eclipse es ahora desarrollado por la Fundación Eclipse, una organización independiente sin ánimo de lucro que fomenta una comunidad de código abierto y un conjunto de productos complementarios, capacidades y servicios.

miércoles, 22 de marzo de 2017

SANDBOX

Es un mecanismo para ejecutar programas con seguridad y de manera separada. A menudo se utiliza para ejecutar código nuevo, o software de dudosa confiabilidad proveniente de terceros.

Ese aislamiento permite controlar de cerca los recursos proporcionados a los programas "cliente" a ejecutarse, tales como espacio temporal en discos y memoria. Habitualmente se restringen las capacidades de acceso a redes, la habilidad de inspeccionar la máquina anfitrión y dispositivos de entrada entre otros. En este sentido, el aislamiento de procesos es un ejemplo específico de virtualización.