0

在 android 中,我正在使用两项服务,我想将一些细节从一项服务转移到另一项服务。因此,我使用 set 和 get 方法创建了新的类设置,但我不知道如何将两个服务与这个类文件连接起来,我可以将细节从一个服务移动到另一个服务并记住每一个。

例如:

我想将属性 Boolean 从服务 1 转移到服务 2,然后在服务 2 中检查此属性是否为真,如果为真,那么我在此 seocnd 服务中执行一些代码...希望是更好的解释

类示例:

public class Settings {
    private int currentAudioManager;
    private Boolean isChanged;

    public int getCurrentAudioManager() {
        return currentAudioManager;
    }

    public void setCurrentAudioManager(int currentAudioManager) {
        this.currentAudioManager = currentAudioManager;
    }
........

希望你明白我想要什么。

4

1 回答 1

1

您可以注册广播接收器并在您的服务之间发送广播可解析数据。

public class Service1 extends Service {

    @Override
    public void onCreate() {    
        super.onCreate();
        registerReceiver(recevier1,  new IntentFilter("YOUR_SERVICE_ACTION1")); 

        // if something happen in your service"
        sendBroadcast(new Intent("YOUR_SERVICE_ACTION2")); // send to second service
    }

    @Override
    public IBinder onBind(Intent intent) {      
        return null;
    }

    public void onDestroy() {
        unregisterReceiver(recevier1);
    };

    Service1Receiver recevier1 = new Service1Receiver();    
    private class Service1Receiver extends BroadcastReceiver{

        @Override
        public void onReceive(Context context, Intent intent) {     
            intent.getExtra("me.SERVICE");// handle your data
        }
    }

}
于 2012-08-16T13:12:17.723 回答