Convertir una aplicación Android a BlackBerry 10 · 1"...

14
1 Convierte una aplicación Android a BlackBerry 10 – Androides Verdes Fritos Convierte una aplicación Android a BlackBerry 10 Bueno, hoy vamos a hacer algo un tanto extraño pero espero que útil. Pongámonos en situación. Por lo que he podido desentrañar en un par de días, la impresión que me ha dado es que BlackBerry ha tirado su antiguo sistema y ha rehecho su sistema. Por lo que he visto, las aplicaciones que antes funcionaban en el sistema, ahora con la nueva versión, no funcionan, pero, las aplicaciones Android, convirtiéndolas, se podrán instalar en nuestras nuevas y flamantes BlackBerry. Así que la lógica que se desprende de esta estrategia es: Lo que teníamos no vale, con eso no llegamos a todo el comercio que queremos, así que, JOIN TO ANDROID! A mí no me parece ni bien ni mal, pero sí inteligente. Como opinión subjetiva, el sistema implantado por BlackBerry en estos momentos no se sostenía, tener que pasar todo el tráfico por un servidor determinado, etc. Hoy en día no tiene mucho sentido, pero es mi humilde opinión. Así que si tienes una aplicación Android y quieres crear tu aplicación en BlackBerry, nos lo han puesto bastante sencillo. El proceso que os voy a explicar es una traducción de BlackBerry, pero con comentarios e imágenes al vuelo. Voy a realizar el proceso en paralelo, pero por primera vez, por si me surge algún tipo de problema, os lo explicaré y si existe solución, también os lo comentaré. Algo parecido al directo. Previamente vamos a ver cómo está el proyecto de BlackBerry en este momento. Por el momento, aunque no he podido encontrar otra información, sólo se puede generar para compilaciones de Android 2.3.3. Así que generaré un proyecto totalmente 2.3.3. Antes de pasar a ponerte como un loco a convertir tu aplicación a BlackBerry 10, asegúrate de que todos los componentes están aceptados y soportados. Existe una página en la que se puede comprobar lo que está y no está soportado.

Transcript of Convertir una aplicación Android a BlackBerry 10 · 1"...

1  

Convierte  una  aplicación  Android  a  BlackBerry  10  –  Androides  Verdes  Fritos  

Convierte  una  aplicación  Android  a  BlackBerry  10  

Bueno,   hoy   vamos   a   hacer   algo   un   tanto   extraño   pero   espero   que   útil.   Pongámonos   en  situación.  Por  lo  que  he  podido  desentrañar  en  un  par  de  días,  la  impresión  que  me  ha  dado  es  que  BlackBerry  ha  tirado  su  antiguo  sistema  y  ha  rehecho  su  sistema.  Por  lo  que  he  visto,  las  aplicaciones  que  antes  funcionaban  en  el  sistema,  ahora  con   la  nueva  versión,  no  funcionan,  pero,   las   aplicaciones   Android,   convirtiéndolas,   se   podrán   instalar   en   nuestras   nuevas   y  flamantes   BlackBerry.   Así   que   la   lógica   que   se   desprende   de   esta   estrategia   es:   Lo   que  teníamos  no   vale,   con  eso  no   llegamos   a   todo  el   comercio  que  queremos,   así   que,   JOIN  TO  ANDROID!  A  mí  no  me  parece  ni  bien  ni  mal,  pero   sí   inteligente.  Como  opinión  subjetiva,  el  sistema  implantado  por  BlackBerry  en  estos  momentos  no  se  sostenía,  tener  que  pasar  todo  el  tráfico   por   un   servidor   determinado,   etc.   Hoy   en   día   no   tiene   mucho   sentido,   pero   es   mi  humilde   opinión.   Así   que   si   tienes   una   aplicación   Android   y   quieres   crear   tu   aplicación   en  BlackBerry,   nos   lo   han   puesto   bastante   sencillo.   El   proceso   que   os   voy   a   explicar   es   una  traducción  de  BlackBerry,  pero  con  comentarios  e  imágenes  al  vuelo.  Voy  a  realizar  el  proceso  en  paralelo,  pero  por  primera  vez,  por  si  me  surge  algún  tipo  de  problema,  os  lo  explicaré  y  si  existe  solución,  también  os  lo  comentaré.  Algo  parecido  al  directo.    

Previamente  vamos  a  ver  cómo  está  el  proyecto  de  BlackBerry  en  este  momento.  

 

Por  el  momento,  aunque  no  he  podido  encontrar  otra  información,  sólo  se  puede  generar  para  compilaciones   de   Android   2.3.3.   Así   que   generaré   un   proyecto   totalmente   2.3.3.   Antes   de  pasar   a   ponerte   como   un   loco   a   convertir   tu   aplicación   a   BlackBerry   10,   asegúrate   de   que  todos   los  componentes  están  aceptados  y  soportados.  Existe  una  página  en   la  que  se  puede  comprobar  lo  que  está  y  no  está  soportado.    

2  

Convierte  una  aplicación  Android  a  BlackBerry  10  –  Androides  Verdes  Fritos  

https://developer.blackberry.com/android/apisupport/unsupportedapi_blackberry10_overview.html  

El  workflow  que  propone  BlackBerry  es  el  siguiente:  

 

Bueno,  pues  como  nos  lo  recomiendan,  vamos  a  empezar  por  comprobar  las  compatibilidades  de  la  página:  https://bdsc.webapps.blackberry.com/android/bpaa/  

 

Después  de  introducir  el  mail,  aceptar  los  términos  y  comenzar,  tenemos  la  siguiente  pantalla:  

 

Así   que   yo   ejecuto   el   contenido,   confío   plenamente,   sino,   no   podemos   seguir   con   la  conversión:  

3  

Convierte  una  aplicación  Android  a  BlackBerry  10  –  Androides  Verdes  Fritos  

 

Llegó  la  hora  de  probar  la  aplicación  Android.  Primeramente,  voy  a  hacer  un  pequeño  proyecto  simple,   simple,   simple.   Se   me   está   ocurriendo   un   botón   que   al   pulsarlo   levante   un   Toast  dándonos  un  pequeño  saludo.  Lo  creo  completamente  en  2.3.3  

 

Cinco   minutos   en   crear,   si   me   viera   el   primer   día   que   trabajé   con   Android   estaría   muy  orgullosa.  Bien,  una  vez  creado,  genero  el  apk,  por  facilidad  lo  guardo  cerca  de  la  carpeta  de  workspace  del  proyecto,  manías…  

Una   vez   que   le   damos   a   Start   Test,   debería   salirnos   una   página  más   o  menos   como   la   que  sigue:  

 

4  

Convierte  una  aplicación  Android  a  BlackBerry  10  –  Androides  Verdes  Fritos  

 

Lo  único  que  he  encontrado  un  tanto  raro  es  que  le  debemos  proporcionar  la  ruta  del  sdk  que  tenemos  guardado  en  nuestro  sistema  de  archivos.  Por  lo  demás  bien.  Si  una  aplicación  no  es  compatible,  pues  nos  dirá  la  aplicación  lo  siguiente:  

 

Como  segundo  paso  tenemos  que  obtener  un  par  de  claves  que  nos  proporcionará  BlackBerry  para  poder  firmar  nuestras  aplicaciones,  eso  la  verdad  que  me  gusta  más  que  en  Android,  por  qué,  SE-­‐GU-­‐RI-­‐DAD,  o  al  menos  eso  es   lo  que  se  desprende  subjetivamente  de  este  proceso.  Has  de  ser  un  usuario  registrado  y  validado.  Después  recibes  tus  claves.  A  mí  me  gusta,  pero  sabemos  que  eso  es  como  las  flores,  cada  uno  tiene  sus  gustos.  Ante  este  paso,  paciencia,  a  mí  me  han  tardado  en  llegar  casi  una  hora  desde  que  las  he  solicitado,  pero  han  llegado  hace  un  par  de  minutos,  nada  grave.  Más  abajo  os  muestro  una  imagen  de  los  datos  que  os  van  a  pedir.  Se   puede   conseguir   en   la   siguiente   dirección:  https://www.blackberry.com/SignedKeys/codesigning.html  

5  

Convierte  una  aplicación  Android  a  BlackBerry  10  –  Androides  Verdes  Fritos  

 

El  porqué  de  estas  claves  las  explica  BlackBerry  más  o  menos  de  la  siguiente  manera:  La  firma  de  la  aplicación  agrega  valores  hash  criptográficos  para  que  el  paquete  de  la  aplicación  pueda  ser   verificado   en   cuanto   a   la   integridad   y   la   autenticidad   de   la   misma.   También   se   puede  utilizar   la  clave  de   la   firma  para  generar  un   token  de  depuración,  que  se  puede  utilizar  para  probar   las   aplicaciones   en   el   dispositivo   antes   de   publicarla.   Esto   último   todavía   no   lo   he  probado.   Por   cierto,   nos  piden  que   introduzcamos  un  pin,   anótalo.   Bueno,   no   sé   si   te   lo   he  dicho,   pero   el   pin   que   te   piden,   anótalo.  No  es   por   ser   pesada,   pero   anótalo.  Que  no   lo   he  hecho,  no  me  acordaba  y  casi  tengo  que  volver  a  generar  las  claves  para  el  usuario  y  no  esto  100%  segura  de  que  te  den  otro  par  de  claves  para  el  mismo  usuario.  Si  alguien  lo  ha  hecho  y  si  puede  obtener  otro  par  de  claves,  por  favor  que  lo  comente.  

Empecemos  a  construir  el  entorno  de  desarrollo.  ¿Todavía  no  ha  empezado  la  chicha?  Si,  ya,  me  extiendo  considerablemente.  

Lo  primero  que  vamos  a  hacer  es  configurar   la  BlackBerry.  Básicamente  configurar   lo  que  en  Android  sería  las  opciones  de  desarrollo.  Es  más  simple  mostrarlo  que  contarlo  así  que  captura  de  pantalla  del  terminal:  

 

6  

Convierte  una  aplicación  Android  a  BlackBerry  10  –  Androides  Verdes  Fritos  

Si   no   disponemos   de   un   dispositivo   BlackBerry   físico,   se   pueden   probar   las   aplicaciones  mediante   un   simulador.   El   simulador   está   alojado   en   una   máquina   virtual   que   soporta  aceleración  de  gráficos,  audio  y  simulación  periférica.  Se  puede  ver  toda  la  información  para  su  instalación   y   depuración   en   la   página:  https://developer.blackberry.com/devzone/develop/simulator/index.html  

Como   no   quiero   hacer   este   tutorial   más   largo,   si   veo   la   necesidad   de   desarrollarlo   en  profundidad  lo  haré  en  un  post  futuro.  Pero  al  echar  una  ojeada  a  la  página  la  verdad  que  me  ha  parecido  bastante  detallado.  

El   siguiente   paso   es   amoldar   la   aplicación   Android   para   que   se   ajuste   a   las   necesidades   de  BlackBerry.   Según   el   manual   de   BlackBerry   lo   primero   que   debemos   hacer   es   manejar   las  notificaciones   de   actualización   de   la   aplicación.   Como   se   explica,   el   market   de   BlackBerry  World,  pone  en  conocimiento  del  usuario  de  la  aplicación  si  existe  algún  tipo  de  actualización  disponible.   Por   este  motivo   se   deben   quitar   los   Intents,   solicitudes   del   Android  Market   que  puedan  existir  en  el  código,  ya  que  puede  interferir  en  el  funcionamiento  de  la  aplicación.  Otro  punto  a  tener  en  cuenta  es  el  cambio  de  tamaño  del  icono  de  la  aplicación.  Los  iconos  tanto  en  BlackBerry   PlayBook   como   en   BlackBerry   10   son   diferentes   a   los   iconos   de   Android.   Los  tamaños  son  86x86  px  en  BB  PlayBook  y  114x114px  en  BB  10.  

Según   aconsejan,   para   mejores   resultados,   se   deberá   cambiar   el   tamaño   del   icono   de   la  aplicación  a  un  tamaño  adecuado  antes  de  rempaquetar  la  aplicación.    

Para  obtener  los  mejores  resultados,  usted  debe  cambiar  el  tamaño  del  icono  de  la  aplicación  apropiada  antes  de  volver  a  empaquetar  su  aplicación.  El  BlackBerry  Runtime  para  aplicaciones  Android   le   permite   soportar   más   de   un   dispositivo   BlackBerry   en   una   sola   versión   de  lanzamiento   (archivo   BAR)   para   que   pueda   ajustar   el   tamaño   de   los   iconos   para   cada   uno  adecuadamente.   Para   obtener   información   sobre   la   transferencia   de   tu   aplicación   para  soportar  múltiples  dispositivos,  consulte  portar  su  aplicación  Android  a  un  BlackBerrydevice.  Si  requieres   más   información   sobre   este   tema,   te   sugiero   que   vayas   a  http://developer.blackberry.com/android/documentation/port_android_app_to_bb_device.html  deberás  encontrar  bastante  explicación  al  respecto.  

Para   rempaquetar   la   aplicación   Android   tenemos   varias   posibilidades,   os   las   comento   muy  brevemente,   toda   la   información   se   encuentra   en  https://developer.blackberry.com/android/tool/:  

• BlackBerry  Plug-­‐in  for  Android  Development  Tools:  Permite  verificar  la  compatibilidad,  rempaquetar  y  firmar  la  aplicación  desde  Eclipse  IDE.    

• BlackBerry   Packager  forAndroid  apps:   esta   herramienta   es   una   interfaz   web   muy  simple   que   permite   verificar,   rempaquetar   y   firmar   la   aplicación   sin   la   necesidad   de  descarga  de  software  adicional.  Se  necesitará  el  SDK  de  Android.  

• Command-­‐line  tools:  Para  los  apasionados  de  la  línea  de  comandos  aquí  teneis  vuestra  opción.  Se  puede  hacer  lo  mismo  pero  escribiendo.    

7  

Convierte  una  aplicación  Android  a  BlackBerry  10  –  Androides  Verdes  Fritos  

Como  se  supone  que  somos  desarrolladores  Android  y  tenemos  el  Eclipse  a  pleno  rendimiento  construyendo   nuestras   aplicaciones,   nos   decantaremos   por   la   primera   opción,   así   que   a  configurar  nuestro  amado/odiado  Eclipse.  

-­‐ Qué  queremos!  -­‐ Un  plugin  para  BlackBerry!  -­‐ Dónde  lo  tenemos!  -­‐ En  Eclipse!  

Después  de  esto,  lo  de  siempre.  Bendito  seas  instalador  de  plugins  de  Eclipse,  si  te  hubiera  tenido  en  mi  proyecto  de   final  de   carrera  que  dolores  de   cabeza  me  habrías  quitado.  El  plugin  está  en:  http://developer.blackberry.com/android/downloads/eclipseplugin/  

 

Siguiente,  siguiente,  siguiente…  Reiniciar!  Qué  sencillo,  madre!      

https://www.youtube.com/watch?feature=player_embedded&v=62tkj53G7kU#!  

Ahora  a  configurar  las  preferencias  del  plugin.  Existe  un  wizard  que  proporciona  asistencia  para  la  creación  de  todo  lo  necesario,  se  supone  que  ayuda.  Pero  a  mí  no  me  ha  ayudado  nada.  Os  voy  contando.  

8  

Convierte  una  aplicación  Android  a  BlackBerry  10  –  Androides  Verdes  Fritos  

En   un   principio,   te   hace   detectar   el   móvil,   cosa   fácil,   al   menos   a   mí   no   he   ha   dado  problemas,  le  das  la  misma  dirección  ip  de  desarrollo  que  se  ve  en  la  pantalla  del  Modo  de  desarrollo  del  terminal.  Si  no  tienes  una  clave  de  desbloqueo  del  terminal  te  va  a  pedir  que  la  introduzcas,  una  vez  hecho  esto,  en  el  wizard  también  deberás  darla.  

 

Ese  proceso  lo  he  hecho  en  estos  dos  últimos  días  alrededor  de  40  veces  como  poco.  No  sé  por   qué   no  me   ha   funcionado   el   wizard.   No   puedo   daros   una   explicación.   He   creado   8  pares   de   claves   diferentes   probando   cada   una   de   una   forma.   Y   con   el   wizard   no   ha  funcionado   nada,   os   aconsejo   lo   último   que   he   hecho   yo.   Acceder   a  https://developer.blackberry.com/android/documentation/configure_plug-­‐in_preferences_1984899_11.html  

 

Este   es   el  menú  ordenado  que   deberíais   seguir.   Te   lleva   por   un   camino  diferente   al   del  wizard.  Y  creo  que  es  lo  que  realmente  funciona.  Una  vez  que  lleguéis  al  paso  de  crear  un  debug  token,  os  he  creado  un  pequeño  bat,  que  podéis  modificar  con  vuestros  datos  para  facilitaros  el  proceso  en  línea  de  comando.    

Por   cierto,   cuando   creéis   el   certificado,   el   autor,   he   podido   entender   que   se   debería  introducir   el   nombre   de   la   compañía   que   se   ha   introducido   cuando   se   han   creado   las  claves  en  la  página  web  de  blackberry.    

9  

Convierte  una  aplicación  Android  a  BlackBerry  10  –  Androides  Verdes  Fritos  

Para   los  menos  expertos,  si  creáis  un  fichero  de  texto,   le  cambiáis   la  extensión  por  bat  y  copiáis  lo  que  os  dejo  a  continuación  (modificando  para  adecuarlo  a  vuestros  datos)  hacéis  doble  click,  ya  debería  de  estar,  pero  con  la  cantidad  de  problemas  que  me  ha  dado  lo  del  token,  no  prometo  nada.  

set LOCAL_DATA_PATH="c:\Users\<usuario>\AppData\Local\Research In Motion" set CSK_PASSWORD=Contraseña que se ha introducido en la página de creación del certificadp set CERT_STORE_PASSWORD=Contraseña que hemos introducido en la página set DEVICE_PIN=Pin del dispositivo en: Configuración > Acerca de > Hardware > PIN E: cd "eclipse\plugins\net.rim.ajde_1.5.2.201302260701\blackberry.tools.SDK\bin" blackberry-debugtokenrequest -cskpass %CSK_PASSWORD% -keystore %LOCAL_DATA_PATH%\author.p12 -storepass %CERT_STORE_PASSWORD% -devicepin %DEVICE_PIN% %LOCAL_DATA_PATH%\debugtoken.bar pause

 

Os  dará  la  información  de  que  el  token  está  creado.    

 

Bien,  imaginemos  que  lo  habéis  hecho  y  no  os  ha  dado  problemas.  Cosa  que  me  alegraría  mucho,   ahora   en   la   pantalla   de   configuración,   podréis   importar   el   token   y   a   firmar  aplicaciones  BlackBerry    antes  de  que  caduque.  

 

10  

Convierte  una  aplicación  Android  a  BlackBerry  10  –  Androides  Verdes  Fritos  

¡Qué  bien,  qué  bien  que  ya  puedo  firmar!  ¿Recordáis  la  aplicación?  Su  pantalla  es:  

 

Antes  habíamos  comprobado  que  la  aplicación  funciona.  También  hemos  comprobado  que  el  paquete  es  compatible  vía  web.  Ahora,  con  botón  derecho,  al  estar   instalado  el  plugin  de  BlackBerry  se  instala  un  epígrafe  en  el  menú.  Os  lo  explico  con  imágenes  que  creo  que  es  cómo  mejor  se  ve:  

11  

Convierte  una  aplicación  Android  a  BlackBerry  10  –  Androides  Verdes  Fritos  

 

12  

Convierte  una  aplicación  Android  a  BlackBerry  10  –  Androides  Verdes  Fritos  

 

 

 

Si  todo  el  proceso  se  ha  hecho  correctamente  deberá  aparecer  una  carpeta  nueva  que  se  llama  dist.  Ahora  podremos  ejecutar.  

13  

Convierte  una  aplicación  Android  a  BlackBerry  10  –  Androides  Verdes  Fritos  

 

Y  para  ejecutar,  tenemos  como  en  Android  un  Run  específico  para  BlackBerry.  

 

Si   quereis   conficurar   algo   en   Run   Cofiguration   o   os   dá   algún   problema   de   ejecución,  modificar  el   run  configuration  ya  que  seguro  que  hay  algún  parámetro  que  no  está  bien  señalizado.  

Y  después  de  todo  este  trabajo,  nuestra  pequeña  aplicación  ya  debería  estar  funcionando  en  BlackBerry  10.  Os  dejo  una  imagen  para  que  veáis  cómo  queda.  

14  

Convierte  una  aplicación  Android  a  BlackBerry  10  –  Androides  Verdes  Fritos