我正在尝试实现一种位置跟踪器类型的应用程序。我需要在特定时间获取位置,但在我尝试时,我注意到,如果我的手机没有获得GPS位置,它不会寻找网络位置。当我在手机的设置下转动gps它会获得网络位置。我如何同时使用或设置代码中使用的内容。我使用java ME位置API。 提前谢谢。
编辑: 这是我获取位置的代码:
Criteria cr= new Criteria();
cr.setHorizontalAccuracy(500);
cr.setCostAllowed(true);
// Get an instance of the provider
LocationProvider lp= LocationProvider.getInstance(cr);
// Request the location, setting a one-minute timeout
Location l = lp.getLocation(60);
QualifiedCoordinates c = l.getQualifiedCoordinates();
if(c != null ) {
// Use coordinate information
double lat = c.getLatitude();
double lon = c.getLongitude();
double acc = c.getHorizontalAccuracy();
form.append("latitude: " + lat);
form.append("\nlongitude: " + lon);
form.append("\nacc: " + acc);
}
答案 0 :(得分:0)
您无法使用API为位置提供程序定义方法。硬件的实现是透明的(这是在这个操作背后)。 你写的是正确的。您只能从一个来源获取位置,此来源取决于手机设置(位置设置)。
但是,您可以通过识别与设备关联的网络单元来尝试读取基于网络的位置。 提供代码示例的article应该是有用的。