Question

Ceci est un message de quelqu'un qui commence à peine à développer des BB. Toute orientation est très appréciée.

Comment les applications BlackBerry basées sur la carte, telles que Yelp et Google Map, sont-elles mises en œuvre? Comme avec la version Web. Yelp pour le BB vous permet de rechercher des restaurants & amp; etc. en fonction de l'emplacement actuel ou spécifié. Le résultat de la recherche se présente sous la forme d'une liste ou d'une vue cartographique affichant les marqueurs des résultats de la recherche. La carte de Yelp est fournie par Bing. Comment la carte et les marqueurs sont-ils invoqués dans le code BB? Pour l'affichage sous forme de liste, ce qui est utilisé pour extraire la liste des résultats de la base de données. Peut-on utiliser une base de données?

Google Map 3.2 pour le BB prend désormais en charge les calques. Encore une fois, comment les cartes Google sont-elles invoquées? Vous pouvez également sélectionner un marqueur (par exemple Wiki, station-service) d'un lieu particulier directement sur la carte et afficher les informations relatives à ce lieu (par exemple, Wiki, l'adresse de la station-service). Comment cela se fait-il?

Mes connaissances en technologie de cartographie et en développement BB sont très limitées. Nous souhaitons donc un retour d'information de base ou approfondi.

Était-ce utile?

La solution

Je n'ai aucune expérience en matière de création d'applications gps réelles pour BlackBerry, voici ci-dessous mes observations et réflexions sur des solutions de contournement possibles.

Application Blackberry Yelp

En effet, l'application Yelp de Blackberry montre la carte si vous effectuez une recherche, puis entrez dans le résultat et consultez l'adresse de la carte

texte de remplacement http://img197.imageshack.us/img197/965/13428830 .jpg texte de remplacement http://img269.imageshack.us/img269/ 1976 / 92068364.jpg

Voir aussi Yelp lance Bing- Application Blackberry optimisée

Si vous consultez l'API Yelp , vous ne trouverez qu'une fonctionnalité de recherche qui < a href = "http://www.yelp.com/developers/examples" rel = "nofollow noreferrer"> utilisez éventuellement Google Maps pour afficher l'emplacement du résultat de la recherche sur votre site Web . . / p>

Bing semble être un analogue MS pour Google Maps. Et il existe un contrôle de carte Bing qui peut difficilement être utilisé dans Développement BB.

Application Google Maps Blackberry

texte de remplacement http://img193.imageshack.us/img193/9678/39917026 .jpg

Vous pouvez appeler installé Google Maps Mobile à partir du code. :

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());
  }
 }
}

Utilisation de la classe d'emplacement personnalisée:

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);
 }
}

Voir aussi Comment utiliser Google Map dans l'application Blackberry?

Conclusion

Le navigateur Blackberry et BrowserField prennent en charge JavaScript de manière limitée. Comme Bing et GMaps sont tous deux basés sur JavaScript, je soupçonne qu'ils utilisent des images statiques extraites du serveur pour afficher le contrôle de la carte. Cela est peut-être possible, mais cela implique une implémentation côté serveur et toutes les clés de développeur API requises.

Vous pouvez également appeler les codes GMaps installés à partir de code sur Blackberry.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top