/ / Android и затъмнение. Трябва ли да включа код на услугата в приложението си? Множество приложения използват една и съща услуга - Android, затъмнение, услуга

Android и затъмнение. Трябва ли да включа код на услугата в приложението си? Множество приложения използват една и съща услуга - Android, затъмнение, услуга

Аз съм относително новак към Androidвече са задали някои основни въпроси относно услугите (http://stackoverflow.com/questions/8659622/separation-of-logic-and-gui-in-android-app-service-has-knowledge-of-app-and-sho )

Това изглежда като самостоятелен въпрос, така че съм го разбил.

Аз наследих някакъв код, написан в Eclipseсъстоящ се от услуга и приложение. Поставих служебния код в библиотека. В настройките на приложението, под Android, добавих библиотеката за услуги под раздела "Библиотека", за да мога да посоча кода. Аз не съм сигурен, че това е правилният начин.Аз също така направих това в новото приложение, което построих, но мисля, че имам проблеми, когато се опитвам да стартирам и двете приложения (които трябва да използват една и съща услуга) и аз съм не изненадан.Аз изтеглям и отстранявам грешки на първото приложение и работи добре. Услугата осъществява връзка с външно устройство чрез Bluetooth. Когато изтеглям и дебъгвам второто приложение, забелязвам, че първото приложение губи връзката му. Предполагам, че при изтеглянето на второто приложение се изтегля и ново копие на услугата. Моите конкретни въпроси са:

  1. Могат ли две приложения да споделят едно и също копие на услуга?
  2. Трябва ли да поставя услугата в библиотека и да посочвам услугата и в двете приложения, или има ли друг (по-добър) начин? Как бих посочил услуга на трета страна, ако нямах изходния код?

  3. Примерите, които разгледах, изглеждат като услуга и дейност в един и същ проект. Може ли някой да ме насочи към по-голям пример като услуга с две приложения, които го използват?

Благодаря, Дейв

Отговори:

1 за отговор № 1

Има два вида услуги: Обвързана услуга и услуга "Започнала работа". Започната услуга се използва, когато имате нужда от задача, която трябва да се извърши във фонов режим (например, ако трябва да изтеглите файл, който сте стартирали услуга и да изтеглите този файл.) След това услугата ще се прекрати или потребителят може да я анулира stopService команда към него). Ограничените услуги се използват за дългосрочни задачи. Тя може да се разглежда като интернет услуга, която осигурява известна функционалност и работи почти през цялото време. Например, можете да създадете услуга, която да ви предостави функционалност за добавяне на две номера.

Сега отговорите:

  1. Да те могат. По принцип трябва да има само един пример за услуга в системата. Но тази услуга може да има множество теми.
  2. Можете да реализирате услугата си като отделно приложение. Но обикновено има приложение за собственик и приложението, което използва услугата.
  3. Трябва да погледнете услугите на Bound.