У мене є основна діяльність, яка запускає клас IntenService SchedulerWebSocketService.class класу IntentService
Intent webSockIntent = new Intent(getApplicationContext(), SchedulerWebSocketService.class);
startService(webSockIntent);
Служба працює клієнтом веб-сокета. На основі отриманого повідомлення додаток буде інтерпретувати повідомлення, запускаючи фонову нитку для початку нового завдання, наприклад, фотографування. Основна активність містить різноманітні параметри, які потрібно передавати до IntentService, а потім до нових потоків, що виконується.
Я знаю, що можу використовувати putExtra для передачі декількохпредметів, таких струн. Як я можу передати посилання на поточну активність або інші спеціальні об'єкти, які поділяються між основною діяльністю та новою ниткою, яку запускає IntentService?
Чи є спосіб якимось чином змінити конструктор служби намірів і передати аргумент цьому новому конструктору, коли я викликаю новий Намір (...)?
Відповіді:
1 для відповіді № 1Рекомендований спосіб передачі великих об'єктів - це прив’язати до служби: як тільки ви зробите це, ваша активність отримає доступ до фактичної послуги, і ви можете зателефонувати в службу та передати її об'єктам.