Descripción paso a paso de cómo crear una aplicación sencilla para Samsung Bada. Samsung Apps para OS Bada - impresiones de un usuario malvado Descargar aplicaciones para Samsung bada
Ya hay artículos bastante detallados sobre Habré dedicados a Bada, por ejemplo este y este, pero no hay una descripción paso a paso de cómo crear una aplicación para principiantes. Si alguien está interesado, consulte cat.
El tema de la escritura surgió por casualidad: un conocido participa activamente en el establecimiento de límites de terrenos mediante GPS en una empresa geodésica; Los detalles del trabajo (de dónde vino es una buena pregunta) es que las coordenadas geodésicas resultantes (permítanme explicarles que esto significa latitud y longitud) deben convertirse a coordenadas rectangulares inmediatamente después de recibirlas. La compañía no tiene computadoras portátiles capaces de soportar una jornada laboral de 8 horas y no planea hacerlo, pero un conocido se compró recientemente un teléfono inteligente Samsung con el sistema operativo Bada, que se promueve activamente en Ucrania, y luego surgió la pregunta. seguido: si puedes descargar juegos para tu teléfono, ¿existe alguna aplicación que pueda resolver el problema puramente de ingeniería descrito? Por supuesto, no se encontró ninguna solicitud de este tipo y recibí una amable oferta para escribir una por una determinada tarifa.
Herramientas
Para desarrollar aplicaciones para Bada se utiliza Bada SDK 1.2.0, que se puede descargar registrándose en el sitio web para desarrolladores de Bada. No hay nada complicado en este proceso, pero en la etapa de selección de archivos para descargar, francamente, "perdí", descargando solo el SDK, pero no el llamado paquete de idioma, con la esperanza de que, como está escrito en el sitio, La descarga se realizará automáticamente después de instalar el SDK. Sin embargo, algo salió mal durante la fase de instalación; la instalación continuó sin descargar el paquete de idioma, lo que posteriormente provocó la imposibilidad de compilar o, incluso, iniciar la aplicación.Una vez descargados el SDK y el paquete de idioma, deben colocarse en un solo lugar y, al instalar el SDK o al modificarlo, el instalador seleccionará el paquete de idioma y lo instalará de forma independiente.
La creación real de la aplicación.
El entorno de desarrollo está basado en Eclipse, el lenguaje de programación C++ utilizado. Comencemos por crear una nueva aplicación con el comando obvio Archivo -> Nuevo -> Proyecto de aplicación bada. En la ventana que aparece, debe especificar el nombre del proyecto en el campo Nombre del proyecto y seleccionar el tipo de aplicación en la lista Tipo de proyecto: aplicación basada en formulario bada.
A continuación, el entorno le pedirá que determine los parámetros técnicos del dispositivo al que estará destinada la aplicación (resolución de pantalla, disponibilidad de GPS, etc.). Estos parámetros se definen en un archivo de manifiesto especial, Manifest.xml, que puede seleccionar entre los archivos SDK, crear y descargar desde el sitio web de Bada Developers, o crear el suyo propio. Sin más preámbulos, utilicé el archivo de manifiesto de las carpetas de Muestras que se instalan con el SDK, ya que mi aplicación no requería ninguna extravagancia, pero lo único importante era la resolución de la pantalla.
A continuación, el entorno le pedirá que especifique el directorio raíz del SDK; no debería haber problemas con esto; Después de la selección, aparecerá en la lista el nombre del modelo del dispositivo y su API, que se utilizará en el futuro para la programación.
El siguiente paso es definir el nombre del formulario predeterminado que aparecerá inmediatamente después de iniciar la aplicación. Los archivos *.h y *.cpp se generarán con este nombre.
A continuación, deberá determinar si desea agregar o no soporte de escalado automático y la mejor resolución de pantalla si se agrega esta función. Según tengo entendido, es mejor hacer esto, ya que la aplicación podrá funcionar en diferentes dispositivos con diferentes resoluciones y no será necesario rediseñarla.
El siguiente eslabón de la larga cadena de configuraciones es determinar el ID de la aplicación, para certificar las funciones de la aplicación si necesita leer y escribir en carpetas protegidas. No necesitaba esto, así que omití este paso.
Casi terminado: definir las propiedades obvias de la aplicación Nombre, Proveedor y Descripción.
Y ahora casi ha terminado: esto es determinar las configuraciones necesarias para el desarrollo: recomiendo dejar todo de forma predeterminada, pero ahora la configuración más importante es Simulator-Debug: esta es la capacidad de depurar código en un simulador de dispositivo, Target-Release. una configuración para compilar la aplicación antes de cargarla en un dispositivo real.
El último paso es un resumen de todas las configuraciones en la ventana Resumen, que puede leer nuevamente y asegurarse de que todo esté seleccionado correctamente.
Después de completar la configuración, la aplicación futura aparece en el Explorador de proyectos, al hacer clic en ella se expanden los archivos de recursos en la ventana Recursos y aparece la siguiente ventana:
Después de hacer clic en el formulario (y en general en cualquier control) en la pestaña Propiedades, puede cambiar las propiedades obvias de la aplicación, como el texto en el título, el color de fondo, la presencia y el nombre de las teclas programables.
Inmediatamente moví el botón listo para usar, que el entorno generó amablemente, bajé y escribí Calcular en él. Teniendo el editor GUI, es fácil obtener la siguiente interfaz, que se adapta bien a mi tarea (creo que el proceso de transferir controles al formulario y configurar sus propiedades no causa ninguna dificultad); la etiqueta obvia se usó como etiquetas para los campos de entrada y EditField se usó como campos de entrada; Las etiquetas también se utilizan para mostrar el resultado de los cálculos, ya que no se pueden editar:
Ahora para la codificación real.
Una aplicación en ejecución pasa por varias etapas (la ayuda es muy detallada, puede encontrar los detalles allí), ahora nos interesa principalmente la etapa de inicialización de la aplicación, de la cual es responsable el método OnInitializing(void) de la clase de formulario, que puede se encuentra en el archivo<ВАША_ФОРМА>.cpp en la carpeta src del proyecto.
Por defecto, este método se ve así:
Resultado Form1::OnInitializing(void) ( result r = E_SUCCESS; // TODO: Agregue su código de inicialización aquí // Obtenga un botón a través del ID de recurso __pButtonOk = static_cast
Lo hice así:
protegido: constante estática int ID_BUTTON_OK = 101; // nuevo ID de acción para el botón CLEAR static const int ID_BUTTON_CLEAR=102; // constantes geodésicas static const int a=6378137; estática constante flotante alfa=1/298.257223563; Osp::Ui::Controles::Botón *__pButtonOk; // nuevo campo: botón Osp::Ui::Controls::Button *__pButtonClear; // nuevos campos: ediciones y etiquetas Osp::Ui::Controls::EditField *__pB_deg; Osp::Ui::Controles::EditField *__pB_min; Osp::Ui::Controles::EditField *__pB_sec; Osp::Ui::Controles::EditField *__pL_deg; Osp::Ui::Controles::EditField *__pL_min; Osp::Ui::Controles::EditField *__pL_sec; Osp::Ui::Controles::EditField *__pH; Osp::Ui::Controles::Etiqueta *__pX; Osp::Ui::Controles::Etiqueta *__pY;
Ahora, en el método OnInitializing(void), puede crear un botón Borrar y asignarle una acción de identificación y un detector de eventos "escucha". Haremos lo mismo con EditField y Label, sin agregarles, sin embargo, Id Action y Event Listener ya que su reacción a las acciones del usuario no se proporciona en nuestra aplicación simple (IDC_BUTTON1, IDC_EDITFIELD1, etc. son los valores del Nombre propiedad del botón).
PButtonOk = transmisión_estática
En esta etapa, ya puede iniciar la aplicación y ver cómo se ingresan los datos en el simulador, pero, por supuesto, no hay ningún beneficio hasta que se procesen los eventos de clic en el botón.
Para resolver este problema, se utiliza el método de clase de formulario OnActionPerformed(const Osp::Ui::Control& source, int actionId). Como puede ver, el segundo parámetro es el ID de acción ya mencionado anteriormente. Cuando se ejecuta la aplicación, los eventos de clic en el botón se "escuchan" y el ID de acción asignado a ellos se pasa a OnActionPerformed(const Osp::Ui::Control& source, int actionId). Si aquí se proporciona procesamiento para dicho identificador, se realiza.
OnActionPerformed tiene una plantilla de cambio para analizar el parámetro actionId, que es conveniente de usar. A continuación, me permitiré dar el código de este método con comentarios detallados:
Void Form1::OnActionPerformed(const Osp::Ui::Control& source, int actionId) ( const int MAX_BUFF_SIZE = 512; switch(actionId) ( case ID_BUTTON_OK: // reacción al presionar el botón Calcular ( // obtener una representación de cadena de grados, minutos y segundos de latitud y... String B_deg_str(__pB_deg->GetText()); String B_min_str(__pB_min->GetText()); String L_deg_str(__pL_deg) ->GetText()); String L_min_str(__pL_min->GetText()); String L_sec_str(__pL_sec->GetText()); // ... altura String H_str(__pH->GetText()); ,B_sec; double L_deg,L_min,L_sec; // convertir representaciones de cadena de números a forma real para cálculos resultado r1=Double::Parse(B_deg_str,B_deg); ); resultado r3=Doble::Parse(B_sec_str,B_sec); resultado r4=Doble::Parse(L_deg_str,L_deg); resultado r5=Doble::Parse(L_min_str,L_min); ,L_sec); ); resultado r7=Doble::Analizar(H_str,H); // cálculos dobles b_in_decimal=B_deg+B_min/60+B_sec/3600; doble l_in_decimal=L_grados+L_min/60+L_seg/3600; doble eSqr=2*alfa-(alfa*alfa); double N=a/Math::Sqrt(1-eSqr*(Math::Sin(b_in_decimal))*(Math::Sin(b_in_decimal))); double X=(N+H)*Math::Cos(b_in_decimal)*Math::Cos(l_in_decimal); double Y=(N+H)*Math::Cos(b_in_decimal)*Math::Sin(l_in_decimal); Cadena strX; Cadena de cadenaY; // convertir valores de coordenadas numéricas en representación de cadena strX.Format(MAX_BUFF_SIZE,L"%f",X); strY.Format(MAX_BUFF_SIZE,L"%f",Y); // envía los números recibidos a la etiqueta __pX->SetText(L"X="+strX);__pY->SetText(L"Y="+strY); __pX->Dibujar();__pY->Dibujar(); __pX->Mostrar();__pY->Mostrar(); ) romper; case ID_BUTTON_CLEAR: ( // reacción al presionar el botón Borrar // crea un cuadro de diálogo con los botones Aceptar y CANCELAR y la pregunta - ¿borrar todos los campos? MessageBox *pMessageBox = new MessageBox(); pMessageBox->Construct(L"MessageBox" , L"¿Borrar todos los campos?", MSGBOX_STYLE_OKCANCEL, 9000); int ModalResult; pMessageBox->ShowAndWait(ModalResult); // si la respuesta es positiva, entonces... if (ModalResult==MSGBOX_RESULT_OK) ( // ... borre los campos de entrada y la etiqueta __pB_deg->Clear(); __pB_sec->Clear(); __pL_min->Clear() ->SetText(L"X=");__pY->SetText(L"Y="); // eliminar cuadro de mensaje eliminar pMessageBox) break; predeterminado: romper; ) )
La apariencia del simulador con el programa en ejecución se ve así:
Lo mismo con el cuadro de mensaje:
Eso parece ser todo. Me gustaría señalar que la aplicación no pretende en absoluto ser amplia y correcta en todas las formulaciones, por ejemplo, no hay ninguna "protección de tontos", ya que espero la cordura de mi amigo y sus cuatro colegas; este programa está pensado.
Recientemente, se recibió otra solicitud de desarrollo para Bada: es necesario buscar y mostrar en el mapa objetos cercanos, como cajeros automáticos o terminales de recarga de cuentas. Si este tema es interesante para alguien, estaré encantado de compartir mi experiencia.
Si alguien tiene alguna pregunta sobre qué hacer a continuación con el programa, esto se trata en detalle en los artículos del sitio web de Bada Developer, no tocaré esto, ya que la programación es aún un tema más complejo;
Las fuentes de la aplicación están disponibles
En general, ciertamente no soy partidario de tales cosas. Creo que los desarrolladores deberían recibir dinero por su trabajo. Sin embargo, estoy convencido de que una persona adulta y solvente comprará un juego o programa si le gusta. Desafortunadamente, no todo se puede probar sin comprarlo y, por lo tanto, desde esta perspectiva, instalar software pago para su evaluación parece bastante aceptable. En cualquier caso, hay una manera y funciona. Además, considerando que el destino futuro de los propietarios de badafones es generalmente incomprensible, no creo que sea vergonzoso finalmente aprovechar los acontecimientos.
Así que, como siempre, os lo advierto: el método funciona. Lo probé yo mismo. Pero en cualquier caso, si interrumpes el rendimiento de tu dispositivo, ese es sólo tu problema. Haz todo según las instrucciones y todo funcionará como un reloj. Acordado.
Empecemos.
Probé este método en Samsung S8500 Wave y en el firmware oficial ucraniano. Puedes descargarlo desde .
No necesitamos mucho.
1. Multicargador: llévelo con usted. Cualquier versión, pero yo elegiría la última.
2. Archivo apps_Compressed_spoof_Wave_I.bin: descárgalo desde el enlace (esto es para la primera ola, para Ucrania)
Instalemos Angry Birds.
En primer lugar, flasheamos el archivo apps_Compressed_spoof_Wave_ (dependiendo de la onda que tengas). Esto se hace una vez. Para hacer esto, inicie Multiloader y seleccione LSI, Cambio de arranque y Descarga completa. Captura de pantalla en la que se puede hacer clic:
Añade tu archivo. Simplemente puede arrastrarlo y soltarlo en la ventana del programa. Apagamos el teléfono. Mantenga presionado Bajar volumen + Bloquear + Encendido (tubo rojo) al mismo tiempo. El modo DownLoad se iluminará. Luego Búsqueda de Puerto. Luego descargar. Si alguna vez cosiste tu propio teléfono, esto no es ninguna novedad para ti.
La lima está cosida, bien.
Luego descomprime Bada Wave Spoof (programa en el archivo). Encontramos en su interior el siguiente archivo: BadaCertificate.cer. Lo copiamos al teléfono (no importa dónde, pero es mejor en la carpeta Otros). En tu teléfono, ve a la carpeta donde lo copiaste y toca el archivo. Acepte la advertencia e instale el certificado.
Descomprimimos el archivo con el juego o aplicación, en nuestro caso el archivo AngryBirds.rar y especificamos la ruta a la carpeta y, en particular, al archivo con el nombre del juego application.exe (en nuestro caso AngryBirds.exe) .
Lo más probable es que el archivo esté en la carpeta Bin. Marque la casilla como se muestra en la captura de pantalla. Alternativamente presione el botón 1. Firmar y luego el botón 2. Cambiar nombre.
Uno a uno, presione primero el botón 1. Firmar
Todo el mundo está aquí. Vaya a la pestaña Copiar. Conectamos el teléfono en modo Disco Extraíble y seleccionamos la tarjeta de memoria en la lista desplegable. De lo contrario, haga clic en el botón con dos flechas verdes al lado. Estamos esperando que se cargue.
Después de una copia exitosa. Desconectamos el teléfono y nos dirigimos al teléfono por el camino Configuración - General - Ubicación de instalación - seleccionamos la tarjeta de memoria. Conectamos el teléfono en modo Samsung Kies.
Recientemente me convertí en propietario de un “teléfono inteligente” Samsung Wave 525 con el sistema operativo Bada. En principio, solo necesitaba dos funciones del teléfono: un reproductor de música, al que se pueden conectar unos auriculares normales con un miniconector de 3,5 y acceso a Internet a través de Wi-Fi. El nuevo Wave 525 puede hacer todo esto con distintos grados de éxito. "Pero", pensé, "como tiene el coraje de llamarse a sí mismo un teléfono inteligente, debemos cargarlo al máximo". Y empezó a cargar.
Todas las aplicaciones "nativas" en un teléfono con sistema Bada se instalan a través de la tienda Samsung Apps. Puede conectarse a él a través de la aplicación del mismo nombre en su teléfono o conectándose a una computadora usando el programa de escritorio Samsung Kies. Como todavía no he adquirido Wi-Fi en casa, elegí la segunda opción.
Al conectar el teléfono a la computadora, Kies inmediatamente se ofreció a actualizar el firmware. Cabe señalar aquí que todavía tengo recuerdos vívidos de la actualización del firmware con un programa propietario en mi teléfono anterior: Sony Ericsson k800i. El programa de actualización se descargó del sitio web oficial en ruso y el procedimiento de actualización del firmware se realizó correctamente. Después de eso, me encontré en mis manos con un maravilloso teléfono en inglés sin ningún signo del idioma ruso. Después de eso, escribí varias veces al soporte técnico, cada vez que el robot me devolvió dos cartas indicando que han abierto un ticket para mi problema y lo resolverán con el tiempo. Este momento feliz nunca llegó.
Pero basta de digresiones líricas. Descartando mi triste experiencia, todavía hice clic en el botón "Actualizar firmware". Y... no pasó nada. El teléfono se desconectó, luego se conectó nuevamente y apareció nuevamente la ventana solicitando actualizar el firmware. La tecnología hace maravillas.
En la tienda de aplicaciones miré los precios y me tranquilicé un poco. Tenía miedo de que los precios en la sucursal ucraniana de Samsung Apps fueran prohibitivamente demenciales. Esto no es del todo cierto: los precios de las aplicaciones pagas generalmente oscilan entre 10 y 50 jrivnia, y también hay una gran cantidad de software gratuito. Aunque, como resultó más tarde, la cantidad aquí no empezó a convertirse en calidad.
La ausencia casi total de aplicaciones localizadas me llamó inmediatamente la atención. Además, no sólo en el familiar y relativamente comprensible idioma inglés, sino también en árabe y chino completamente ilegibles (¿japonés? ¿coreano? Imagínese estos jeroglíficos...). Me sorprendió especialmente la increíble abundancia de aplicaciones con la nota "solo vietnamita" (solo en vietnamita). ¡Y esto está en la sección ucraniana de la tienda! ¿Alguien fue demasiado vago para establecer las regiones de distribución?
Gracias a esta “cuidadosa” selección de aplicaciones, toda la tienda parece un basurero de software de mala calidad. Aún encontré fuerzas para profundizar en ello y en un par de días revisé casi todas las aplicaciones gratuitas. Después de eso, apareció mi teléfono inteligente: tres tipos de pianos de distintos grados de miseria, varios juguetes lentos, un programa lento pero agradable para notas, el cliente de Dropbox Pipeline, un programa con sonidos para relajarse y un programa simple llamado Vibrador (puedes adivinar qué lo hace ). Todo. Un software extremadamente útil, de eso no hay duda. Para leer libros tuve que instalar la aplicación java Foliant (un programa excelente, por cierto). No existía un reproductor multimedia normal que reemplazara el pobre reproductor de audio y video del teléfono, ni siquiera en las aplicaciones pagas.
Me hizo gracia la presencia de un cliente pago para VKontakte de GlobalLogic inc: "ЄKontakte". En las capturas de pantalla, el programa parece bastante decente e incluso lindo. Al menos, esta es casi la única aplicación que tiene un diseño similar a la interfaz del teléfono y parece "nativa", y esto no se puede decir ni siquiera de algunas de las aplicaciones incluidas en el paquete. Pero no compré esta aplicación porque no podía entender por qué la necesitaba.
Estas son las impresiones. La gente en estos Internet tuyos dice que Bada es un sistema operativo muy joven, por eso es todo un desastre. A ver, tal vez con el tiempo aparezcan aplicaciones normales, la tienda se pondrá en orden. Hasta ahora todo va mal.
» whatsapp para bada
Si es propietario de un teléfono inteligente Samsung con el sistema operativo Bada, no podrá instalar Whatsapp con solo hacer clic en un botón. Para instalarlo, debe descargar Whatsapp para Bada de forma gratuita y luego instalarlo.
Whatsapp for Bad es un archivo de instalación especial adaptado para este sistema operativo. Esta es una versión no oficial del Messenger, pero funciona de manera estable y brinda la oportunidad de disfrutar de todos los beneficios de WhatsApp. Los fabricantes de teléfonos inteligentes con este sistema operativo hicieron oídos sordos a las solicitudes de los usuarios de trasladar esta aplicación a la plataforma Bada.
Bada es un sistema operativo para los modelos de la serie Samsung Wave, que es un sistema operativo Android modificado. Como no es exactamente Android, no encontrarás WhatsApp en las tiendas de aplicaciones para Bud. Pero gracias al cuidado de los programadores, podemos descargar el archivo de WhatsApp adaptado para Bada e instalar la versión rusa.
Proceso de instalación
1. Descarga el archivo de WhatsApp con la extensión .apk. Puede descargarlo a su computadora y luego transferirlo a su teléfono, o descargarlo directamente desde su teléfono. El archivo es bastante grande (alrededor de 35 MB), por lo que si no tiene Internet ilimitado en su teléfono, es mejor conectarse a una red Wi-Fi y luego descargarlo. Por lo general, este archivo no se descarga dentro del archivo, sino inmediatamente como un archivo de instalación. Por lo tanto, no es necesario desembalarlo ni realizar ningún otro paso adicional.
2. Ejecute el archivo y espere la instalación. Si al inicio recibe mensajes sobre la necesidad de cambiar la configuración de seguridad, desactívelo. Después de la instalación, ¡asegúrese de volver a encenderlo! Es posible que también necesites permisos para acceder a Internet, cámara, micrófono, etc. Permitimos todo, de lo contrario el programa no se instalará.
3. Regístrese en WhatsApp usando su número de teléfono y confirmación por SMS, ¡y comience a usarlo!
Después de registrarte e iniciar sesión, puedes hacerlo a través de Whatsapp.:
- comunicarse a través de mensajes de texto, audio o videoconferencia;
- enviar fotos, videos, documentos, agregar emoticones;
- participar en la comunicación en grupos generales;
- mira quién de tu libreta de contactos ya tiene WhatsApp, e invita a quienes aún no lo tienen instalado.
Son pocos los modelos de teléfonos y smartphones que se lanzan al mercado con el sistema operativo Bada, pero existen y es probable que en el futuro Samsung siga produciendo smartphones con este sistema operativo. Ahora todos los teléfonos inteligentes de la serie Wave están equipados con Bada OS. La lista completa de modelos se encuentra a continuación en la tabla.