Pergunta

Este é um post-carregado pergunta de alguém que está apenas começando com o desenvolvimento BB. Qualquer orientação é muito apreciada.

BlackBerry Como mapa baseado aplicativos, como Yelp e Google Map implementado? Tal como acontece com a versão baseada na web. Yelp para o BB permite que você procurar restaurantes e etc. Com base na localização actual ou especificada. O resultado da pesquisa está em uma forma de uma lista ou uma visualização do mapa exibindo marcadores dos resultados da pesquisa. mapa do Yelp é alimentado por Bing. Como é o mapa, juntamente com os marcadores, invocadas dentro do código BB? Para a exibição de lista, o que está sendo usado para recuperar a lista de resultados do banco de dados. qualquer banco de dados pode ser usado?

O Google Map 3.2 para o BB agora suporta camadas. Mais uma vez, como é o Google Maps invocado? Pode também seleccionar um marcador (isto é, Wiki, estação de gás) de um determinado local directamente no mapa e visualizar a informação de localização que (i Wiki, o endereço da estação de gás). Como é este ser feito?

Meu conhecimento em tecnologia mapa, bem como o desenvolvimento BB é muito limitado, tão básico ou no gabarito profundidade são bem-vindas.

Foi útil?

Solução

Eu não tenho nenhuma experiência de escrever do mundo real gps aplicações para BlackBerry, a seguir são apenas as minhas observações e reflexões sobre possíveis soluções alternativas.

Blackberry Yelp aplicativo

Na verdade, Blackberry Yelp aplicação mostrar mapa se você pesquisar e, em seguida, entrar em resultado e ver Mapa Endereço

alt texto http://img197.imageshack.us/img197/965/13428830 .jpg alt texto http://img269.imageshack.us/img269/ 1976 / 92068364.jpg

Veja também Yelp lança Bing- alimentado Blackberry App

Se você olhar para Yelp API você encontrará apenas procurar funcionalidade que pode < a href = "http://www.yelp.com/developers/examples" rel = "nofollow noreferrer"> opcionalmente usar o Google Maps ao resultado da pesquisa exibição localização em seu site .

Bing parece ser MS analógico para o Google Maps. E há uma ASP Bing Map Control que dificilmente pode ser usado em desenvolvimento BB.

Blackberry Google Maps aplicativo

alt texto http://img193.imageshack.us/img193/9678/39917026 .jpg

Você pode chamar instalado o Google Maps Mobile a partir do código :

class Scr extends MainScreen {
 public Scr() {    
 }    
 protected void makeMenu(Menu menu, int instance) {
  super.makeMenu(menu, instance);
  menu.add(mInvokeGMaps);
 }    
 MenuItem mInvokeGMaps = new MenuItem("Run GMaps", 0, 0) {
  public void run() {
   GMLocation location 
    = new GMLocation(51.507778, -0.128056, "London");
   invokeGMaps(location);
  };
 };    
 public void invokeGMaps(GMLocation l) {
  int mh = CodeModuleManager.getModuleHandle("GoogleMaps");
  if (mh == 0) {
   try {
    throw new ApplicationManagerException(
      "GoogleMaps isn't installed");
   } catch (ApplicationManagerException e) {
    System.out.println(e.getMessage());
   }
  }
  URLEncodedPostData uepd = new URLEncodedPostData(null, false);
  uepd.append("action", "LOCN");
  uepd.append("a", "@latlon:" + l.getLatitude() 
   + "," + l.getLongitude());
  uepd.append("title", l.getName());
  uepd.append("description", l.getDescription());
  String[] args = { "http://gmm/x?" + uepd.toString() };
  ApplicationDescriptor ad = CodeModuleManager
    .getApplicationDescriptors(mh)[0];
  ApplicationDescriptor ad2 = new ApplicationDescriptor(ad, args);
  try {
   ApplicationManager.getApplicationManager()
     .runApplication(ad2, true);
  } catch (ApplicationManagerException e) {
   System.out.println(e.getMessage());
  }
 }
}

Usando classe local personalizado:

class GMLocation {    
 String mName;
 String mDescription;
 double mLatitude;
 double mLongitude;
 public GMLocation(double lat, double lon) {
  mLatitude = lat;
  mLongitude = lon;
 }    
 public GMLocation(double d, double e, String name) {
  this(d, e);
  mName = name;
 }    
 public GMLocation(double lat, double lon, String name, String descr) {
  this(lat, lon, name);
  mDescription = descr;
 }    
 public String getName() {
  return mName;
 }    
 public String getDescription() {
  return mDescription;
 }    
 public String getLongitude() {
  return String.valueOf(mLongitude);
 }    
 public String getLatitude() {
  return String.valueOf(mLatitude);
 }
}

Veja também Como usar o Google Map no aplicativo Blackberry?

Conclusão

BlackBerry Browser e BrowserField tem um suporte limitado de JavaScript. Uma vez que tanto Bing e GMaps são baseados em JavaScript, a minha suspeita é que eles usam imagens estáticas recuperados do servidor para o controle de mapa de exibição. Isso pode ser possível, mas que de implementação do lado do servidor meios e todos API exigido as chaves de desenvolvedor.

Como alternativa, você pode invocar GMaps de código instalado no Blackberry.

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top