我已经在模拟器中检查了HOST GPU并尝试获取当前位置,但没有得到任何错误或结果。
这是我的代码。
package com.example.locationawareapp;
import android.app.Activity;
import android.content.Context;
import android.location.Location;
import android.location.LocationListener;
import android.location.LocationManager;
import android.os.Bundle;
import android.view.Menu;
import android.widget.TextView;
public class MainActivity extends Activity {
private TextView currentloc;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
currentloc = (TextView)findViewById(R.id.CurrentLocation);
// Acquire a reference to the system Location Manager
LocationManager locationManager = (LocationManager) this.getSystemService(Context.LOCATION_SERVICE);
// Define a listener that responds to location updates
LocationListener locationListener = new LocationListener() {
public void onLocationChanged(Location location) {
// Called when a new location is found by the network location provider.
makeUseOfNewLocation(location);
}
public void onStatusChanged(String provider, int status, Bundle extras) {}
public void onProviderEnabled(String provider) {}
public void onProviderDisabled(String provider) {}
};
// Register the listener with the Location Manager to receive location updates
locationManager.requestLocationUpdates(LocationManager.GPS_PROVIDER, 0, 0, locationListener);
}
protected void makeUseOfNewLocation(Location location) {
// TODO Auto-generated method stub
currentloc.setText(new Double(location.getLatitude()).toString());
}
@Override
public boolean onCreateOptionsMenu(Menu menu) {
// Inflate the menu; this adds items to the action bar if it is present.
getMenuInflater().inflate(R.menu.main, menu);
return true;
}
}
任何人都可以帮忙解决这个问题。我已经检查了一些现有的问题,但问题没有解决。
的问候,
Sourabh
答案 0 :(得分:0)
我找到了答案:
让我分享我的理解,解释发生了什么,我们需要做什么以及为什么。
仿真器donot有任何可以使用的内置GPS硬件,但是当它们接收位置信息时,LocationManager类及其方法实现将执行那里的任务。因为模拟器不具备内置硬件,所以我们必须为在仿真器上运行的应用程序提供Lat Lon。提供我们可以在命令行左下方使用的位置信息
telnet localhost 5554
geo fix <longitude value> <latitude value>
还有我使用的简单方法,就是使用eclipse UI即插入DDMS功能来发送GPS。 在eclipse中转到窗口&gt; Open Perspective&gt; DDMS。 在DDMS中,您将找到如下所示的图片
首先进入日食中的DDMS部分比打开模拟器控制....转到手动部分设置lat和long然后按发送按钮。
希望这会对你有所帮助。