Jakie jest znaczenie Androida.intencja.akcja.MAIN?
Widziałem tak wiele różnych mylących wyjaśnień..
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
Jakie jest znaczenie
<action android:name="android.intent.action.MAIN" />
I
<category android:name="android.intent.category.LAUNCHER" />
I
<category android:name="android.intent.category.DEFAULT" />
3 answers
android.intent.action.MAIN
oznacza, że ta aktywność jest punktem wejścia aplikacji, tzn. po uruchomieniu aplikacji zostanie ona wytworzona.
Z docs
ACTION_MAIN with category CATEGORY_HOME -- Launch the home screen.
Również z tutaj
Akcja rozpoczyna się jako główny punkt wejścia, nie oczekuje odbieraj dane.
Android.intencja.Kategoria.DEFAULT jest używany głównie dla implicit intents. Jeśli Twoja działalność chce być rozpoczęta z ukrytej intencji, powinna ona obejmować ta katetoria w filtrze. Jeśli Twoja aktywność może być rozpoczęta ukrytą intencją, gdy nie jest przypisana do niej żadna konkretna Kategoria, filtr intencji powinien zawierać tę kategorię.
Android.intencja.Kategoria.LAUNCHER
Category -- podaje dodatkowe informacje o akcji do wykonania.
CATEGORY_LAUNCHER
oznacza, że powinien pojawić się w Launcherze jako aplikacja najwyższego poziomu
Zobacz docs..
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2014-08-09 14:40:27
ACTION_MAIN
jest uważany za punkt wejścia do wniosku. Zwykle łączy się z CATEGORY_LAUNCHER
w <intent-filter>
, aby wskazać aktywność, która powinna pojawić się w launcherze ekranu głównego lub w czymś innym, co uważa się za launcher. Takie "wyrzutnie" mogą odpytywać PackageManager
, używając queryIntentActivities()
, aby znaleźć takie działania i wyświetlić je użytkownikowi.
Jednakże, ACTION_MAIN
może być stosowany w połączeniu z innymi kategoriami do innych specjalistycznych celów. Na przykład, CATEGORY_CAR_DOCK
z ACTION_MAIN
oznacza aktywność, którą należy uznać za kandydującą, powinna być pokazana, gdy użytkownik upuści telefon do stacji dokującej dostarczonej przez producenta.
Gdy Intent
jest używany z startActivity()
, Jeśli Intent
nie jest jeszcze umieszczony w kategorii, jest umieszczony w CATEGORY_DEFAULT
. Stąd <activity>
<intent-filter>
musi określić niektóre <category>
, używając <category android:name="android.intent.category.DEFAULT" />
jeśli nic innego.
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2014-08-09 14:35:12
<action android:name="android.intent.action.MAIN"/>
Jest głównym działaniem dla tej aplikacji
<category android:name="android.intent.category.LAUNCHER" />
Jest w kategorii LAUNCHER, co oznacza, że dostaje ikonę we wszystkim w przeciwieństwie do innych gier, nie można ich używać.]}
<category android:name="android.intent.category.DEFAULT" />
Wywołanie startActivity () zawsze doda domyślną kategorię, jeśli nie określono żadnej innej kategorii.
ogólnie po prostu dodaj android.intent.category.DEFAULT
, nawet jeśli masz inne kategorie.To gwarantuje, że jeśli żądając intencji nie udostępnia żadnych kategorii podczas rozpoczynania intencji za pomocą startActivity(intent)
, wtedy Twoja aktywność odbierająca może również odbierać te intencje..
Źródło: Busy Coders Guide to Android Development
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2018-08-24 18:30:56