其他分享
首页 > 其他分享> > Android GPS云的困惑!

Android GPS云的困惑!

作者:互联网

我正在尝试使用GPS设计我的第一个Android应用程序.截至目前,我有一个可绘制的按钮,单击该按钮可向Toast消息发出经度和纬度警报.我尝试使用telnet localhost 5554,然后使用地理修复#number #number输入值,但没有结果仅显示00.我还尝试了使用DDMS发送GPS坐标的方法,并且得到了相同的结果.

我的问题是,使用地理定位和DDMS发送坐标的正确方法到底是什么?我使用过Location,LocationManger和LocationListener,但不确定哪一个是正确的选择.

给出代码,以防万一代码中存在错误

@Override
public void onCreate(Bundle savedInstanceState) {
 super.onCreate(savedInstanceState);
    setContentView(R.layout.main);
    Button button = (Button) findViewById(R.id.track);
    button.setOnClickListener(this);
    LocationManager location =(LocationManager)getSystemService(Context.LOCATION_SERVICE);
    Location loc = location.getLastKnownLocation(location.GPS_PROVIDER);
    updateWithNewLocation(loc);

  }

 private final LocationListener locationListener = new LocationListener() {
   public void onLocationChanged(Location location) {
     updateWithNewLocation(location);
   }

  private void updateWithNewLocation(Location l) {
  longitude = l.getLongitude();
  latitude = l.getLatitude();
  provider = l.getProvider();     
  }

    public void onClick(View v) { 
     Toast.makeText(this, "Your location is " + 
      longitude + " and " + latitude + " provided by: " + 
      provider, Toast.LENGTH_SHORT).show();          
   }     
}

解决方法:

两件事情

1)使经纬度易变

2)尝试注册为GPS位置管理器的侦听器

location.requestLocationUpdates(LocationManager.GPS,100,1,locationListener);

那应该使您的回调发送到locationListener对象.

您可以在此处查看一些示例Android GPS代码:
http://www.devx.com/wireless/Article/43005

(警告!自从我添加了此链接以来,DevX已添加了注册登录!)

标签:ddms,gps,emulation,android
来源: https://codeday.me/bug/20191107/2002637.html