Я создаю службу и приложение.
Служба является частью "приложения".Я собираюсь предположить, что вы имели в виду «активность», где вы написали «приложение».
Мое требование заключается в том, чтобы я не мог вызвать метод в фоновом потоке из приложения.
Тогда тот, кто создал это «требование», идиот и должен быть уволен.Затем удалите это требование.Всегда выполняйте сетевые операции в фоновом потоке.
Поскольку приложение предназначено для Android 3.0, я получаю «NetworkOnMainThreadException».
Это потому, что StrictMode
включенопредупредить вас об этих вещах по умолчанию.Хотя это новое предупреждение, проблема существует во всех версиях Android, на которых работает ваш код.
Есть ли способ, с помощью которого я могу вызвать вызов сетевого API в главном потоке в android honeycomb?
Это никогда не должно быть сделано в рабочем коде.Переработайте ваше приложение, чтобы выполнить сетевой ввод-вывод в фоновом потоке (например, AsyncTask
).