Cómo crear tu primera aplicación para Windows Phone. Un ejemplo de desarrollo utilizando el diseñador de Microsoft App Studio. Creando tu primera aplicación

Antes de comenzar a explorar las capacidades de la plataforma y desarrollar aplicaciones, debemos asegurarnos de tener todas las herramientas necesarias y comprender algunos conceptos básicos de desarrollo.

Herramientas

estudio visual 2010

Para desarrollar para Windows Phone necesitará Visual Studio 2010 con Service Pack 1 edición Professional o superior. Si no tiene Visual Studio 2010, al instalar las herramientas de desarrollo de Windows Phone se instalará automáticamente la versión gratuita de Visual Studio 2010 Express para Windows Phone, que también se puede utilizar para desarrollar aplicaciones para Windows Phone.

Ambas versiones de las herramientas de desarrollo integradas de Visual Studio brindan al desarrollador las mismas capacidades de depuración en el dispositivo y en el emulador que los desarrolladores de aplicaciones de escritorio tienen en Windows.

Tenga en cuenta que para depurar en el dispositivo, además del dispositivo en sí y el cable para conectarse a la computadora, debe tener el software Zune (http://zune.net) instalado en la computadora con las herramientas de desarrollo. Además, antes de implementar la aplicación y depurar, debe registrar el dispositivo (“desbloquearlo”) utilizando la herramienta de registro para desarrolladores de Windows Phone, que se instala con el SDK de Windows Phone.

SDK de Windows Phone

Este paquete, disponible para descargar en el sitio web de App Hub http://create.msdn.com, contiene todo lo que necesita para comenzar a desarrollar. Al momento de escribir este artículo, la última versión del kit de herramientas está disponible en Windows Phone SDK 7.1 Release Candidate bajo la licencia "Go Live", con la capacidad de desarrollar sus propias aplicaciones y publicarlas en Windows Phone Marketplace. Windows Phone SDK 7.1 Release Candidate contiene los siguientes componentes:

  • SDK de Windows Phone 7.1
  • Emulador de Windows Phone
  • Ensamblajes del SDK de Windows Phone 7.1
  • Silverlight 4 SDK y DRT
  • Extensiones del SDK de Windows Phone 7.1 para XNA Game Studio 4.0
  • SDK de mezcla de expresiones para Windows Phone 7
  • SDK de Expression Blend para Windows Phone OS 7.1
  • Cliente de servicios de datos WCF para Windows Phone
  • SDK de publicidad de Microsoft para Windows Phone

Si no tiene instalado Visual Studio 2010 Professional Edition, Expression Bland 4 o XNA Game Studio 4.0, el proceso de instalación también descargará e instalará:

  • Visual Studio 2010 Express para Windows Phone
  • Mezcla de expresiones 4 para Windows Phone
  • Estudio de juegos XNA 4.0

Mezcla de expresiones y Mezcla de expresiones para Windows Phone

Expression Blend es un diseñador visual interactivo para XAML, la tecnología de descripción de interfaz para aplicaciones Silverlight y Windows Presentation Foundation (WPF). Es una excelente herramienta de desarrollo que le permite manipular fácilmente capas, animaciones, estilos y plantillas. Esta es una herramienta básica de desarrollo XAML. Expression Blend en sí no es gratuito, pero los desarrolladores tienen disponible una versión especial para crear diseños de aplicaciones para Windows Phone llamada Expression Blend 4 para Windows Phone de forma gratuita. Se descargará e instalará durante el proceso de instalación del SDK de Windows Phone si no tiene la versión completa de Expression Blend en su computadora. Puede leer más sobre Expression Blend 4 en MSDN:

Estudio de juegos XNA 4.0

Emulador de Windows Phone

Aunque Windows Phone Emulator no contiene el conjunto completo de aplicaciones disponibles en un dispositivo real, proporciona un entorno potente que le permite desarrollar una aplicación casi por completo en el emulador.

El emulador de Windows Phone no admite la reproducción de contenido multimedia de Zune. El emulador sólo viene con una aplicación de Internet Explorer integrada, pero es Internet Explorer 9 con soporte HTML5.

Al mismo tiempo, el emulador te permite probar llamadas y enviar mensajes SMS, admite multitáctil en monitores que lo admitan, admite la simulación de una cámara, servicios de geolocalización y acelerómetro, y también te permitirá tomar capturas de pantalla.

Herramientas adicionales para desarrolladores

Herramienta de registro para desarrolladores de Windows Phone

Perfilador de Windows Phone

Windows Phone Profiler está disponible en el menú Depurar de Visual Studio con el SDK de Windows Phone instalado.

Kit de herramientas Silverlight para Windows Phone– Un conjunto de controles útiles de Silverlight para Windows Phone compatibles con el modo de diseño, del equipo de Silverlight. Todo el código fuente, ejemplos y documentación están disponibles. Actualizado aproximadamente cada tres meses, disponible en http://silverlight.codeplex.com o mediante NuGet.

La versión actual incluye controles como ContextMenu, DatePicker y TimePicker, ToggleSwitch, WrapPanel y GestureHelper.

Entorno de desarrollo

Después de instalar el SDK de Windows Phone, los grupos de proyectos de Silverlight para Windows Phone aparecerán en el cuadro de diálogo Nuevo proyecto en Visual Studio:

y los proyectos para Windows Phone se agregarán al grupo XNA Game Studio 4.0:

Esta serie de artículos se centra en el desarrollo para Windows Phone utilizando Silverlight, por lo que veremos las plantillas disponibles para los desarrolladores de aplicaciones con un poco más de detalle.

Después de la instalación, el desarrollador tiene a su disposición las siguientes plantillas de aplicación Silverlight para Windows Phone:

  • Aplicación para Windows Phone
  • Aplicación de datos de Windows Phone
  • Biblioteca de clases de Windows Phone
  • Aplicación Windows Phone Silverlight y XNA

Antes de pasar directamente a las plantillas de aplicaciones, debo decir algunas palabras sobre Windows Phone y la interfaz de usuario estilo Windows 8.

Interfaz de usuario estilo Windows Phone y Windows 8

Windows Phone no es una plataforma más para dispositivos móviles. Contiene no solo el componente tecnológico, sino también un concepto completamente desarrollado de diseño de interfaz e interacción del usuario llamado UI estilo Windows 8 o estilo UI estilo Windows 8.

Si es diseñador o tiene un diseñador dedicado en su equipo, puede aprovechar al máximo el poder de Expression Blend 4 o Expression Blend para Windows Phone, que viene con el SDK de Windows Phone.

Qué hacer si eres desarrollador y no quieres ocuparte del diseño visual de la aplicación, por ejemplo, estás desarrollando una aplicación empresarial y todo lo que se requiere de ella es cumplir con el diseño y estilo general de Windows Phone. ?

Es muy sencillo. En primer lugar, Silverlight para teléfono está diseñado teniendo en cuenta la interfaz de usuario estilo Windows 8, por lo que todos los controles integrados están diseñados con el estilo de interfaz de usuario estilo Windows 8. En segundo lugar, de forma predeterminada, las aplicaciones creadas a partir de plantillas proporcionadas con el SDK de Windows Phone funcionan, se ven y usan estilos y fuentes de acuerdo con la interfaz de usuario estilo Windows 8.

Por otro lado, las capacidades de estilo que Silverlight proporciona para aplicaciones y controles basados ​​en XAML son suficientes para hacer que su aplicación sea única y reconocible mientras permanece dentro de la interfaz de usuario estilo Windows 8.

La Guía de diseño de interfaz de usuario y experiencia de usuario para Windows Phone se puede encontrar en el siguiente enlace

Todo lo dicho anteriormente se aplica, por supuesto, al diseño de aplicaciones normales, ya que los requisitos para el diseño de aplicaciones de juegos y su interfaz pueden diferir significativamente. Al mismo tiempo, no debemos olvidarnos de los principios generales de interacción del usuario inherentes al concepto de Windows Phone.

Plantillas de aplicación

Primero, veamos tres plantillas que representan los tres estilos principales de una aplicación de Windows Phone:

  • Aplicación para Windows Phone
  • Aplicación pivote de Windows Phone
  • Aplicación panorámica de Windows Phone

La aplicación Windows Phone es análoga a una aplicación conversacional simple que tiene una pantalla principal a través de la cual se produce la interacción principal con el usuario.

La aplicación Windows Phone Pivot es una especie de aplicación de marcadores, donde el título de cada marcador determina el contenido. El caso de uso estándar es que cada marcador representa los mismos datos, pero en vistas diferentes y/o con filtrado diferente. Por ejemplo, calendario, cliente de correo electrónico y configuración del teléfono. La plantilla utiliza un control Pivote.

Aplicación panorámica de Windows Phone: una aplicación panorámica en la que las áreas de interacción del usuario también se dividen en paneles, pero se puede acceder a ellos mediante desplazamiento horizontal; la imagen de fondo se configura para todo el panorama a la vez, tiene un título común que se desplaza más lento que los paneles; el contenido del panel adyacente a la derecha es visible cuando se muestra el actual. Por ejemplo, los centros en Windows Phone se implementan de esta manera: Personas, Marketplace, Imágenes, Música+Videos, etc. La plantilla utiliza el control Panorama.

Las plantillas que terminan en Agente son plantillas de biblioteca para realizar las tareas en segundo plano correspondientes:

  • Agente de reproducción de audio de Windows Phone
  • Agente de transmisión de audio de Windows Phone
  • Agente de tareas programadas de Windows Phone

Plantilla de aplicación de enlace de datos de Windows Phone: una plantilla de aplicación simple con una lista: una vista detallada con la implementación de la navegación entre páginas, pasando parámetros y almacenando datos en un ViewModel global.

Plantilla de biblioteca de clases de Windows Phone: plantilla de biblioteca de clases para Windows Phone.

Plantilla de aplicación Silverlight y XNA de Windows Phone para una aplicación Silverlight que puede usar XNA para representar contenido gráfico.

Tarde o temprano, cualquier persona que se considere un usuario avanzado de uno de los sistemas operativos móviles se plantea la cuestión de crear una aplicación móvil. Para algunos, prevalecerá el simple interés, mientras que otros, que tienen experiencia en programación, quieren probar suerte en la creación de programas para plataformas móviles. Nuestro artículo será útil para ambos usuarios. Intentaremos hablar sobre la “cocina” de la creación de programas: en qué etapas consta el proceso, qué necesitas saber para ello, qué herramientas necesitarás en tu trabajo y mucho más. Como ejemplo de plataforma para crear aplicaciones, tomemos uno de los sistemas operativos con el mercado de software en desarrollo más activo: Windows 8.1.

Punto por punto:

1. 2. 3. 4. 5. 6. 7.

Primera etapa: idea

Creación de cualquier aplicación, ya sea para plataforma móvil o de escritorio. comienza con una idea. En primer lugar, el desarrollador se pregunta: "¿Cómo será útil mi aplicación para el usuario?" Si se trata de un programa, entonces su tarea es ayudar a una persona a realizar algunas acciones cotidianas, justificando el propósito de un teléfono inteligente como un asistente de bolsillo. Si se trata de un juego, entonces, dependiendo del género, suele tener una trama interesante, gráficos coloridos, una jugabilidad emocionante o ambas cosas. Si ya existe un programa o juego similar, debes pensar inmediatamente en qué características funcionales u otros "trucos" la nueva aplicación será diferente de los análogos existentes.

Una vez determinados el propósito y los objetivos de la aplicación, será fácil elegir la plataforma a la que estará destinada. Si se trata de una aplicación de uso frecuente, como una ayuda de navegación, una guía de bolsillo o quizás un juego casual que le ayudará a matar el tiempo en la cola, entonces obviamente vale la pena crear una aplicación para la plataforma móvil. Por otro lado, si hablamos de una aplicación que implica trabajar con grandes cantidades de información y utilizarla solo en determinadas condiciones (por ejemplo, solo en casa o en el trabajo), ya sea una colección de recetas o una suite ofimática ( y en el caso de un juego, si requiere inmersión en la trama o tiene controles complejos), dicha aplicación se utilizará con mayor frecuencia en una tableta, computadora portátil o computadora. En otras palabras, es necesario pensar casos de uso su futura aplicación: en qué casos la ejecutarán los usuarios y en qué dispositivos. Como se indica en el anuncio, en este artículo tomaremos como ejemplo el sistema operativo Windows 8.1, universal para tabletas, ultrabooks, PC todo en uno y ordenadores normales. Además, es importante tener en cuenta que si elige esta plataforma, no será demasiado difícil trasladar la aplicación al sistema operativo Windows Phone debido al uso de las mismas herramientas y capacidades similares de ambos sistemas operativos.

El siguiente paso en esta etapa es identificar el público objetivo aplicaciones. El público objetivo determina en gran medida el diseño de la aplicación y su funcionalidad. Una apariencia brillante y colorida o elementos de menú estrictos, facilidad de uso o muchas configuraciones específicas: la capacidad de determinar de manera inequívoca tales propiedades de una aplicación es precisamente un conocimiento claro de su público objetivo. Está claro que a los niños les gustarán los colores brillantes y los adultos apreciarán la formalidad. El número mínimo de configuraciones hará que el programa sea atractivo para los principiantes en el mundo de la alta tecnología, y la amplia funcionalidad atraerá a los usuarios experimentados.

El último punto de la primera etapa no es obligatorio y se puede posponer hasta el final de la creación real de la aplicación, pero no sería superfluo seleccionar el adecuado desde el principio. esquema de monetización. Actualmente, los cuatro esquemas de este tipo más comunes son:

software gratuito– aplicaciones gratuitas. Dichos programas y juegos son absolutamente gratuitos y no contienen ni implican ganancias directas de ellos. A cambio de una recompensa monetaria, el desarrollador puede, si dicha aplicación es lo suficientemente popular (y los programas y juegos gratuitos se vuelven populares más rápido que otros), dar a conocer su nombre o marca, para ganar audiencia en la próxima edición. Se lanza la solicitud, posiblemente pagada.

software publicitario– aplicaciones con publicidad. En este caso, todo es muy simple: el programa contiene un bloque publicitario, por verlo o hacer clic en él, el desarrollador recibe una recompensa. Las aplicaciones de adware suelen incluir una opción integrada para desactivar la publicidad pagando una tarifa.

Freemium– aplicaciones con contenido pago. Normalmente, las aplicaciones freemium se pueden descargar gratis desde la tienda de aplicaciones, pero contienen contenido adicional pago. Este esquema ha ganado especial popularidad en numerosos juegos, desde juegos casuales hasta proyectos serios. Actualmente, cada vez más usuarios tienen una actitud negativa hacia las aplicaciones freemium debido a la necesidad de constantes inyecciones de efectivo, por lo que antes de utilizar un esquema de este tipo, conviene pensarlo todo detenidamente.

Shareware– programas pagos. Al pagar una vez por una aplicación shareware, el usuario obtiene acceso completo a todas sus funciones para siempre. Para los programas distribuidos según este esquema, suelen estar disponibles versiones de demostración (con capacidades limitadas) y de prueba (con un período de validez limitado).

También vale la pena mencionar el quinto método de monetización, relativamente raro: la suscripción paga. Al comprar una suscripción, el usuario puede utilizar todas las funciones de la aplicación sin compras adicionales, pero solo por un tiempo determinado. Normalmente, este esquema se utiliza en clientes de diversos servicios en línea, por ejemplo, mensajería instantánea, reproductores en la nube o cines.

Segunda etapa: diseño

Cuando hablamos de diseño, nos referiremos principalmente a programas, ya que son ellos, junto con el diseño del sistema operativo, los que crean estilo uniforme Sistema operativo. Gracias a esto, al iniciar programas, el usuario nunca tendrá la sensación de tener algo "extraño" en el dispositivo y, además, gracias a la disposición general de los menús contextuales y las configuraciones, no será difícil encontrar los elementos necesarios para realizar acciones familiares. Por ejemplo, en cualquier programa de la Tienda Windows, se puede abrir el menú deslizando el dedo desde la parte inferior de la pantalla (o haciendo clic derecho en cualquier lugar), y todas las configuraciones se encuentran en el mismo elemento en el "panel milagroso" de la derecha. , que se abre deslizando el dedo desde el lado derecho de la pantalla (esto también se puede hacer moviendo el cursor del mouse a cualquiera de las esquinas derechas de la pantalla). En el caso de los juegos, no es necesario seguir las pautas oficiales del desarrollador del sistema operativo (en este caso Microsoft), por lo que bastará con tener en cuenta las recomendaciones que dimos en la descripción de la primera etapa.

Casi cualquier diseño comienza con un boceto o, como se dice en el entorno profesional, con la creación de un prototipo. La creación de prototipos en el caso del diseño de aplicaciones es rápida bosquejo Ubicación de los elementos principales de la futura aplicación, incluidos menús y métodos de navegación. Las herramientas básicas para crear un prototipo de diseño son una hoja de papel y un lápiz. Este método es adecuado para pensar en el concepto general y esbozar rápidamente las imágenes que le vienen a la mente.

La creación de prototipos también se puede realizar en una computadora utilizando varios programas, desde simples editores gráficos hasta herramientas especializadas. Las ventajas de este último incluyen, por ejemplo, la presencia de una cuadrícula para alinear los elementos de la aplicación y la capacidad de colocar en la pantalla los mismos menús, inscripciones y botones que se utilizan en la interfaz del sistema operativo. Aquí nuevamente el desarrollador se enfrenta a una elección: puede utilizar herramientas de creación rápida de prototipos, que pueden funcionar en línea y no requieren instalación en una computadora, o paquetes profesionales, con la ayuda de los cuales se puede llevar un prototipo desde un estado de boceto a una maqueta interactiva que aparentemente es indistinguible de una aplicación real. Un ejemplo de un servicio en la primera categoría es el NinjaMock gratuito, y en cuanto a la segunda categoría, una de las herramientas de creación de prototipos más populares y con diferente profundidad de desarrollo es Axure. Microsoft también ofrece sus propias herramientas de creación de prototipos: estas son las aplicaciones Project Siena y Expression Blend. Su ventaja es la capacidad de exportar los prototipos realistas resultantes a proyectos de Visual Studio y continuar trabajando en el proyecto en el entorno de desarrollo.

Como regla general, debe elegir la opción correcta en función de la complejidad de la futura aplicación. Si el objetivo es crear una utilidad simple que ayude al usuario a realizar cualquier tarea, entonces un prototipo de boceto será suficiente, pero cuando se trabaja en proyectos grandes y extensos, generalmente se crean prototipos interactivos bastante bien desarrollados.

Icono El mosaico de la aplicación es un elemento de diseño pequeño pero uno de los más importantes al que los usuarios prestarán atención antes de descargar el programa y que luego verán cada vez que lo inicien. Si una aplicación gana popularidad, su icono se volverá reconocible y posteriormente muchos lo asociarán únicamente con un programa específico. Al crear un ícono, generalmente intentan reflejar la funcionalidad de la aplicación (por ejemplo, se pueden ver utensilios de escritura en los íconos de la mayoría de los programas para tomar notas) o crear una nueva marca (ejemplos de programas populares incluyen el navegador Chrome y el cliente de la red social VK). En cualquier caso, de acuerdo con las modernas tendencias de diseño y la identidad corporativa de Windows 8.1, el mosaico/icono de la aplicación debe ser plano, conciso y, lo más importante, comprensible para el usuario medio.

Tercera etapa: desarrollo

Una vez que se ha finalizado la idea y las capacidades de la futura aplicación, y se tiene una idea de su diseño, comienza la etapa de desarrollo e implementación de funciones, es decir, la escritura de código. Esta suele ser la parte más extensa del desarrollo de aplicaciones. Nos centraremos en esta cuestión en la medida necesaria para proporcionar una visión general de qué conocimientos se requieren, dónde se pueden ampliar y qué herramientas se necesitarán.

El desarrollo se puede realizar en varios lenguajes, incluidos C++, C#, Visual Basic, JavaScript, HTML y XAML. Inmediatamente antes de comenzar a desarrollar una aplicación, es necesario estudiar las llamadas al sistema y las capacidades API del sistema operativo. Si ya conoce uno de los lenguajes de programación enumerados, le resultará fácil aplicar sus conocimientos para crear su propia aplicación para la interfaz "en mosaico". En una sección especial del sitio web de Microsoft hay instrucciones detalladas con ejemplos, incluso para C++ y XAML o para JavaScript y HTML. Como IDE (entorno de desarrollo), Microsoft recomienda utilizar Microsoft Visual Studio, en el que los programas se pueden escribir, compilar y depurar en cualquiera de los lenguajes de programación especificados. Además, hay un SDK disponible para descargar en el sitio web oficial de la empresa, que contiene muchos materiales adicionales, incluida documentación, herramientas especializadas que serán útiles para desarrolladores experimentados y ejemplos de códigos fuente de programas útiles para principiantes.

Teniendo los conocimientos y las herramientas necesarios, se puede proceder directamente al proceso de escritura del código, que será responsable tanto del comportamiento externo de varios elementos de la interfaz como del funcionamiento interno de la aplicación. Esto último incluye la interacción con el sistema operativo, recibir datos del sistema (por ejemplo, de los archivos del propietario del dispositivo e Internet) y del usuario, procesarlos y mostrar los resultados del procesamiento en un formato legible. En la mayoría de los casos, las bases de datos SQL se utilizan para almacenar datos (se admite casi cualquier sistema de gestión de bases de datos o DBMS). La información también se puede descargar utilizando servicios externos. Si hablamos de funciones específicas del programa, para escribir una aplicación de alta calidad tendrás que dedicar tiempo a aprender cosas que no están directamente relacionadas con la programación. Por ejemplo, si su programa reproducirá archivos de música, necesitará conocimientos sobre formatos de sonido y, si necesita acceso a Internet, no será superfluo conocer los principios de funcionamiento de la red.

Una vez implementada la funcionalidad principal del programa, incluso si no eres un diseñador profesional, debes trabajar en la animación y personalización de los elementos de la interfaz. Esto es necesario para que la aplicación no parezca un truco tosco y sea atractiva para los usuarios, quienes a menudo prestan atención no sólo a la funcionalidad del programa, sino también al diseño. Finalmente, si decide monetizar su aplicación mediante compras dentro de la aplicación, entonces debe implementarlas utilizando la API especial de Windows 8.1.

Al desarrollar, asegúrese de tener en cuenta la lista de requisitos de Microsoft para las aplicaciones de la Tienda Windows: si no los cumple, su programa será rechazado cuando intente publicarlo en la tienda de aplicaciones.

Etapa cuatro: pruebas

Algunos desarrolladores no le dan mucha importancia a probar aplicaciones y, en algunos casos, antes de publicarlas en la Tienda, ni siquiera las comprueban. funcionamiento correcto programas para dispositivos reales(es decir, dispositivos con pantalla táctil, si el desarrollo se realiza en una computadora sin pantalla táctil). Por supuesto, no debería hacer esto: el principal peligro al desarrollar programas para tabletas y ultrabooks en Windows 8 es que los mismos elementos activos del programa pueden reaccionar de manera diferente al clic del mouse y al toque del dedo.

Para evitar tales malentendidos, es necesario realizar pruebas completas en un dispositivo con pantalla táctil. En esta etapa, puede recurrir a la ayuda de amigos o conocidos: antes de la publicación en la Tienda, durante el proceso de agregar una nueva aplicación, la cuenta de desarrollador tiene una función para enviar una invitación a usuarios individuales a prueba beta. Desafortunadamente, Microsoft no permite pruebas beta públicas.

Quinta etapa: publicación en la Tienda

Una vez que la aplicación esté completamente lista, es hora de publicarla en la tienda. Para esto necesitarás cuenta de desarrollador. Su costo es de 625 rublos para desarrolladores individuales o 3000 rublos para empresas, y el registro para estudiantes y nuevas empresas es completamente gratuito: el código se puede obtener a través de los programas DreamSpark y BizSpark, respectivamente. Durante el proceso de publicación, el desarrollador deberá especificar el nombre de la aplicación, determinar su categoría, restricciones de edad y fijar un precio. Puede encontrar una descripción general de este proceso en el sitio web de Microsoft.

Una vez enviado el programa o juego, dentro de unos cinco días hábiles, los evaluadores lo comprobarán para asegurarse de que cumple con todas las reglas de Microsoft que ya mencionamos durante la etapa de desarrollo. Si no hay problemas y durante el proceso de envío de la solicitud de aprobación usted estuvo de acuerdo con la publicación, su programa o juego será inmediatamente publicado en la tienda aplicaciones y aparecerá en los resultados de búsqueda.

Curiosamente, esta etapa puede llevar bastante tiempo, por lo que una vez más le recordamos la importancia de cumplir con todos los requisitos de Microsoft, que incluyen requisitos para el código y funciones de la aplicación, el cumplimiento de las pautas de diseño, así como completar la aplicación.

Sexta etapa: publicidad y soporte

Si está creando un programa para el público en general, en lugar de un círculo reducido de personas, o un juego, no debe confiar demasiado en el boca a boca. Las aplicaciones en sí mismas rara vez "despegan" y, si desea que la gente conozca su producto, es necesario promover. Puede haber muchas formas: publicaciones en redes sociales o. Se pueden ofrecer “bonificaciones” por la publicidad de la aplicación en las redes sociales por parte de los propios usuarios; este método se utiliza a menudo cuando se promocionan juegos.

Entonces, se enteraron de la aplicación y los usuarios comenzaron a comprarla, pero esto no significa en absoluto que puedas sentarte y contar el dinero que "gotea" en tu cuenta. Cuantos más usuarios tenga una aplicación, más reseñas escribirán y estas

Desde el lanzamiento de la plataforma en 2011 hasta junio de 2013, el coste de una suscripción anual a una cuenta de desarrollador fue de 99 dólares. Microsoft intentó atraer a tantos desarrolladores como fuera posible a su plataforma y redujo la “tarifa” a 19 dólares durante todo el verano de este año. Luego, la empresa extendió la promoción indefinidamente y lanzó el proyecto Windows Phone App Studio con registro gratuito para desarrolladores.

Una cuenta de desarrollador es algo útil. Con él, puede enviar aplicaciones y juegos escritos en Visual Studio o creados en el servicio web Windows Phone App Studio a la tienda de Windows Phone. Incluso si su solicitud no pasa la certificación, es rechazada y no está disponible comercialmente, podrá usarla en su dispositivo y mostrar la "exclusiva" a sus amigos. Además, una cuenta de desarrollo permite a su propietario recibir actualizaciones del sistema operativo antes que los usuarios habituales. Nadie le solicitará ninguna aplicación y su cuenta permanecerá incluso si no la utiliza para el desarrollo.

Windows Phone App Studio es una herramienta basada en web para crear aplicaciones simples o simular proyectos complejos. En los pocos meses transcurridos desde su lanzamiento, se crearon en él más de 150 mil proyectos, de los cuales 65 mil se convirtieron en aplicaciones completas y se instalaron en teléfonos inteligentes.

Para obtener una cuenta de desarrollador gratuita, debe realizar el proceso de registro en Windows Phone App Studio. Vaya a la página de servicio e ingrese el nombre de usuario y la contraseña de su cuenta de Microsoft. Ahora eres oficialmente un desarrollador de aplicaciones para Windows Phone.

App Studio contiene plantillas de diecinueve categorías, puedes elegir cualquiera y crear una aplicación única basada en ella. Para hacer esto, debe seleccionar una localización, agregar una imagen de un mosaico en vivo, una descripción, contenido (fotos, videos, canales RSS), seleccionar una combinación de colores para la interfaz y una imagen de fondo.

La aplicación terminada se puede instalar inmediatamente en su teléfono inteligente; para ello, debe hacer clic en el botón "Generar". Se le enviará un correo electrónico con dos enlaces, primero deberá instalar el certificado y luego su aplicación. Después de la instalación, aparecerá en la lista general, ya podrás usarlo. Posteriormente, la aplicación se puede editar en App Studio y enviarse de nuevo al teléfono.

App Studio también te permite exportar el código fuente de tu aplicación a un proyecto, que puedes abrir y editar en Visual Studio, una herramienta de desarrollo más seria. También existe un problema: cuando decida enviar su aplicación a la tienda de Windows Phone, deberá registrarse para obtener una cuenta de desarrollador paga.

Si va a utilizar su cuenta de desarrollador solo para instalar actualizaciones de Windows Phone antes de su lanzamiento oficial, instale la aplicación Vista previa para desarrolladores en su teléfono inteligente, inicie sesión en su cuenta de desarrollador y acepte los términos. Las actualizaciones no se instalan automáticamente; debe verificar su disponibilidad en la configuración. Si escuchas que alguien comenzó a recibir la actualización, ve a la configuración de tu teléfono y mira si está disponible para ti.

Cuando instala las herramientas para desarrolladores de Windows Phone, recibe las siguientes herramientas y funciones gratuitas.
  • Emulador de Windows Phone
  • software de zune
  • Estudio de juegos XNA 4.0
  • Luz plateada
  • .NET Marco 4
Si ya tiene instalado Visual Studio 2010 (Professional o Ultimate), puede usar su edición de Visual Studio 2010 para el desarrollo después de instalar Windows Phone Developer Tools.
Mezcla de expresiones para Windows Phone
Expression Blend para Windows Phone es un software de diseño que le permite crear y agregar características visuales especiales como degradados, animaciones y transiciones. Para algunas tareas, Expression Blend es más fácil de usar que Visual Studio. La siguiente lista contiene algunas tareas que se pueden realizar fácilmente utilizando Expression Blend.
  • Cree plantillas de datos visualmente
  • Utilice datos de prueba durante el desarrollo para visualizar patrones de datos.
  • Controles de estilo visual
  • Crear y ver animaciones.
La siguiente imagen muestra la apariencia de Expression Blend.

Nota:
Este artículo describe cómo trabajar en Visual Studio 2010 Express para Windows Phone y no utilizará Expression Blend para Windows Phone.

Visual Studio 2010 Express para Windows Phone
Visual Studio 2010 Express para Windows Phone incluye un diseñador de arrastrar y soltar que simula la apariencia de un teléfono, un editor de código y un depurador. Si ha trabajado con Visual Studio para desarrollar otros tipos de aplicaciones, el entorno de desarrollo de aplicaciones móviles le resultará muy familiar. La siguiente imagen muestra la apariencia de Visual Studio 2010 Express para Windows Phone.

El diseñador de Windows Phone incluye una caja de herramientas, una vista de diseño, una vista XAML, un Explorador de soluciones y una ventana de propiedades similar al diseñador estándar de Visual Studio. Las dos diferencias clave son que en el modo de diseño la superficie parece un dispositivo Windows Phone y hay un dispositivo Target que le permite elegir si desea depurar su aplicación en el dispositivo o en un emulador. La siguiente imagen muestra la apariencia del emulador en orientación vertical y horizontal.

Pautas de diseño

Es importante que conozca los principios de diseño de interfaz establecidos si planea publicar su aplicación de Windows Phone en App Hub. Las pautas de diseño describen cómo diseñar la interfaz de usuario para su aplicación.

La siguiente tabla proporciona un resumen de los principios básicos de diseño de interfaces y los requisitos de la aplicación que debe considerar al diseñar y desarrollar su aplicación. Puede encontrar una lista completa y actualizada de pautas de diseño de interfaces en el siguiente enlace.
Guía de interacción y diseño de UI para Windows Phone 7

Categoría Pautas de diseño
Navegación, marcos y páginas
  • Asegúrese de considerar la acción del botón Atrás y la interacción del usuario con la barra de la aplicación al crear un mapa de navegación.
Panel de aplicaciones
  • Utilice la barra de aplicaciones para realizar tareas comunes de aplicaciones.
  • Estás limitado a cuatro botones en la barra de aplicaciones.
  • Coloque acciones realizadas con menos frecuencia en el menú de la barra de aplicaciones.
  • Si una acción es difícil de expresar claramente con un ícono, colóquela en el menú de la barra de una aplicación en lugar de como un botón.
  • Está limitado a cinco opciones en el menú de la barra de aplicaciones para evitar que se desplace.
Botón Atrás
  • Solo debe implementar un comportamiento del botón Atrás que navegue hacia atrás u oculte menús contextuales y cuadros de diálogo. Todas las demás implementaciones están prohibidas.
Orientación de la pantalla
  • La orientación predeterminada es vertical. Para admitir la orientación horizontal, debe agregar código.
  • Si una aplicación admite la orientación horizontal, no puede detectar solo la orientación horizontal izquierda o derecha. Se deben admitir orientaciones horizontales izquierda y derecha.
  • Si la aplicación admite la entrada de texto, debe admitir la orientación horizontal debido a la posibilidad de un teclado de hardware.
Temas
  • Evite usar demasiado blanco en las aplicaciones, como un fondo blanco, ya que esto puede tener un impacto grave en la duración de la batería de los dispositivos OLED.
  • Si el color de primer plano o de fondo de un control se especifica explícitamente, asegúrese de que su contenido sea igualmente visible tanto en máscaras oscuras como claras. Si el color especificado no es visible, establezca también explícitamente el color de fondo o de primer plano para que tenga suficiente contraste, o elija un color más apropiado.
Configuración de la aplicación
  • Las acciones de la aplicación que sobrescriben o eliminan datos, o que no se pueden revertir, deben tener un botón Cancelar.
  • Cuando se utilizan pantallas adicionales con botones de confirmación o cancelación, al presionar estos botones se debe realizar la acción adecuada y devolver al usuario al menú de configuración principal.
Entrada táctil
  • Todas las tareas básicas y generales deben realizarse con un dedo.
  • Los controles táctiles deben responder al tacto inmediatamente. Los controles táctiles que se retrasan o se sienten lentos durante las transiciones tendrán un impacto negativo en la experiencia del usuario.
  • Para operaciones de larga duración y que consumen muchos recursos, los desarrolladores deben proporcionar comentarios para indicar que algo está sucediendo con el contenido de progreso o considerar usar una barra de progreso o, como último recurso, una notificación sin formato. Por ejemplo, puedes mostrar cada vez más contenido a medida que avanza la descarga.
  • Por lo general, se debe utilizar una pulsación larga para mostrar un menú contextual o una página de opciones para un elemento.
Teclado en pantalla
  • Debe configurar la propiedad de capacidad de entrada para un campo de texto u otros elementos editables para determinar el tipo de teclado y habilitar las funciones de impresión adecuadas.
Controles de lienzo y cuadrícula
  • El control Canvas utiliza un diseño basado en píxeles y puede proporcionar un mejor rendimiento que el control Grid para controles incrustados o anidados en aplicaciones con orientación fija.
  • Grid es la mejor opción cuando el marco de la aplicación necesita expandirse, reducirse o rotarse.
Controles panorámicos y de pivote
  • Tanto Panorama como Pivot proporcionan navegación horizontal a través del contenido del dispositivo, lo que permite al usuario moverse y desplazarse según sea necesario.
  • Utilice el control Panorama como punto de partida para una experiencia de usuario más detallada.
  • Utilice Pivot para filtrar grandes cantidades de datos, lo que le permitirá ver varios conjuntos de datos o proporcionar una manera de cambiar entre diferentes vistas de los mismos datos.
  • No utilice Pivot para tareas de navegación como aplicaciones de asistente.
  • El desplazamiento vertical de una lista o cuadrícula en las secciones panorámicas es aceptable siempre que esté dentro de los límites de la sección y no sea paralelo al desplazamiento horizontal.
  • Nunca coloque un Pivot dentro de otro control Pivot.
  • Nunca coloques un Pivot dentro de un control Panorama.
  • La aplicación debe minimizar la cantidad de páginas dinámicas.
  • Pivot solo debe usarse para mostrar elementos o datos de tipos similares.
  • No debe utilizar los botones de la barra de aplicaciones para navegar dentro de un control Pivot. Si Pivot requiere ayudas para la navegación, probablemente no lo esté usando correctamente.
Texto
  • Primero debes usar la fuente Segoe. Utilice fuentes alternativas con precaución.
  • Evite el uso de fuentes de menos de 15 puntos.
  • Cíñete a un estilo de uso de mayúsculas consistente.
  • El nombre de la aplicación en la barra de título debe estar en mayúsculas.
  • Utilice todo en minúsculas para la mayoría del resto del texto de la aplicación, incluidos los títulos de páginas y los títulos de listas. En el panel de la aplicación, cualquier texto se muestra automáticamente en minúsculas.

Recursos adicionales

A continuación se muestran algunos enlaces a recursos adicionales para obtener más información sobre el desarrollo de Windows Phone.
Recurso Descripción
Centro de aplicaciones de Windows Phone Documentación adicional, ejemplos de código y comunidad de desarrollo de Windows Phone.
Documentación de desarrollo de Windows Phone Documentación oficial para el desarrollo de Windows Phone en MSDN.
Documentación de Silverlight Documentación oficial de Silverlight y Silverlight para Windows Phone en MSDN.
Ejemplos de código para Windows Phone Ejemplos de código descargables que complementan la documentación de Windows Phone.
Inicios rápidos de Windows Phone Una colección de artículos breves que demuestran los desafíos y oportunidades del desarrollo para Windows Phone.
Guía para desarrolladores de Windows Phone Una guía para desarrolladores que describe la historia de una empresa ficticia que decidió utilizar Windows Phone 7 como dispositivo cliente para una aplicación en la nube existente.
El blog para desarrolladores de Windows Phone Un blog que contiene información actualizada y anuncios directamente del equipo de Windows Phone.
Desarrollo de Windows Phone 7 para principiantes absolutos Una serie de vídeos para principiantes absolutos que no requieren conocimientos de programación.
Inicio rápido de Windows Phone 7 Una serie de vídeos para desarrolladores nuevos en el desarrollo de Windows Phone utilizando Silverlight o XNA.
Curso de formación de Windows Phone 7 Vídeos y tutoriales prácticos sobre desarrollo para Windows Phone utilizando Silverlight o XNA.
.caja de instrumento Tutoriales y otros recursos para que los diseñadores aprendan a diseñar una aplicación para Windows Phone. Incluye tutoriales sobre Expression Blend.
Blog de Jeff Wilcox Blog sobre Silverlight, Silverlight Toolkit y Silverlight para Windows Phone. Jeff Wilcox es desarrollador de software líder en Microsoft en el equipo de Silverlight.
Blog de Jeff Prosise Un blog sobre diversas áreas de programación .NET, incluidos Silverlight y Windows Phone. Jeff Prosise es un programador experimentado y uno de los fundadores de Wintellect.

Existe la opinión de que en la vida real los teléfonos inteligentes con sistema operativo Microsoft se encuentran con tanta frecuencia como personas con el patronímico "Artemovich". La extraña (por decirlo suavemente) política de la "Evil Corporation" con respecto a las familias séptima y octava del sistema operativo móvil disuadió a muchos usuarios de experimentar con "Windows" para teléfonos inteligentes, y ahora la corporación ha asumido seriamente la tarea de corrigiendo su imagen en este nicho de usuarios. Como fanático clandestino de Microsoft, espero que todo les salga bien: el "diez" camina por todo el planeta, su principal baza es un núcleo para todas las plataformas y, por lo tanto, tiene todas las posibilidades de conquistar una buena parte de el mercado móvil. Y como programador, estaré encantado de prepararte un artículo introductorio sobre el desarrollo de este eje móvil, para que siempre estés preparado para el crecimiento de su popularidad :).

Descripción general de la arquitectura

Gracias al núcleo común y al sistema de ejecución de aplicaciones para UWP, una vez escrita, una aplicación se ejecutará en todos los dispositivos que ejecutan Windows 10. Esta gama incluye:

  • computadoras de escritorio;
  • sistemas de servidor - SO Windows Server 2016;
  • ordenadores portátiles: MS Surface Book;
  • tabletas - MS Surface Pro;
  • teléfonos inteligentes - Lumia;
  • consolas de juegos: Xbox One;
  • gafas de realidad aumentada - MS HoloLens;
  • tabletas de pared: MS Surface Hub;
  • reloj inteligente - MS Band 2.

La lista es impresionante. Además, UWP no se limita a la ejecución de programas de aplicación, también admite el funcionamiento de controladores a nivel del kernel; Esto le permite crear controladores que funcionen en diferentes dispositivos, siempre que el componente específico para el que está destinado el controlador sea el mismo.

UWP admite controladores tanto a nivel de kernel como a nivel de usuario. El subsistema incluye interfaces de controlador de dispositivo (DDI), que puede utilizar el controlador para UWP.

Pero todo esto no exime al desarrollador de ajustar la interfaz a determinadas plataformas y resoluciones de pantalla. En algunos casos especiales, esto puede no ser necesario.

Herramientas para desarrolladores

Para escribir, depurar, implementar y probar aplicaciones para Windows 10 Mobile, necesitará Visual Studio 2015 (quién lo dudaría). Este verano se lanzó la tercera actualización. ¡Lo recomiendo encarecidamente! Su principal corrección de errores es la reducción del consumo de memoria en comparación con la segunda actualización.

También necesitarás SDK de actualización de aniversario de Windows 10: incluye todas las herramientas necesarias para desarrollar aplicaciones para toda la flota de dispositivos que ejecutan Windows 10. Si está utilizando VS 2015 con la tercera actualización, entonces ya incluye el SDK más reciente.

Una de las principales innovaciones es Windows Ink. Con esta API, puede agregar compatibilidad con lápiz en dos líneas de código. Hay dos objetos de control para esto: InkCanvas e InkToolbar.

La nueva API de Cortana facilita la implementación del control por voz. El componente Cortana Actions en la nueva API le permite crear nuevas frases/expresiones.

La autenticación biométrica de Windows Hello ahora está disponible para los desarrolladores web en el navegador Edge.

La herramienta de modelado de interfaz de usuario Blend para Visual Studio 2015 proporciona capacidades de diseño de interfaz de usuario mejoradas en comparación con VS. Con su ayuda, puede crear diseños en XAML para todas las aplicaciones compatibles: aplicaciones, web, universales, móviles, etc. También contiene constructores para tareas adicionales, incluida la creación de animaciones y el control del comportamiento de los elementos.

Formas de crear aplicaciones para Windows 10 Mobile

La principal forma de crear aplicaciones para teléfonos inteligentes con Windows 10 Mobile es desarrollar Aplicaciones universales (UWP)(Desplácese por Visual C# → Windows → Asistentes universales para nuevos proyectos).

Sin embargo, él no es el único. Como sabes, Xamarin está integrado en Visual Studio 2015, con su ayuda también puedes crear aplicaciones para Windows 10 Mobile, simultáneamente para Android e iOS, cambiando la interfaz y dejando la lógica del programa en C# (Visual C# → Cross-Platform).

Además del lenguaje Visual C#, se puede seleccionar igualmente Visual Basic o Visual C++. VS 2015 le permite crear aplicaciones universales usando JavaScript (JavaScript → Windows → Aplicaciones universales). También se pueden implementar en un dispositivo con Windows 10 Mobile.

Herramientas para trabajar con proyectos heredados

A lo largo de la larga historia del sistema operativo Windows, se ha creado una enorme cantidad de aplicaciones diferentes. Con el lanzamiento de Windows 8 y WinRT (y más tarde Windows 10 y UWP), las aplicaciones clásicas antiguas son cosa del pasado, ya que solo Win 8 y Win 10 de escritorio admiten aplicaciones clásicas Win32, COM y .NET. Esto entristeció a Microsoft. Pero los chicos se dieron cuenta de que podían desarrollar un convertidor que convertiría aplicaciones antiguas al nuevo subsistema avanzado UWP. De esto nació Convertidor de aplicaciones de escritorio.

La conversión de un proyecto Xcode se realiza en dos pasos. Primero debe agregar resaltado de sintaxis para el lenguaje Objective-C en Visual Studio: instale la extensión objc-syntax-highlighting.vsix desde la carpeta winobjc\bin. Luego, utilizando la utilidad de línea de comandos vsimporter.exe, debe convertir el proyecto Xcode en un proyecto VS. Después de esto, el archivo sln resultante se puede abrir en el estudio, donde se resaltará la sintaxis de Objective-C. Puede crear y ejecutar la aplicación; se ejecutará como todos los demás programas de Windows.

¡Maldita sea, qué sorprendente es ver el código Objective-C correctamente resaltado en Visual Studio!

Se utiliza un compilador gratuito para compilar código Obj-C Sonido metálico. Dado que el resultado es una aplicación UWP estándar, se puede ejecutar en un dispositivo móvil en Windows 10 Mobile. Un programa puede contener código en C++ y Obj-C.

Si tiene un proyecto para una versión anterior de Windows Phone, es decir, 8.1 (u 8.0), cuando lo abra en VS 2015, el estudio actualizará automáticamente el proyecto para que cumpla con los requisitos de la aplicación universal de Windows ( UWP). No solo se convertirá el marcado de la interfaz de usuario en XAML, sino también la lógica del programa en JS/C++/C#/VB junto con él. Si hubo llamadas al subsistema WinRT en el código, se convertirán en llamadas UWP.

Existe otro tipo común de aplicación: los juegos. iOS y Android renderizan utilizando una interfaz OpenGL de bajo nivel. Por otro lado, en Windows 10 Mobile se utiliza DirectX 11 para mostrar imágenes en los juegos, lo que genera incompatibilidad. Pero hay una solución: el proyecto de código abierto ANGLE. ANGLE (Motor de capa de gráficos casi nativo), un motor de capa de gráficos casi nativo, permite a los usuarios de Windows ejecutar sin problemas aplicaciones OpenGL ES en hardware que ejecuta DirectX 11. Esto se logra convirtiendo llamadas de la API de OpenGL ES a la API de DirectX 11. ANGLE es totalmente compatible con los siguientes tres tipos de aplicaciones:

  • aplicaciones universales para Windows 10 (aplicaciones universales de Windows);
  • aplicaciones para Windows 8.1 y Windows Phone 8.1;
  • Aplicaciones clásicas de escritorio de Windows.

El tema se analiza con más detalle en mi libro "La magia del torque" (¡nuevamente, estás promocionando tu libro! Bueno, está bien, te lo mereces. - Ed.).

La continuación está disponible sólo para suscriptores.

Opción 1. Suscríbase a Hacker para leer todos los materiales del sitio

La suscripción le permitirá leer TODOS los materiales pagos en el sitio dentro del período especificado.




Desplazarse hacia arriba