Я немного запутался в классе ComponentName в Android.
Существуют разные способы доступа к объекту с именем компонента, но я не знаю, когда использовать его... и почему!
Пример:
- Пакет приложений
de.zordid.sampleapp
- но класс провайдера виджетов
de.zordid.sampleapp.widget.WidgetProvider
Используя
ComponentName cn = new ComponentName("de.zordid.sampleapp.widget",
"WidgetProvider");
Я получил эту информацию о компоненте: ComponentInfo{de.zordid.sampleapp.widget/WidgetProvider}
, но я не мог использовать это - компонент неизвестен!
Но JavaDoc говорит, что я должен предоставить пакет и класс внутри этого пакета - и это то, что я сделал, не так ли?
Использование
ComponentName cn = new ComponentName(context, WidgetProvider.class);
дает ComponentInfo{de.zordid.sampleapp/de.zordid.sampleapp.widget.WidgetProvider}
- и это отлично работает!!
Существует еще один способ получить ComponentName - по контексту и строке. Какой из них следует использовать где и когда?
Спасибо!