Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/blackberry/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Blackberry 黑莓定位服务_Blackberry - Fatal编程技术网

Blackberry 黑莓定位服务

Blackberry 黑莓定位服务,blackberry,Blackberry,有人能告诉我如何使用黑莓定位服务吗? 我正在做一个黑莓手机应用程序的项目。我以前从未有过黑莓手机,也没有与任何提供商签订过合同(只拥有3的sim卡和移动设备9000 OS 4.6) 在这个项目中,我目前正试图使用以下代码来检索当前位置(startpoint)和目标位置(endpoint)的坐标。它在模拟器上工作得很好,但在设备上什么都没有。我应该和供应商签订合同吗?这是否只需要GPS或互联网,或两者都可以工作 代码: 提前感谢您要在5.0之前的任何版本上获取GPS位置,您必须实例化这些内容 标准

有人能告诉我如何使用黑莓定位服务吗? 我正在做一个黑莓手机应用程序的项目。我以前从未有过黑莓手机,也没有与任何提供商签订过合同(只拥有3的sim卡和移动设备9000 OS 4.6)

在这个项目中,我目前正试图使用以下代码来检索当前位置(startpoint)和目标位置(endpoint)的坐标。它在模拟器上工作得很好,但在设备上什么都没有。我应该和供应商签订合同吗?这是否只需要GPS或互联网,或两者都可以工作

代码:


提前感谢您

要在5.0之前的任何版本上获取GPS位置,您必须实例化这些内容

  • 标准
  • 位置提供者
  • 位置对象(使用位置提供程序完成)
  • 以下是您实例化的内容:

    Criteria criteria = null;
    LocationProvider provider = null;
    javax.microedition.location.Location location = null;
    
    之后,必须为条件赋值,使用条件获取LocationProvider的实例,并使用LocationProvider获取位置

    criteria = new Criteria();
    criteria.setPreferredPowerConsumption(Criteria.POWER_USAGE_HIGH);
    criteria.setHorizontalAccuracy(50);
    criteria.setVerticalAccuracy(50);
    criteria.setCostAllowed(true);
    provider = LocationProvider.getInstance(criteria);
    location = provider.getLocation(5);
    
    请注意,标准将决定您是使用GPS、Wifi辅助定位还是手机定位,有关标准设置的更多信息,请参见:

    然后,要获取坐标,调用方法:location.getQualifiedCoordinates()


    那就是。。。您应该从单独的线程调用它。此外,实际的位置管理代码应该位于try-catch块上,但IDE将帮助您实现这一点。

    在这段代码中,我们将看到哪些模式可用于获取坐标(即,如果手机没有GPS,则应使用satalite信息。)

    可用模式正在检索Lat和Long

    创建地图视图(地图视图,即地图,设置所需的规格,如缩放、纬度、经度等),然后调用地图,设置的缩放、纬度、经度等将应用于反射到屏幕上的地图

    CustomMapField mMapField;
    Coordinates mCoordinates;
    BlackBerryCriteria blackBerryCriteria = null;
    BlackBerryLocation blackBerryLocation = null;
    BlackBerryLocationProvider blackBerryLocationProvider = null;
    double Doublelat = 0.0;
    double Doublelng = 0.0;
    blackBerryCriteria = new BlackBerryCriteria();
    if(GPSInfo.isGPSModeAvailable(GPSInfo.GPS_MODE_CELLSITE)){
      blackBerryCriteria.setMode(GPSInfo.GPS_MODE_CELLSITE);
    }else if(GPSInfo.isGPSModeAvailable(GPSInfo.GPS_MODE_ASSIST)){
      blackBerryCriteria.setMode(GPSInfo.GPS_MODE_ASSIST);
    }else if(GPSInfo.isGPSModeAvailable(GPSInfo.GPS_MODE_AUTONOMOUS)){
      blackBerryCriteria.setMode(GPSInfo.GPS_MODE_AUTONOMOUS);
    }else{
       blackBerryCriteria.setCostAllowed(true);
       blackBerryCriteria.setPreferredPowerConsumption(Criteria.POWER_USAGE_LOW);
    } try {
       blackBerryLocationProvider = (BlackBerryLocationProvider)          BlackBerryLocationProvider.getInstance(blackBerryCriteria);
       blackBerryLocation = (BlackBerryLocation) blackBerryLocationProvider.getLocation(60);
       QualifiedCoordinates qualifiedCoordinates = blackBerryLocation.getQualifiedCoordinates();
       Doublelat = qualifiedCoordinates.getLatitude();
       Doublelng = qualifiedCoordinates.getLongitude();
       mCoordinates = new  Coordinates(Doublelat, Doublelng, 0);
       MapView mapView = new MapView();
       mapView.setLatitude(finalintlat);
       mapView.setLongitude(finalintlng);
       mapView.setZoom(10);
       MapsArguments mapsArgs = new MapsArguments(mapView);
       Invoke.invokeApplication(Invoke.APP_TYPE_MAPS, mapsArgs);
    }catch(Exception e){
       System.out.println("Error in location :"+e.toString());
       System.out.println("Error in location :"+e.getMessage());
    }
    

    一些解释在这里会有所帮助。
    CustomMapField mMapField;
    Coordinates mCoordinates;
    BlackBerryCriteria blackBerryCriteria = null;
    BlackBerryLocation blackBerryLocation = null;
    BlackBerryLocationProvider blackBerryLocationProvider = null;
    double Doublelat = 0.0;
    double Doublelng = 0.0;
    blackBerryCriteria = new BlackBerryCriteria();
    if(GPSInfo.isGPSModeAvailable(GPSInfo.GPS_MODE_CELLSITE)){
      blackBerryCriteria.setMode(GPSInfo.GPS_MODE_CELLSITE);
    }else if(GPSInfo.isGPSModeAvailable(GPSInfo.GPS_MODE_ASSIST)){
      blackBerryCriteria.setMode(GPSInfo.GPS_MODE_ASSIST);
    }else if(GPSInfo.isGPSModeAvailable(GPSInfo.GPS_MODE_AUTONOMOUS)){
      blackBerryCriteria.setMode(GPSInfo.GPS_MODE_AUTONOMOUS);
    }else{
       blackBerryCriteria.setCostAllowed(true);
       blackBerryCriteria.setPreferredPowerConsumption(Criteria.POWER_USAGE_LOW);
    } try {
       blackBerryLocationProvider = (BlackBerryLocationProvider)          BlackBerryLocationProvider.getInstance(blackBerryCriteria);
       blackBerryLocation = (BlackBerryLocation) blackBerryLocationProvider.getLocation(60);
       QualifiedCoordinates qualifiedCoordinates = blackBerryLocation.getQualifiedCoordinates();
       Doublelat = qualifiedCoordinates.getLatitude();
       Doublelng = qualifiedCoordinates.getLongitude();
       mCoordinates = new  Coordinates(Doublelat, Doublelng, 0);
       MapView mapView = new MapView();
       mapView.setLatitude(finalintlat);
       mapView.setLongitude(finalintlng);
       mapView.setZoom(10);
       MapsArguments mapsArgs = new MapsArguments(mapView);
       Invoke.invokeApplication(Invoke.APP_TYPE_MAPS, mapsArgs);
    }catch(Exception e){
       System.out.println("Error in location :"+e.toString());
       System.out.println("Error in location :"+e.getMessage());
    }