import android.app.Activity;
import android.content.Context;
import android.location.Criteria;
import android.location.Location;
import android.location.LocationListener;
import android.location.LocationManager;
import android.os.Bundle;
import android.widget.TextView;
public class CurrentLocation extends Activity {
/** Called when the activity is first created. */
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
LocationManager locationManager;
String serviceName = Context.LOCATION_SERVICE;
locationManager = (LocationManager)getSystemService(serviceName);
//String provider = LocationManager.GPS_PROVIDER;
Criteria criteria = new Criteria();
criteria.setAccuracy(Criteria.ACCURACY_FINE);
criteria.setAltitudeRequired(false);
criteria.setBearingRequired(false);
criteria.setCostAllowed(true);
criteria.setPowerRequirement(Criteria.POWER_LOW);
String provider = locationManager.getBestProvider(criteria, true);
Location location = locationManager.getLastKnownLocation(provider);
updateWithNewLocation(location);
locationManager.requestLocationUpdates(provider, 2000, 10,
locationListener);
}
private final LocationListener locationListener = new LocationListener() {
public void onLocationChanged(Location location) {
updateWithNewLocation(location);
}
public void onProviderDisabled(String provider){
updateWithNewLocation(null);
}
public void onProviderEnabled(String provider){ }
public void onStatusChanged(String provider, int status,
Bundle extras){ }
};
private void updateWithNewLocation(Location location) {
String latLongString;
TextView myLocationText;
myLocationText = (TextView)findViewById(R.id.myLocationText);
if (location != null) {
double lat = location.getLatitude();
double lng = location.getLongitude();
latLongString = "纬度:" + lat + "\n经度:" + lng;
} else {
latLongString = "无法获取地理信息";
}
myLocationText.setText("您当前的位置是:\n" +
latLongString);
}
}
分享到:
相关推荐
实验结果表明,基于Android手机的AGPS定位技术可以实现了较高的定位精度和稳定性,其误差在可接受的范围内。 AGPS定位技术的结论和展望 AGPS定位技术的结论是该技术可以实现较高的定位精度和稳定性,并且具有较高...
在Android系统中实现AGPS定位,开发者可以利用各种API和硬件接口来获取定位信息,比如Android Location API。这些API可以接入设备的GPS模块,并与网络定位服务进行交互,以实现更为高效和精准的定位服务。开发者需要...
很全的移动关于AGPS的测试规范。包含AGPS终端测试规范V3.1.0,AGPS终端测试记录表,AGPS终端互操作性测试规范V3.1.0,AGPS终端仪表测试需求说明V1.0.0,OMA-ETS-SUPL-V1_0-20070116-C
Android 手机定位方案 Android 手机定位是移动互联网开发中不可或缺的一部分。随着智能手机的普及,手机定位... Android 提供的定位接口也使得开发者可以使用异步方式获取定位信息,提高应用程序的实时性和灵活性。
在三星i900这款设备上,AGPS辅助程序是帮助手机快速获取定位服务的关键组件。 首先,我们来详细解释一下AGPS的工作原理。AGPS通过手机数据连接,从网络服务器获取卫星信号信息,即“辅助信息”,包括卫星的位置、...
本项目涉及的是“百度地图定位测试程序”,主要关注的是如何利用百度地图API实现精准、实时的地理位置获取和处理。以下是关于百度地图定位功能及其相关知识点的详细解释: 1. **百度地图API**:百度地图API是百度...
### AGPS定位基本原理 #### 一、引言 随着移动通信技术和互联网的快速发展,位置服务(Based Location Services, BLS)的需求日益增加。位置服务不仅限于传统的导航功能,还包括了众多基于地理位置的应用和服务,...
AGPS(Assisted GPS,A-GPS,网络辅助GPS)是一种结合了 GPS 定位和蜂窝基站定位的技术,通过蜂窝网络的数据传输功能,实现高精度和快速的定位。AGPS 定位技术可以解决传统 GPS 定位的两个主要问题:硬件初始化时间...
除了这些基础的定位方式,Android还支持其他定位技术,如网络定位(通过移动数据或WiFi的基站信息),AGPS(辅助GPS)等。在实际开发中,为了提高定位效率和准确性,通常会结合多种定位方式进行混合定位。例如,当...
在压缩包文件列表中提到的`TestNetworkLocationProvider`可能是开发者为了测试网络定位功能编写的程序。这个程序可能包含了一个自定义的网络定位服务提供商,用于替换或扩展系统的默认实现。开发者可能在这个程序中...
软件上,操作系统和应用需要集成相应的AGPS驱动和API,以便应用程序调用定位服务。 在实际应用中,AGPS广泛用于各种场景: - **导航服务**:地图应用如高德地图、百度地图利用AGPS提供实时导航,帮助用户找到目的...
4. **SUPL服务提供商(S-SP)**:提供位置服务的应用程序接口,允许第三方开发者基于SUPL架构开发定位相关的应用和服务。 ### 结论 《AGPS SUPL 2.0规范》是移动通信领域中一项重要的技术标准,它不仅推动了移动...
4. `bin`目录:编译后的二进制文件,如APK(Android应用程序包),这是可以直接安装在Android设备上的应用。 5. `.classpath`和`project.properties`:这些是构建项目的配置文件,它们指示构建工具如何编译和打包...
综上所述,Android手机定位归类知识点包括了Android定位服务的基本原理、LocationManager和LocationListener的使用方法、GPS、AGPS、Wi-Fi和蜂窝网络定位技术的特点及其在应用中的选择策略、以及定位服务的权限管理...
这包括控制平面的信令测试、性能测试以及业务平面的SUPL测试,以确保定位服务的准确性和一致性。测试不仅关注定位速度和精度,还包括在各种网络条件和环境下的稳定性,以及对移动终端电池寿命的影响。对于无线运营商...