【发布时间】:2011-07-15 06:32:37
【问题描述】:
我有一个名为 message.java 的活动,它绑定到 GPS.java 服务。从 GPS.java 获得的经纬度必须在 message.java 中使用。我们通过使用 servicebinder 在 onServiceConnected() 中获取纬度和经度的默认值。 这是message.java的代码
`Intent i=new Intent(getApplicationContext(), GPS.class);
bindService(i,mConnection,Context.BIND_AUTO_CREATE)
private GPS servicebinder;
ServiceConnection mConnection = new ServiceConnection() {
public void onServiceConnected(ComponentName className, IBinder service) {
servicebinder = ((GPS.MyBinder)service).getService();
double lat=servicebinder.getlatitude();
double lon=servicebinder.getlongitude();
tex.setText("\nlatitude: " + lat+ "\nlongitude: "
+ lon);
// do any extra setup that requires your Service
}
getLatitude() 和 getLongitude() 返回 GPS.java 中正确的纬度和经度。问题是上面显示的 lat 和 lon 打印默认值,所以当服务中的纬度和经度更新时,我希望 lat 和 lon 也应该更新(应该在服务更新时通知活动)
请提供代码以适当放置它们
【问题讨论】:
标签: android service binding android-activity broadcastreceiver