[英]Android - error when try to test GPS on Emulator
我想测试一下在android上使用GPS的简单简介。 所以我写一个这样的简单代码:
public class main extends Activity{
LocationManager mLocationManager;
TextView tv;
public void onCreate(Bundle savedInstanceState){
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
tv = (TextView)findViewById(R.id.myLocationText);
mLocationManager = (LocationManager)getSystemService(Context.LOCATION_SERVICE);
Criteria criteria = new Criteria();
criteria.setAccuracy(Criteria.ACCURACY_FINE);
criteria.setPowerRequirement(Criteria.POWER_LOW);
String locationprovider = mLocationManager.getBestProvider(criteria, true);
Location mLocation = mLocationManager.getLastKnownLocation(locationprovider);
tv.setText("Last location lat:" + mLocation.getLatitude() + "long:" + mLocation.getLongitude());
}
}
另外,在AndroidManifest上我添加了use-permission,如下所示:
<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" />
但是当我尝试在Android模拟器上运行时,我得到错误“意外停止”并关闭此应用程序。 我也加入了DDMS的尝试。 但我对这个错误一无所知。
我在实际设备中也遇到过类似的问题。 听众接收新位置的频率太高,无法更新我的TextViev。 我通过一些同步解决了它,如果当时正在刷新,则跳过View刷新。
在你的情况下,因为你没有使用监听器,我会检查NullPointerExceptions
。
您可能没有将Android API用于Android模拟器,这就是为什么您无法访问GoogleMapAPı并遭遇类似崩溃的原因。
有关设置模拟器以使用地图的详细信息,请查看此信息。
http://code.google.com/android/add-ons/google-apis/maps-overview.html
这是因为您从模拟器中使用它并且它没有任何与gps相关的硬件。
这是一个解决方案
要从命令行发送模拟位置数据:
在Android模拟器中启动您的应用程序,并在SDK的/ tools目录中打开终端/控制台。 连接到模拟器控制台:
telnet localhost <console-port>
发送位置数据:geo fix以发送固定的地理位置。 此命令接受十进制度的经度和纬度,以及米的可选高度。 例如:
geo fix -121.45356 46.51119 4392
geo nmea发送NMEA 0183句子。 此命令接受单个“$ GPGGA”类型的NMEA语句(修复数据)或“$ GPRMC”(传输数据)。 例如:
geo nmea $GPRMC,081836,A,3751.65,S,14507.36,E,000.0,360.0,130998,011.3,E*62
来源: http : //developer.android.com/guide/topics/location/obtaining-user-location.html
另请参阅此链接: http : //developer.android.com/guide/developing/devices/emulator.html#console
这是一个API KEY
问题。 你可以尝试申请一个新的API KEY
在谷歌地图API密钥。
您的代码是正确的,没有显示任何错误。
也许这个答案可以帮助您解决问题。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.