Я создал объект bluetooth-service, где был создан поток, который контролирует данные в очереди. Из основной деятельности была создана одна деятельность, где я могу установить данные. Как я могу передавать данные из этой активности в поток для отправки сообщений, с передачей объекта bluetooth-сервиса?как передать данные из не основной деятельности в поток
ответ
ли вы думаете об использовании статического класса, который бы сохранить сообщение, Вам необходимо отправить, то, возможно, использовать Observer pattern (при необходимости) для уведомления нити у него есть новое сообщение, чтобы отправить
Я могу передать объект этот статический класс из основного действия во вторую активность через намерение? – Sauber
нет, поскольку класс статичен (подумайте об использовании Singleton), вам нужно только каждый раз получать экземпляр (статическое значение: http://stackoverflow.com/questions/413898/what-does-the-static-keyword-do- in-a-class), а затем запросить значение, подобное 'Singleton.getInstance(). getValue()' – Bxtr
спасибо, я надеюсь, это поможет мне – Sauber
Я использую https://github.com/greenrobot/EventBus для что. Это упростит код. Все, что вам нужно сделать, это here. В вашем случае вам необходимо:
Добавить graddle зависимость
compile 'de.greenrobot:eventbus:2.4.0'
создать класс событий:
public class MessageEvent { public final String message; public YourObject object;//use what you need here to pass data. public MessageEvent(String message) { this.message = message; ... } }
Создать Подписчики:
@Override public void onStart() { super.onStart(); EventBus.getDefault().register(this); } @Override public void onStop() { EventBus.getDefault().unregister(this); super.onStop(); } // This method will be called when a MessageEvent is posted public void onEvent(MessageEvent event){ Toast.makeText(context, event.message, Toast.LENGTH_SHORT).show(); } // This method will be called when a SomeOtherEvent is posted public void onEvent(SomeOtherEvent event){ doSomethingWith(event); }
И, наконец, опубликовать данные:
EventBus.getDefault().post(new MessageEvent("Hello everyone!"));
Позвольте мне знать, если это помогло.
- 1. Как изменить данные основной деятельности из фрагмента
- 2. Как передать ManagedObjectID в основной поток
- 3. Как передавать данные из основной деятельности в фрагмент
- 4. Как переносить строковые данные из основной деятельности в другую Упражнение
- 5. Android - Как отправить данные из основной деятельности в загруженный фрагмент
- 6. Как отправить данные от основной деятельности фрагментировать
- 7. Как добраться от основной деятельности во второй деятельности?
- 8. Как передать данные JSON в другой деятельности
- 9. Как отправить сигнал/данные из рабочего потока в основной поток?
- 10. передать данные от нити к деятельности
- 11. Android, рисунок из основной деятельности
- 12. Как передать данные из async-задачи деятельности в фрагмент
- 13. Не удается передать данные AsyncTask моей деятельности
- 14. Как передать пользовательские данные в поток?
- 15. Как передать дополнительные данные из этой деятельности в следующую деятельность?
- 16. данные из фрагмента деятельности
- 17. Как передать исключение явно в основной поток в C#
- 18. Как передать данные из класса Async в основной класс активности
- 19. Как поток в классе separat передает данные в основной класс
- 20. Как вызвать функцию фрагмента из основной деятельности
- 21. Не переходить к основной деятельности
- 22. Как отправить данные из вида деятельности в основной вид деятельности? альтернатива общим предпочтениям или намерениям?
- 23. Отправка исключения из потока в основной поток?
- 24. как передать данные модели к следующей деятельности
- 25. Принесите данные из операции async в основной поток
- 26. С Android, как мне передать управление обратно в основной поток?
- 27. Инициализировать предпочтения из XML в основной деятельности
- 28. Доступ переменной в основной деятельности из потока
- 29. Как получить данные к основной деятельности в android
- 30. ProgressDialog в основной деятельности (не AsyncTask)
Показать у нас код соответствия и показать нам, где вы боретесь. Мы постараемся вам помочь, но мы не будем указывать полный веб-сайт для вас. – bish