安卓初学者必看实例,(手机GPS简单编程访问)
2013-06-27 15:40
531 查看
手机中有各种个各样的传感器,比如说距离传感器,红外线传感器,摄像头等,最近本人对GPS这个神秘的芯片有点感兴趣,于是就找了点资料,看看安卓里面内部是怎样访问GPS芯片的。
现在和大家分享一下。实现获取位置的代码
public class Chapter_Map_01Activity extends Activity {
/** Called when the activity is first created. */
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
locationManager=(LocationManager) getSystemService(Context.LOCATION_SERVICE);
locate();
}
private LocationManager locationManager;
private void locate()
{
TextView tv=(TextView) findViewById(R.id.mytext);
StringBuilder builder=new StringBuilder("可利用的providers:");
List<String> probiders=locationManager.getProviders(true);
LocationListener listen=new LocationListener() {
@Override
public void onStatusChanged(String arg0, int arg1, Bundle arg2) {
// TODO Auto-generated method stub
}
@Override
public void onProviderEnabled(String arg0) {
// TODO Auto-generated method stub
}
@Override
public void onProviderDisabled(String arg0) {
// TODO Auto-generated method stub
}
@Override
public void onLocationChanged(Location location) {
// TODO Auto-generated method stub
}
};
for(String provider:probiders)
{
locationManager.requestLocationUpdates(provider, 0, 1000, listen);
builder.append("\n").append(provider).append(":");
Location location=locationManager.getLastKnownLocation(provider);
if(location!=null)
{
double lat=location.getLatitude();
double lng=location.getLatitude();
builder.append("(");
builder.append(lat);
builder.append(",");
builder.append(lng);
builder.append(")");
}
else
{
builder.append("没有位置信息");
}
}
tv.setText(builder);
}
}
这串代码虽然很长,但是实现了获取GPS位置的功能,有兴趣的朋友可以去试一试,本博客持续更新,内容会有改进。
现在和大家分享一下。实现获取位置的代码
public class Chapter_Map_01Activity extends Activity {
/** Called when the activity is first created. */
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
locationManager=(LocationManager) getSystemService(Context.LOCATION_SERVICE);
locate();
}
private LocationManager locationManager;
private void locate()
{
TextView tv=(TextView) findViewById(R.id.mytext);
StringBuilder builder=new StringBuilder("可利用的providers:");
List<String> probiders=locationManager.getProviders(true);
LocationListener listen=new LocationListener() {
@Override
public void onStatusChanged(String arg0, int arg1, Bundle arg2) {
// TODO Auto-generated method stub
}
@Override
public void onProviderEnabled(String arg0) {
// TODO Auto-generated method stub
}
@Override
public void onProviderDisabled(String arg0) {
// TODO Auto-generated method stub
}
@Override
public void onLocationChanged(Location location) {
// TODO Auto-generated method stub
}
};
for(String provider:probiders)
{
locationManager.requestLocationUpdates(provider, 0, 1000, listen);
builder.append("\n").append(provider).append(":");
Location location=locationManager.getLastKnownLocation(provider);
if(location!=null)
{
double lat=location.getLatitude();
double lng=location.getLatitude();
builder.append("(");
builder.append(lat);
builder.append(",");
builder.append(lng);
builder.append(")");
}
else
{
builder.append("没有位置信息");
}
}
tv.setText(builder);
}
}
这串代码虽然很长,但是实现了获取GPS位置的功能,有兴趣的朋友可以去试一试,本博客持续更新,内容会有改进。
相关文章推荐
- 安卓初学者必看实例,(访问sqlite)
- 安卓初学者必看实例,(文件管理器简单实现)
- javascript判断是手机还是电脑访问网页的简单实例分享
- 安卓初学者必看实例,(计算圆面积)
- javascript判断是手机还是电脑访问网页的简单实例分享
- 修改安卓手机的文件权限以及简单改造自己的android
- Windows下socket简单的编程实例
- 30.Silverlight中创建一个最简单的WCF RIA Services访问数据库实例
- 多线程编程实例----服务器客户端简单通信
- Linux C Socket编程原理及简单实例
- Socket 同步编程的一个简单例子,适合初学者
- 手机html开发,简单实例,头部底部固定,中间可以滚动
- inux下串口编程简单实例
- Java经典编程300例之实例062 简单的汽车销售商场(多态)
- Kafka简单客户端编程实例
- 实例讲解PHP设计模式编程中的简单工厂模式
- 编程的有效方法--实例变量的访问
- C#编写的发送手机短信的类库 && C#开发短信的方法和简介 &&短信编程实例
- JavaScript验证手机号码代码简单代码实例(未测试)
- Qt 编程点滴 初学者必看(1)