Чтобы обратиться к последней точке и снимку экрана, переключитесь с использования основанных на строках интентов на использование основанных на классах интентов в своем приложении.Под Intents на основе строк я подразумеваю Intents, построенный с public Intent (String action)
.Например,
startActivity("com.myOrganization.NEXT_ACTIVITY");
(для работы этих строк их нужно объявить в манифесте с тегом)
Заменить их конструктором на основе классов с сигнатурой функции public Intent (Context packageContext, Class<?> cls)
,Например:
startActivity(currentActivity.this, nextActivity.class)
Строковые намерения предназначены для использования внешними службами, например, открытием веб-браузера для сообщения об ошибке.В этом случае вы не знаете, каково имя класса java веб-браузера (то есть это может быть firefox.class
или chrome.class
).С вашим приложением вы знаете имена классов всех действий, которые хотите запустить, поэтому просто используйте их.Из документации android об основанном на классе конструкторе Intent
Это обеспечивает удобный способ создания намерения, предназначенного для выполнения жестко закодированного имени класса, а не полагаясь нав системе, чтобы найти подходящий для вас класс
Использование конструктора на основе классов имеет дополнительное преимущество, заключающееся в упрощении рефакторинга в Android Studio.
Примечание.-фильтры в манифесте, чтобы другие приложения могли выполнять какие-либо действия в вашем приложении