我有三节课
1.菜单活动
2.LocationUpdateService
3.多重标记器
1.菜单活动
@Override
protected void onStart() {
super.onStart();
bindService(new Intent(this, LocationUpdatesService.class), mServiceConnection,
Context.BIND_AUTO_CREATE);
}
2、LocationUpdateService:(这是服务类)
private void sendMessageToActivity(Location l, String msg) {
Intent intent = new Intent("GPSLocationUpdates");
// You can also include some extra data.
intent.putExtra("Status", msg);
Bundle b = new Bundle();
b.putParcelable("Location", l);
intent.putExtra("Location", b);
LocalBroadcastManager.getInstance(context).sendBroadcast(intent);
Toast.makeText(context,"Sending Data to BroadCast Receiver",Toast.LENGTH_LONG).show();
}
3、多重标记(活动)
LocalBroadcastManager.getInstance(this).registerReceiver(
mMessageReceiver, new IntentFilter("GPSLocationUpdates"));
private BroadcastReceiver mMessageReceiver = new BroadcastReceiver() {
@Override
public void onReceive(Context context, Intent intent) {
// Get extra data included in the Intent
String message = intent.getStringExtra("Status");
Bundle b = intent.getBundleExtra("Location");
Log.d("messagesshow","****** "+message);
Location lastKnownLoc = (Location) b.getParcelable("Location");
if (lastKnownLoc != null) {
Log.d("messagesshow","***** "+String.valueOf(lastKnownLoc.getLatitude()));
}
Toast.makeText(context, "Data Receiver called", Toast.LENGTH_SHORT).show();
}
};
我的问题是:当我打开我的菜单活动我的Toast消息打印发送数据到广播接收器,然后点击按钮我调用MultipleMarker。我无法从服务中获取值。。。但当我按下后退按钮时,我重定向到MenuActivity,此时我得到了值。。。
我想将LocationUpdateservice类中的数据获取到MultipleMarker中。课堂活动。。。
您可以按照以下步骤创建接口并获取服务引用:
在LocationUpdateService中添加以下属性:
public class LocationUpdateService extends Service{
// The Binder is an intern class
public class LocalBinder extends Binder {
//The Binder as a method which return the service
public LocationUpdateService getService() {
return LocationUpdateService.this;
}
}
private final IBinder mBinder = new LocalBinder();
}
然后在您的菜单活动中:
public class MenuActivity extends AppCompatActivity {
private LocationUpdateService mService;
// Connection interface to the service
private ServiceConnection mConnection = new ServiceConnection() {
// Called when the activity connects to the service
public void onServiceConnected(ComponentName className, IBinder service) {
// Here you get the Service
mService = ((LocationUpdateService.LocalBinder)service).getService();
}
// Called when service is disconnected
public void onServiceDisconnected(ComponentName className) {
mService = null;
}
};
}
然后您的bindService()
方法将调用onServiceConnect()
,您将获得Service的实例。
注意:onServiceConnect()
是异步调用的,因此您不能在调用bindService()
后立即使用Service的方法,因为您将有一个NullPointerException。
我有以下问题。我有
我想把<代码>工作流程。睡眠调用我的Cadence活动之一,以便能够正确测试它(并模拟function产生的错误结果)。 在实现之前,我注意到两件重要的事情: 和是单独的类型。 每个活动的第一个参数 - - 是可选的,可以省略 我的尝试: 1.首次尝试 错误: "error":"无法解码活动函数输入字节错误:无法解码参数:0,*internal.Context,json错误:json:无法将对象散
这可能是一个简单的问题。我尝试过谷歌搜索,但没有成功。我有一个DTO,它是从客户机传递过来的,由restful Web服务使用。但是得到这个例外 这是我的restful方法。 这是我平静的呼唤
问题内容: 将变量数据从传递到类的最佳方法是什么?数据是在第一个类中创建的,我需要将该数据传递给第二个类而不使用Intent。任何代码示例将不胜感激。 自从我开始工作以来,我就打算将其发布。就我而言,我已经有一个,而我正在做的事情我需要另一个相同的类型。因此,这里去: 班级活动 我的主要活动 请注意,我必须先创建主类的实例 问题答案: 如果您的班级名称是为此创建的,并将值作为参数传递,则下面是一个
问题内容: 我想将由Razor MVC帮助程序在我的登录表单中生成的RequestVerificationToken传递给我为管理应用程序身份验证而完成的AngularJS服务 我的形式如下: @ Html.AntiForgeryToken()以这种方式呈现: 我的AngujarJs控制器成功注入了我的“ loginService”,我可以通过Post发送用户名和密码到服务 服务: 我的问题是如何
我使用部署到pivotal cloud foundry的spring云数据流,将spring批处理作业作为spring云任务运行,这些作业需要aws凭据才能访问s3存储桶。 我尝试将aws凭据作为任务属性传递,但凭据作为参数或属性显示在任务的日志文件中。(https://docs.spring.io/spring-cloud-dataflow/docs/current/reference/html