- Co to jest zamiar w Androidzie?
- Czy ktoś może opracować przykład?
- Jakie są rodzaje intencji i dlaczego ich używamy?
- Dlaczego intencje są tak ważne w systemie Android?
android
android-intent
Nikunj Patel
źródło
źródło
Odpowiedzi:
Intent jest „zamiar”, aby wykonać działanie; innymi słowy,
Zamiar to w gruncie rzeczy komunikat, że zrobiłeś lub chcesz, aby coś się wydarzyło. W zależności od intencji aplikacje lub system operacyjny mogą nasłuchiwać i odpowiednio zareagują. Pomyśl o tym jak o świetnym e-mailu do grona znajomych, w którym mówisz swojemu przyjacielowi Johnowi, aby coś zrobił, lub znajomym, którzy mogą zrobić X ( „filtry intencyjne” ), aby zrobić X. Inni ludzie zignorują ten e-mail, ale John (lub przyjaciele, którzy potrafią wykonać X) zareagują na to.
Aby nasłuchiwać zamiaru transmisji (np. Dzwonka telefonu lub odebrania wiadomości SMS), zaimplementuj odbiornik transmisji , który przejdzie cel. Aby zadeklarować, że możesz obsłużyć zamiary aplikacji innej osoby, takie jak „zrób zdjęcie”, zadeklaruj filtr zamiarów w pliku manifestu aplikacji .
Jeśli chcesz odpalić zamiar zrobienia czegoś, np. Podnieść dialer, odpalasz zamiar, że tak zrobisz.
źródło
Co to jest zamiar?
Intent to w zasadzie, że wiadomość jest przekazywana między składnikami (takimi jak Działalności , Usług, broadcast odbiorników i Dostawców Treści ). Jest więc prawie równoważny parametrom przekazywanym do wywołań API. Podstawowe różnice między wywołaniami interfejsu API a wywoływaniem komponentów za pośrednictwem zamiarów to:
Oczywiście intencje można sprawić, by działały dokładnie tak jak wywołania API, używając tak zwanych intencji jawnych, co zostanie wyjaśnione później. Ale najczęściej ukryte intencje są właściwą drogą i właśnie to zostało tutaj wyjaśnione.
Jeden element, który chce się przywołać, musi wyrazić jedynie zamiar wykonania pracy. I każdy inny element, który istnieje i który twierdzi, że może wykonać takie zadanie za pomocą filtrów intencji , jest przywoływany przez platformę Android w celu wykonania zadania. Oznacza to, że żaden z komponentów nie jest świadomy swojego istnienia, ale może nadal współpracować, aby dać pożądany efekt końcowemu użytkownikowi.
To niewidoczne połączenie między komponentami jest osiągane poprzez połączenie zamiarów, filtrów zamiarów i platformy Android.
Prowadzi to do ogromnych możliwości, takich jak:
Oto dodatkowe szczegóły techniczne na temat zamiarów z dokumentacji Androida .
Ucz się więcej
źródło
Intencje to sposób na powiedzenie Androidowi, co chcesz zrobić . Innymi słowy, opisujesz swój zamiar. Za pomocą zamiarów można zasygnalizować systemowi Android, że wystąpiło określone zdarzenie. Inne komponenty w Androidzie mogą zarejestrować się na to wydarzenie poprzez filtr celowy.
Poniżej znajdują się 2 rodzaje zamiarów
1. Wyraźne zamiary
służy do wywoływania określonego komponentu. Gdy wiesz, który komponent chcesz uruchomić, i nie chcesz dać użytkownikowi swobodnej kontroli nad tym, którego komponentu chcesz użyć. Na przykład masz aplikację, która ma 2 działania. Działanie A i działanie B. Chcesz uruchomić działanie B z działania A. W tym przypadku definiujesz wyraźne zamiary ukierunkowane na działanie B, a następnie używasz go do bezpośredniego wywołania.
2. Implikacje niejawne
używane, gdy masz pojęcie o tym, co chcesz zrobić, ale nie wiesz, który składnik powinien zostać uruchomiony. Lub jeśli chcesz dać użytkownikowi opcję wyboru między listą komponentów do użycia. Jeśli te zamiary zostaną wysłane do systemu Android, wyszuka wszystkie komponenty zarejestrowane dla określonego działania i typu danych. Jeśli zostanie znaleziony tylko jeden składnik, system Android uruchomi go bezpośrednio. Na przykład masz aplikację, która używa aparatu do robienia zdjęć. Jedną z funkcji Twojej aplikacji jest to, że dajesz użytkownikowi możliwość wysłania zdjęć, które zrobił. Nie wiesz, jaką aplikację ma użytkownik, który może wysyłać zdjęcia, a także chcesz dać użytkownikowi możliwość wyboru aplikacji zewnętrznej, jeśli ma więcej niż jedną. W takim przypadku nie użyłbyś wyraźnej intencji.
Jednoznaczne zamiary są zawsze dostarczane do celu, bez względu na to, co zawiera; filtr nie jest sprawdzany. Ale niejawna intencja jest dostarczana do komponentu tylko wtedy, gdy może przejść przez jeden z filtrów komponentu
Filtry intencyjne
Jeśli zamiary zostaną wysłane do systemu Android, określi odpowiednie aplikacje dla tych zamiarów. Jeśli zarejestrowano kilka komponentów dla tego typu Intencji, Android oferuje użytkownikowi możliwość otwarcia jednego z nich.
To ustalenie opiera się na IntentFilters. IntentFilters określa typy zamiarów, na które może reagować działanie, usługa lub odbiornik emisji. Filtr zamiarów deklaruje możliwości komponentu. Określa to, co może zrobić anaktywność lub usługa i jakie rodzaje transmisji może obsłużyć odbiornik. Umożliwia odpowiedniemu komponentowi otrzymywanie Intencji deklarowanego typu. IntentFilters są zazwyczaj definiowane za pomocą pliku AndroidManifest.xml. W przypadku BroadcastReceiver można również zdefiniować je w kodowaniu. Filtr IntentFilters jest definiowany przez filtry kategorii, akcji i danych. Może także zawierać dodatkowe metadane.
Jeśli komponent nie definiuje filtru zamiaru, można go wywołać tylko przez jawne zamiary.
Poniżej przedstawiono 2 sposoby definiowania filtra
1. plik manifestu
Jeśli zdefiniujesz filtr zamiaru w manifeście, aplikacja nie musi być uruchomiona, aby zareagować na zamiary zdefiniowane w filtrze. Android rejestruje filtr po zainstalowaniu aplikacji.
2.BroadCast Receiver
Jeśli chcesz, aby odbiornik radiowy odbierał informacje tylko wtedy, gdy aplikacja jest uruchomiona. Następnie powinieneś zdefiniować swój filtr zamiarów w czasie wykonywania (programowo). Pamiętaj, że działa to tylko w przypadku odbiorników telewizyjnych.
źródło
Po napisaniu pojedynczego działania pojawia się potrzeba przejścia do innego działania w celu wykonania innego zadania z informacjami lub bez pierwszego działania.
Platforma Android umożliwia przejście za pomocą Intent Interface.
Słowa zostały zaczerpnięte stąd: używając Intent Demo i proponuję przejść przez ten przykład, ponieważ dostarczyli również plik kodu. dzięki czemu możesz go używać i łatwo zrozumieć to samo.
źródło
Android Intent
Android Intent umożliwia nawigację między aktywnością Androida. Z przykładami w tym samouczku omówiono różne rodzaje zamiarów Androida.
Android Intent można zdefiniować jako proste obiekty wiadomości, które służą do komunikowania się z jednej aktywności do drugiej.
Zamiary określają zamiar aplikacji. Służą również do przesyłania danych między czynnościami.
System Android Intent może służyć do wykonywania następujących 3 zadań:
Cel można ogólnie podzielić na 2 kategorie. Brak słów kluczowych dla tej kategorii, a jedynie ogólna klasyfikacja sposobu wykorzystania zamiarów Androida.
Jawne zamiary Androida
Jawna intencja Androida to intencja, w której wyraźnie definiujesz komponent, który musi zostać wywołany przez system Android.
Domniemana intencja Androida
Domniemane intencje Androida to intencja, w której zamiast definiowania dokładnych komponentów określasz akcję, którą chcesz wykonać. Decyzję o obsłużeniu tej akcji należy do systemu operacyjnego. System operacyjny decyduje, który składnik najlepiej uruchamiać w przypadku niejawnych zamiarów. Zobaczmy przykład:
Więcej informacji można znaleźć poniżej
źródło
Według ich dokumentacji:
Oto link z przykładem: http://developer.android.com/training/basics/firstapp/starting-activity.html#BuildIntent
Jak opisano w dokumencie, aby rozpocząć działanie (musisz również zrozumieć, co to jest działanie), skorzystaj z poniższych wskazówek
źródło
Zamiarem jest abstrakcyjny opis operacji do wykonania. Można go używać z startActivity do uruchamiania działania, broadcastIntent w celu wysłania go do dowolnych zainteresowanych komponentów BroadcastReceiver oraz startService (Intent) lub bindService (Intent, ServiceConnection, int) do komunikacji z usługą w tle.
Aby uzyskać więcej informacji, zobacz te linki:
1). http://developer.android.com/reference/android/content/Intent.html
2) http://developer.android.com/guide/topics/intents/intents-filters.html
3). http://www.vogella.de/articles/AndroidIntent/article.html
dostępnych jest wiele innych artykułów.
źródło
co to jest zamiar
Jest to rodzaj wiadomości lub informacji przekazywanych do komponentów. Służy do uruchamiania aktywności, wyświetlania strony internetowej, wysyłania SMS-ów, wysyłania wiadomości e-mail itp.
Istnieją dwa rodzaje zamiarów w Androidzie:
Do wywołania komponentów systemu służy niejawna intencja
Jawna intencja służy do wywołania klasy aktywności.
Intent intent = newIntent (this, SecondActivity.class);
możesz przeczytać więcej
http://www.vogella.com/tutorials/AndroidIntent/article.html#intents_overview http://developer.android.com/reference/android/content/Intent.html
źródło
Intent to klasa, która wiąże informacje do wykonywania niektórych akcji.
przykład: przekazywanie danych z jednego działania do drugiego działania, gdy użytkownik wykonuje takie działania w
obecna aktywność.
źródło
W szerokim widoku możemy zdefiniować Intent jako
źródło
źródło
Z papierowego
Deep Dive into Android IPC/Binder Framework atAndroid Builders Summit 2013
linkuCel ten jest rozumiany w kilku małych, ale skutecznych liniach
Z tego wątku prosta odpowiedź architekta Androida Dianne Hackborn stwierdza, że tak
data container
naprawdę jest.Z punktu widzenia architektury Androida :
Intent to kontener danych, który służy do komunikacji między procesami. Jest zbudowany na
Binder
podstawie architektury Android.źródło
Intencje są używane do inicjowania innej aktywności z jednego działania. Zasadniczo są wykorzystywane do kilku celów, takich jak wysyłanie danych do innego działania z jednego działania oraz do celów wyzwalania.
Są to zasadniczo dwa rodzaje
Domniemane intencje.
Jawne zamiary.
Jako początkujący wiem tak dużo, myślę, że da to podstawowe pojęcie o intencjach Androida
źródło