android开发中service如何接收activity用intent发送来的数据

2024-12-02 22:20:11
推荐回答(2个)
回答1:

service类必须实现一个接收方法,接收中传递的是intent
@Override
public IBinder onBind(Intent intent) {
Bundle bundle = intent.getExtras();
String stringVal = bundle.getString("stringValue"); //用于接收字符串
int numVal = bundle.getInt("intValue"); //用于接收int类型数据
byte[] bytes = bundle.getByteArray("bytesValue"); //用于接收字节流,你可以把文件放入字节流
return null;
}

你可以用Bundle来接受你从Activity发过来的数据,然后使用Bundle提供各个方法来接受数据。
如果仅仅是字符串之类的,
使用getStringExtra方法直接接收即可。
@Override
public IBinder onBind(Intent intent) {
String str1 = intent.getStringExtra("str1");
String str2 = intent.getStringExtra("str2");
return null;
}

回答2:

service类必须实现一个接收方法,接收中传递的是intent
@Override
public IBinder onBind(Intent intent) {
Bundle bundle = intent.getExtras();
String stringVal = bundle.getString("stringValue"); //用于接收字符串
int numVal = bundle.getInt("intValue"); //用于接收int类型数据
byte[] bytes = bundle.getByteArray("bytesValue"); //用于接收字节流,你可以把文件放入字节流
return null;
}

你可以用Bundle来接受你从Activity发过来的数据,然后使用Bundle提供各个方法来接受数据。
如果仅仅是字符串之类的,
使用getStringExtra方法直接接收即可。
@Override
public IBinder onBind(Intent intent) {
String str1 = intent.getStringExtra("str1");
String str2 = intent.getStringExtra("str2");
return null;
}