Подтвердить что ты не робот

Android - Как получить список всех доступных фильтров намерений?

У меня есть поисковые документы Android и по какой-то безумной причине я не могу найти список всех доступных фильтров намерений.

Я нахожу фильтр намерений, который бы сделал что-то вроде, уведомив меня через Broadcast Receiver о том, что определенная операция (пример браузера или электронная почта) была запущена или на переднем плане. Может ли кто-нибудь помочь мне с этим.

4b9b3361

Ответ 1

PackageExplorer перечисляет все фильтры намерений, определенные в приложениях на вашем устройстве.

Чтобы ответить на ваш вопрос: вы создаете фильтр намерения, который вы хотите использовать, чтобы ваша деятельность была выбрана, когда программа ищет услугу или активность. Поэтому каждая операция в пакете определяет собственный список фильтров-намерений.

Мне показалось полезным иметь список всех фильтров намерений, определенных всеми приложениями на устройстве, - так что узнайте, какие приложения будет использовать система при обработке намерений. Я разместил бесплатное приложение на Android Market, ища "Package Explorer", который ищет все приложения, которые он может найти на вашем устройстве, расшифровывает файл AndroidManifest.xml и отображает список всех фильтров намерений, определенных всеми приложениями. Таблица всех фильтров намерений может быть отсортирована по полям "Действие", "Категория", "Данные" (например, схема или тип изображения), имени пакета или типу фильтра намерений, чтобы вы могли найти на своем устройстве все Activites, которые отвечают на различные действия или категории.

Проводник пакетов также собирает все поля разрешений-применений в манифесте и отображает список приложений, для которых требуются разрешения. Таким образом, вы можете найти все пакеты, которые используют SEND_SMS или что-то в этом роде. При нажатии на имя пакета отображается декодированный (несжатый двоичный) файл AndroidManifest.xml для пакета.

Ответ 2

Если вы отключены от устройства, вы можете просто запустить следующее:

пакет dumpys оболочки adb r

Это даст вам список всех статически зарегистрированных фильтров намерений.

Ответ 3

Вы не найдете этого. Фильтры Intent определяются приложением. Вам нужно будет посмотреть документацию для интересующего вас приложения с партикулом.

Ответ 4

В http://www.openintents.org/en/ есть "база данных", которая пытается собирать известные фильтры намерений. Кроме того, в приложении "Домен" перечислены некоторые параметры.

Ответ 6

(частичный ответ) IntentFilters определены в файле AndroidManifest.xml, содержащемся в файле .apk приложения. (в элементе → - > → XML, например:                                                    

Я не нашел API для поиска всех Intents, определенных во всех файлах .apk, хранящихся на устройстве. Система ищет список всех намерений в: android.content.Context.startActivity(намерение намерения) Что вызывает собственный метод в android.app.ActivityManagerNative.startActivity(), который использует механизм межпроцессного взаимодействия (IPC) (используя сериализацию информации в объекте "Посылка" ) для поиска намерений и запуска Activity. Поэтому я мог найти, как это делается.

Похоже, вы можете получить доступ для чтения к файлам .apk(многие из них хранятся в /system/app/ *.apk). Файл .apk является файлом .jar, и в нем доступен файл AndroidManifest.xml, поэтому программа должна иметь возможность читать и анализировать манифест и находить IntentFilters, но для этого это должен быть API.

Ответ 7

Существует GET_INTENTS_FILTER - объявлено, что будет использоваться в будущем для запроса фильтров интенций, см. также http://code.google.com/p/android/issues/detail?id=3217

Однако приоритет в команде Android небольшой. Кто-нибудь, чтобы отправить патч?

Ответ 8

Вы можете проверить список стандартных действий и категорий в sdk/platform/android-x/data/broadcast_actions.txt

Ответ 9

Развернувшись на Tom Fraser, лучший способ - использовать dumpsys с grep и sort.

dumpsys activity broadcasts |grep -iE ".+\.[0-9A-Z_\-]+:$" |sort

Выражение grep гарантирует, что будет только ловить строки, заканчивающиеся в формате, равном ...blahblah.SOME_INTENT:. Он может не поймать всех, но это хорошее начало.

Ответ 10

По состоянию на дату это список в соответствии с официальной документацией

[email protected]@[email protected]_MODE
[email protected]@[email protected]_APPS
[email protected]@[email protected]
[email protected]@[email protected]_PREFERENCES
[email protected]@[email protected]_ERROR
[email protected]@[email protected]
[email protected]@[email protected]_DATA
[email protected]@[email protected]_CHANGED
[email protected]@[email protected]_LOW
[email protected]@[email protected]_OKAY
[email protected]@[email protected]_COMPLETED
[email protected]@[email protected]_REPORT
[email protected]@[email protected]
[email protected]@[email protected]_BUTTON
[email protected]@[email protected]_SETUP
[email protected]@[email protected]_SYSTEM_DIALOGS
[email protected]@[email protected]_CHANGED
[email protected]@[email protected]_DOCUMENT
[email protected]@[email protected]_CHANGED
[email protected]@[email protected]
[email protected]@[email protected]
[email protected]@[email protected]
[email protected]@[email protected]_STORAGE_LOW
[email protected]@[email protected]_STORAGE_OK
[email protected]@[email protected]
[email protected]@[email protected]_EVENT
[email protected]@[email protected]_STARTED
[email protected]@[email protected]
[email protected]@[email protected]_APPLICATIONS_AVAILABLE
[email protected]@[email protected]_APPLICATIONS_UNAVAILABLE
[email protected]@[email protected]_TEST
[email protected]@[email protected]_CONTENT
[email protected]@[email protected]_RESTRICTION_ENTRIES
[email protected]@[email protected]_CONNECTED
[email protected]@[email protected]_DISCONNECTED
[email protected]@[email protected]_PLUG
[email protected]@[email protected]_METHOD_CHANGED
[email protected]@[email protected]
[email protected]@[email protected]_OR_EDIT
[email protected]@[email protected]_FAILURE
[email protected]@[email protected]_PACKAGE
[email protected]@[email protected]_CHANGED
[email protected]@[email protected]_BOOT_COMPLETED
[email protected]@[email protected]
[email protected]@[email protected]_PROFILE_ADDED
[email protected]@[email protected]_PROFILE_AVAILABLE
[email protected]@[email protected]_PROFILE_REMOVED
[email protected]@[email protected]_PROFILE_UNAVAILABLE
[email protected]@[email protected]_PROFILE_UNLOCKED
[email protected]@[email protected]_NETWORK_USAGE
[email protected]@[email protected]_PACKAGE_STORAGE
[email protected]@[email protected]_BAD_REMOVAL
[email protected]@[email protected]_BUTTON
[email protected]@[email protected]_CHECKING
[email protected]@[email protected]_EJECT
[email protected]@[email protected]_MOUNTED
[email protected]@[email protected]_NOFS
[email protected]@[email protected]_REMOVED
[email protected]@[email protected]_SCANNER_FINISHED
[email protected]@[email protected]_SCANNER_SCAN_FILE
[email protected]@[email protected]_SCANNER_STARTED
[email protected]@[email protected]_SHARED
[email protected]@[email protected]_UNMOUNTABLE
[email protected]@[email protected]_UNMOUNTED
[email protected]@[email protected]_PACKAGE_REPLACED
[email protected]@[email protected]_PACKAGE_SUSPENDED
[email protected]@[email protected]_PACKAGE_UNSUSPENDED
[email protected]@[email protected]_OUTGOING_CALL
[email protected]@[email protected]_DOCUMENT
[email protected]@[email protected]_DOCUMENT_TREE
[email protected]@[email protected]_SUSPENDED
[email protected]@[email protected]_UNSUSPENDED
[email protected]@[email protected]_ADDED
[email protected]@[email protected]_CHANGED
[email protected]@[email protected]_DATA_CLEARED
[email protected]@[email protected]_FIRST_LAUNCH
[email protected]@[email protected]_FULLY_REMOVED
[email protected]@[email protected]_INSTALL
[email protected]@[email protected]_NEEDS_VERIFICATION
[email protected]@[email protected]_REMOVED
[email protected]@[email protected]_REPLACED
[email protected]@[email protected]_RESTARTED
[email protected]@[email protected]_VERIFIED
[email protected]@[email protected]
[email protected]@[email protected]
[email protected]@[email protected]_ACTIVITY
[email protected]@[email protected]_POWER_CONNECTED
[email protected]@[email protected]_POWER_DISCONNECTED
[email protected]@[email protected]_USAGE_SUMMARY
[email protected]@[email protected]_TEXT
[email protected]@[email protected]_CHANGED
[email protected]@[email protected]_CLOCK
[email protected]@[email protected]_VIEW
[email protected]@[email protected]
[email protected]@[email protected]
[email protected]@[email protected]_OFF
[email protected]@[email protected]_ON
[email protected]@[email protected]
[email protected]@[email protected]_LONG_PRESS
[email protected]@[email protected]
[email protected]@[email protected]
[email protected]@[email protected]_MULTIPLE
[email protected]@[email protected]_WALLPAPER
[email protected]@[email protected]_APP_INFO
[email protected]@[email protected]_SHUTDOWN
[email protected]@[email protected]
[email protected]@[email protected]_TUTORIAL
[email protected]@[email protected]_CHANGED
[email protected]@[email protected]_SET
[email protected]@[email protected]_TICK
[email protected]@[email protected]
[email protected]@[email protected]_REMOVED
[email protected]@[email protected]_CONNECTED
[email protected]@[email protected]_DISCONNECTED
[email protected]@[email protected]_PACKAGE
[email protected]@[email protected]_BACKGROUND
[email protected]@[email protected]_FOREGROUND
[email protected]@[email protected]_INITIALIZE
[email protected]@[email protected]_PRESENT
[email protected]@[email protected]_UNLOCKED
[email protected]@[email protected]
[email protected]@[email protected]_LOCUS
[email protected]@[email protected]_PERMISSION_USAGE
[email protected]@[email protected]_COMMAND
[email protected]@[email protected]_CHANGED
[email protected]@[email protected]_SEARCH
[email protected]@[email protected]
[email protected]@[email protected]_BROWSER
[email protected]@[email protected]_CALCULATOR
[email protected]@[email protected]_CALENDAR
[email protected]@[email protected]_CONTACTS
[email protected]@[email protected]_EMAIL
[email protected]@[email protected]_FILES
[email protected]@[email protected]_GALLERY
[email protected]@[email protected]_MAPS
[email protected]@[email protected]_MESSAGING
[email protected]@[email protected]_MUSIC
[email protected]@[email protected]
[email protected]@[email protected]_DOCK
[email protected]@[email protected]_MODE
[email protected]@[email protected]
[email protected]@[email protected]_DOCK
[email protected]@[email protected]_PREFERENCE
[email protected]@[email protected]
[email protected]@[email protected]_INSTRUMENTATION_TEST
[email protected]@[email protected]_DESK_DOCK
[email protected]@[email protected]
[email protected]@[email protected]
[email protected]@[email protected]
[email protected]@[email protected]_LAUNCHER
[email protected]@[email protected]_DESK_DOCK
[email protected]@[email protected]
[email protected]@[email protected]
[email protected]@[email protected]
[email protected]@[email protected]_CODE
[email protected]@[email protected]_HOME
[email protected]@[email protected]_ALTERNATIVE
[email protected]@[email protected]
[email protected]@[email protected]
[email protected]@[email protected]_OPENABLE
[email protected]@[email protected]_TEST
[email protected]@[email protected]
[email protected]@[email protected]_HOME
[email protected]@[email protected]_COUNT
[email protected]@[email protected]_MULTIPLE
[email protected]@[email protected]_REPLACE
[email protected]@[email protected]_INTENTS
[email protected]@[email protected]_CONTEXT
[email protected]@[email protected]_INPUT_DEVICE_ID
[email protected]@[email protected]_INPUT_HINT_KEYBOARD
[email protected]@[email protected]_PACKAGE
[email protected]@[email protected]_UID
[email protected]@[email protected]_LAUNCH_SINGLE_CHOICE
[email protected]@[email protected]
[email protected]@[email protected]_REPORT
[email protected]@[email protected]_component_name
[email protected]@[email protected]_component_name_list
[email protected]@[email protected]_package_list
[email protected]@[email protected]_uid_list
[email protected]@[email protected]_REFINEMENT_INTENT_SENDER
[email protected]@[email protected]_TARGETS
[email protected]@[email protected]_COMPONENT
[email protected]@[email protected]_COMPONENT_INTENT_SENDER
[email protected]@[email protected]_NAME
[email protected]@[email protected]_ANNOTATIONS
[email protected]@[email protected]_QUERY
[email protected]@[email protected]_REMOVED
[email protected]@[email protected]_STATE
[email protected]@[email protected]_KILL_APP
[email protected]@[email protected]_MILLIS
[email protected]@[email protected]
[email protected]@[email protected]_COMPONENTS
[email protected]@[email protected]_STORAGE
[email protected]@[email protected]_TEXT
[email protected]@[email protected]
[email protected]@[email protected]_INTENTS
[email protected]@[email protected]_PACKAGE_NAME
[email protected]@[email protected]
[email protected]@[email protected]_EVENT
[email protected]@[email protected]_ONLY
[email protected]@[email protected]_ID
[email protected]@[email protected]_TYPES
[email protected]@[email protected]_UNKNOWN_SOURCE
[email protected]@[email protected]_URI
[email protected]@[email protected]_NAME
[email protected]@[email protected]_NUMBER
[email protected]@[email protected]_TEXT
[email protected]@[email protected]_TEXT_READONLY
[email protected]@[email protected]_VIEW_FEATURES
[email protected]@[email protected]_MODE
[email protected]@[email protected]
[email protected]@[email protected]_NAME
[email protected]@[email protected]_intent_token
[email protected]@[email protected]_EXTRAS
[email protected]@[email protected]
[email protected]@[email protected]_bundle
[email protected]@[email protected]_intent
[email protected]@[email protected]_list
[email protected]@[email protected]_RECEIVER
[email protected]@[email protected]_RESULT
[email protected]@[email protected]@ICON
[email protected]@[email protected]@ICON_RESOURCE
[email protected]@[email protected]@ID
[email protected]@[email protected]@INTENT
[email protected]@[email protected]@NAME
[email protected]@[email protected]_USERSPACE_ONLY
[email protected]@[email protected]_NAME
[email protected]@[email protected]
[email protected]@[email protected]
[email protected]@[email protected]_PACKAGE_EXTRAS
[email protected]@[email protected]
[email protected]@[email protected]
[email protected]@[email protected]
[email protected]@[email protected]
[email protected]@[email protected]