Невозможно передать данные между классами - PullRequest
0 голосов
/ 24 января 2012

У меня есть действие, которое создает уникальный идентификатор, а затем передает строку в службу. Проблема в том, что приложение принудительно закрывается каждый раз, когда я пытаюсь передать данные из действия в службу.

Обычно, когда я программирую Java-приложения, я просто использую методы getter и setter для передачи данных между классами, так у кого-нибудь есть идея, почему возникает эта проблема?

public void setId(String mydeviceId){

    TelephonyManager tm = (TelephonyManager)getBaseContext().getSystemService(Context.TELEPHONY_SERVICE);
    final String DeviceId, SerialNum, androidId;
    DeviceId = tm.getDeviceId();
    SerialNum = tm.getSimSerialNumber();
    androidId = Secure.getString(getContentResolver(),Secure.ANDROID_ID);
    UUID deviceUuid = new UUID(androidId.hashCode(), ((long)DeviceId.hashCode() << 32) | SerialNum.hashCode());
    mydeviceId = deviceUuid.toString(); 
    this.mydeviceId = mydeviceId;   

    }


    public String getId(){

        return mydeviceId;

    }

Ответы [ 2 ]

1 голос
/ 24 января 2012

Чтобы установить связь с вашим сервисом, разрешите вашей активности bind с ним. См. это руководство. Это рекомендуемый способ.

Кроме того, вы можете передавать желаемые значения для связи между Сервисом и / или Активом. Для получения дополнительной информации см. этот

1 голос
/ 24 января 2012

Пропуск между занятиями означает занятия?Если это так, вам нужно использовать Intent bundle.Получить / установить не будет работать между действиями.Вот пример , как передавать данные между действиями.

...